How do you build and organize the knowledge base for you chatbot?

Good conversational chatbots should be able to discuss a wide range of topics. Yes, they have one or two main scripts but people usually ask unexpected questions or try to discuss something aside.

How do you handle that?
How do you guys build and organize knowledge bases / topic structure?

Methodology? Tools? RDFs? Libraries?

In Pullstring we have interjections which allow writers to handle inputs which don’t fall into the normal conversation.

Interjections can be scoped to an activity so that if, for example, our bot is playing a game with the player it can handle questions like “What are the rules?” which only makes sense in the context of the game. There are also global interjections which can be used to handle input anywhere in the conversation.

As an example, in our bot Jessie Humani she has a large set of global interjections to handle questions like what’s her age or where does she live. It also opens up the writers to have some fun, so right now you can ask her “What do you think about Tina Fey?”

You can also add rules for what you don’t want the bot to talk about, which is potentially even more important. In the Humani bot, if you start talking to her about Hitler or swearing at her she will ask you to stop and refuse to discuss it.

1 Like