The five building blocks of an AI assistant
To answer this question, we first need to understand an AI assistant’s building blocks:
Knowledge baseThese are the data sources that the assistant uses to extract knowledge. The context in this knowledge base is used by the large language model to ‘ground’ its answers in the truth.
Search
The knowledge base is indexed, and queried by the assistant when a new user query comes in. Searching and retrieving the correct relevant information in the knowledge base is essential to make sure the assistant delivers correct responses.
Chat
The assistant processes user queries and retrieves information from the knowledge base. A response is automatically generated and delivered to the user via a chatbot interface and large language model technology.
Actions
Based on what the user wants to do, the assistant can carry out actions or use tools such as running various software tools, sending requests, booking reservations, building documents, etc.
Front-end
The chat functionality is user-friendly and easily accessible, making it straightforward to get started with the assistant.
Now we understand the five building blocks, we can now investigate the differences between building or buying an AI assistant.
Build: Milo, the GenAI custom-code solution
In a previous blog article, we already explored Milo, our custom-code solution for generative AI. It has the following building blocks:
Knowledge base
Milo is able to connect to any knowledge base, whether it’s a SQL database, SharePoint, or a website or any other database. Furthermore, it can support a wide array of file formats, including video,audio files, non-digital documents, etc. Specific document types can be processed in a custom way, for example by using computer vision or optical character recognition (OCR).
Search
Milo’s search feature is based on state-of-the-art search and retrieval algorithms, which can be tailored to each use case. For search, it leverages both vector search and keyword search. Vector search understands contexts and meanings, working across languages and synonyms. However, this may not effectively capture organization-specific keywords, hence it is supplemented by a keyword search. The retrieval strategy is optimized to make sure that all of the correct relevant piece of documentation is retrieved,
Chat
Milo’s chat functionality offers complete versatility, as the large language model (LLM) is interchangeable, and can be sourced from OpenAI, Google, Meta, Mistral, Anthropic, Cohere, etc.. This allows you to choose the LLM that strikes the ideal balance of speed, performance, and price for your specific use cases.
Actions
The actions that Milo is able to carry out can be entirely tailored to your business processes. Whether it’s sending a meeting invite or an email, making a reservation, or creating an invoice based on a template, all these actions can be integrated into our GenAI custom-code solution.
Front-end
Milo’s user interface can also be customized to meet your needs. A municipality, for instance, might prefer a chatbot on their website, while a food delivery service could implement a chatbot on WhatsApp to take orders from customers, and an in-company chatbot could be integrated within a company’s intranet solution. On top of that, user satisfaction and unanswered questions can be continuously monitored to improve Milo.
Given these building blocks, Milo requires moderate upfront investments and low recurring costs. Moreover, the customization level is high.
A typical Milo use case is the website for the municipality Gemeente Rumst, wich has a limited budget for fast and 24/7 support. Our GenAI custom-code solution automatically scrapes, clean, and indexes the website’s content daily and offers this information to citizens via a 24/7 AI-infused chatbot. Feel free to check out Gemeente Rumst’s chatbot Regi on their website.
Demo video:
Buy: Copilot for Microsoft 365
Copilot for Microsoft 365 is an off-the-shelf solution offered by Microsoft. It incorporates the following building blocks:
Knowledge base
Copilot for Microsoft 365 sources its data out of the box from the Microsoft Graph, representing all your interactions with Microsoft products and services. This includes group memberships, Teams messages you’ve sent, Word documents you’ve edited, powerpoint presentation you are working on and notes you’ve created. It’s also possible to extend Copilot’s knowledge base with external data sources.
Search
Microsoft’s AI assistant provides both a personal and tenant-based index. The former gives access to your personal documents, emails, and shared files, while the latter indexes everything you have access to on SharePoint and other organization-level directories.
Chat
Copilot’s chat functionality relies on OpenAI’s GPT-4 family of enterprise-grade large language models (LLMs). While these are among the most powerful LLM’s available, generating responses may require some time.
Actions
Currently, Copilot for Microsoft 365 doesn’t support any actions, such as sending meeting invites or emails. Users can prompt the AI assistant to draft a message, but they would still have to send it manually.
Front-end
Microsoft’s AI assistant is deeply integrated into all Microsoft 365 tools, including Outlook, Word, Excel, PowerPoint, Teams, and SharePoint. So users don’t need to familiarize themselves with another tool, and will instead conveniently find their assistant within the software they regularly use.
Given these building blocks, Copilot for Microsoft 365 requires low initial investments but has higher recurring costs. Additionally, the customization level is low.
A typical use case for Microsoft’s AI assistant would be office workers who spend a lot of time in their M365 applications like drafting emails, creating PowerPoint presentations, and reading extensive meeting notes. Thanks to its integration with Microsoft 365 applications, Copilot can help these office workers be more efficient.
Demo video:
Lessons learned
After having implemented both Copilot for Microsoft 365 and our GenAI custom-code solutions for various customers, we have learned some crucial lessons:
TestingAllocate sufficient time to test the AI assistant. After this testing phase, you’ll have a better understanding of the assistant’s performance and the necessary improvements.
Onboarding users
A conversational interface might seem easy to use, but new users will need guidance to master the critical art of crafting effective prompts for an AI assistant.
Data quality
When an AI assistant responds to questions about your documents, the quality of these responses is markedly better as the data quality in the documents improves. Aim for consistent data structuring to maximize your assistant’s performance.
Extra time
Having an AI assistant will increase your productivity, so think about how you can best use the time it will save you. Will you dedicate more hours to working on creative solutions, focus on professional growth, or strive for a better work–life balance?