alexandre-debieve-FO7JIlwjOtU-unsplash

Link tip: Technical structure of chatbots

What parts does a chatbot consist of?
How do they work together?
How is a chatbot built from the ground up?
Philip Schönholzer from Botfabik can answer this question for you.

 

First, the components of a chatbot

Client

The client is responsible for sending and receiving messages from the user’s perspective. This is also the only component of a chatbot that users see.

Some chatbots use existing messaging platforms as a client, such as Facebook Messenger, WhatsApp or Slack. This is interesting for various reasons. On the one hand, users can use a known channel. Secondly, this is the only way for the chatbot to initiate the conversation.

In other cases, a dedicated client is used. This means that the client was developed for the chatbot or is part of the chatbot. This is usually the case if the chatbot is to be integrated into a website.

In both cases, the client has the same task: it enables the user to write or speak a text. This text is sent to a server. The server then sends the most appropriate text possible back to the client, which the client displays.

 

Chatbot engine

The chatbot engine is the heart of a chatbot. The chatbot engine has the following tasks:

Send and receive messages. The engine receives messages from and sends messages to the client. A good engine is able to communicate with different clients (simultaneously).
Process messages. The engine is used to decide what to do with a message and how to respond to it. An engine will often also request other components, such as language processing.
Manage the meetings. The engine must ensure that the right users receive the right answers or that the desired actions are executed. In some cases, the engine must also identify the user in order to react correctly or possibly not allow certain actions at all.
Remember context. A good chatbot does not always answer the same way, depending on the context. If, for example, the chatbot has already learned during the conversation that the user is interested in the computer science apprenticeship, it can immediately assume the context of the computer science apprenticeship and answer accordingly when asked “What are the requirements?” later on. In some cases, such tasks are also performed by an NLP component (see below).
Mediate live chat. If a person is to answer the chatbot (live chat), the chatbot engine must coordinate this. On the one hand, the engine must ensure the handover from the machine to the human and thus the communication between the clients. On the other hand, the engine has to remember the status of the live chat for each user in order to process the messages correctly.
Integration into peripheral systems

Good chatbots not only give static answers, but can also provide up-to-date information. A classic example is the weather. For the chatbot to be able to say what the weather will be like tomorrow, it has to ask a weather service. Chatbots that are displayed on company websites can obtain or write back very different information from peripheral systems: status of an order, reset password, purchase items, etc. In most cases, this integration is programmed manually. However, integrations that occur more frequently (such as sending an email) only need to be configured.

 

NLP

NLP stands for Natural Language Processing. This is sometimes also described as NLU (Natural Language Understanding). This is basically about assigning messages to an intention. These intentions are recorded in advance and provided with training sentences and, in some cases, answers. For example, if a user writes “I’d like a pizza”, a well-trained NLP component interprets this text as “Intention: Order a pizza; answer: I’d love one! Where should I deliver the pizza?”.

In addition to intention recognition, NLP is used for other but less common tasks. These are entity recognition and, in some cases, slot filling and context processing. We have described the details in the article Conversation threads.

Not every chatbot uses NLP. If the chatbot “only” allows prefabricated questions (clickbot), NLP is not necessary. NLP is only necessary if users can enter text freely.

 

CMS

Similar to websites, it makes sense to manage the chatbot content in a CMS (content management system). The CMS contains all intentions, training sentences, answers and, in some cases, the actions of the chatbot.

The content is often not managed in a CMS, but directly in a chatbot tool or the NLP component. However, managing the content in a CMS has many advantages, which is why we prefer to use a CMS: because it is very easy to use and the data is secure, the content can be maintained directly by the employees in the specialist department (e.g. support). In addition, the data can be kept independently of the chatbot tool or the NLP component, which means that you retain control over the content and can swap tools at any time.

 

Analytics

With analytics, the provider of a chatbot is able to understand how the chatbot is used. How many people use the chatbot, for how long and for what purpose? In this way, the chatbot can be continuously improved or the offer can be adapted if necessary. There are various options for analytics. On the one hand, many NLP tools automatically provide the most important key figures such as the number of users, most frequent intentions and special exit points where users leave the chatbot. Existing tools such as dashbot.io can also be integrated. If existing tools do not provide the desired data, we at Botfabrik also develop project-specific dashboards for analytics. This means that practically all wishes can be fulfilled.

 

And you can find out how everything is put together here in Philip Schönholzer’s full blog post.

 

Once you have read the entire article, you will quickly realize that technical implementation alone is not enough – you also need a good concept. I developed the chatbot canvas for this purpose. You can read here what this looks like and what it is used for.

 

And if you have any further questions about chatbots, please feel free to contact me.
Click here to go to my contact page.

Book now
Your personal consultation

Do you need support or have questions? Then simply make an appointment with me and get a personal consultation. I look forward to hearing from you!

> Concept & Strategy

> Keynotes, workshops and expert contributions

> Chatbots, Voicebots, ChatGPT

Further contributions

Good content costs time...

... Sometimes time is money.

You can now pay a small amount to Sophie on a regular or one-off basis as a thank you for her work here (a little tip from me as Sophie’s AI Assistant).