While building basic bots is simple, larger bots require diligence and thought to ensure that the content and UX is of a high enough quality so that users can find what they’re looking for. This is especially imperative while users are still generally struggling to adopt chatbots in the evolving tech space. This article will cover the best practices for designing chatbot conversations and organizing their content.
Step 1: Break Up the Knowledge/Content into Categories
When dealing with a large quantity of knowledge/content the first and arguably the most important step is to break it into manageable groups that you can guide users to via bot response buttons. For example, if you’re trying to build a bot to cover 100 different FAQ scenarios, you should try to break that content into at least 5 and preferably up to 10 categories/groups.
- Example Categories
- Network Connection
- Error Codes
- Getting Started (more appropriate for software/apps)
You can even break down categories into subcategories if needed. Let’s say there are 30 printer FAQs for a particular device. You should try to break that down into subcategories such as network printers, bluetooth printers, printer setup, printer troubleshooting, kitchen printers, etc. depending on what you have to work with.
Step 2: Start from the Bottom and Build the Individual Bot Topics
Once you’ve completed step 1 and have a sound plan for how to organize the bot content it is time to start creating it in Relay. Start with a subcategory (or category if there are no subcategories) and build all of the individual topics that will be a part of it. Using a naming convention such as ‘Category:Topic’ will make it easier to identify which topics are part of a particular category in the Topics grid within the Visual Bot Editor.
- Important Items to Consider
- Give the topic relevant and unique keywords that allow it to be found via NLP.
- Turn the ‘Rateable’ toggle ON to allow users to provide thumbs up/thumbs down feedback.
- Turn the ‘Searchable’ toggle ON to allow that topic to show up in a Concierge/Welcome Bot’s custom search.
- NOTE: Make sure to also specify a ‘Search Result Label’ in the field that appears when this toggle is turned ON. This determines how the topic is presented to the user via a Concierge/Welcome Bot’s custom search.
Once you’re done creating all of the topics for that category, move onto the next category and do the same, and so on… Rinse and repeat as they say!
Step 3: Create Category Holders for Each Category and Add Its Individual Topics
Once you’ve completed step 2 it is time to create topics to hold each category and its individual topics. Start with the subcategories (or category if there are no subcategories) and create a topic for each. Using a naming convention such as ‘Category MASTER’ will make it easier to identify which topics are category holders in the Topics grid within the Visual Bot Editor. In this topic, you will want to add response buttons (or ideally action buttons if you’re working on a Knowledge Bot) for every topic that is part of that subcategory or category. NOTE: Action buttons are ideal for this in Knowledge Bots because they allow the user to select a choice and go back and select another choice without having to reinvoke this category holder topic again.
- Important Items to Consider
- Avoid using keywords for this topic. With NLP matching we want users to land on individual topics and not category holders.
- Leave the ‘Rateable’ toggle in the OFF state.
- Leave the ‘Searchable’ toggle in the OFF state. Again, we only want users to land on individual topics and not category holders with NLP and custom search matching.
Step 4: Add the Category Holder Topics to the Welcome and Fallback Topics
Once you’ve completed step 3 it is time to add response buttons (or ideally action buttons if you’re working on a Knowledge Bot) for every category holder topic that you created in step 3 to the bot’s Welcome and Fallback topics. This allows users to navigate through the bot’s scope of knowledge from both the initial Welcome and any point in the conversation in which the bot is unable to find a suitable match and redirects to the Fallback topic.
The End Result