Your chatbots are designed to respond to customer queries, offering accurate and relevant responses. This is possible because your bots are trained on their learning sources (such as FAQs and Q&As). Bots intelligently understand the context of the customer and the query for a more relevant response.


However, you can choose to manually map the sources (such as FAQs) to the customer queries (such as their preferences, choices, etc.). Your bot will filter the search results using these keywords while finding articles and sharing answers with customers.


This article contains:


Who is this for?

Any businesses that handle multiple brands, verticals, regions, or customer groups will benefit from narrowing down the learning sources of their bots. For example:

  • Acme Flights has customers from multiple countries. They have to accommodate different immigration procedures based on the customer’s country of origin (static user property) and their destination (dynamic conversation property).
  • Acme Education's online content library caters to students across courses, universities, and countries (static user properties). These customers can also query their course prerequisites, which can change during the conversation (dynamic conversation properties).


Tip: These properties (user properties, conversation properties, and bot variables) are already captured by the bots as part of the customer conversations. You might already be using these properties to trigger different flows, messages, and more.

Filtered search feature will use these properties to narrow down the learning sources for your bots.


How to set this up?

  1. Open the bot for which you need to narrow down the FAQs from which it learns. Navigate to Natural Language > Configure > Natural language settings > Filtered search and toggle it on.

  2. Enter the properties that the bot needs to use to filter the search. Match ALL properties for a narrower search, or ANY properties for a wider search.

    • While searching through FAQ and article tags, your bot will refer to values mapped to these properties during a conversation.

  3. Use the checkbox to include folders or articles that have no tags. This allows the bots to include all your generic articles.


How does this work?

  1. You configure your bots to filter their search across knowledge sources using dynamic user properties. Learn how to set up bot Q&As.
  2. You also tag your FAQs and articles with the possible values of those properties. Learn how to set up tags in your FAQs.
  3. During a customer interaction, your bot fetches the relevant property of that customer.
  4. Your bot will then search for these values in your FAQs and articles and return the relevant document.


For example:

  1. You configure your bot to filter by currency.
  2. You have separate tags on your FAQs and articles for the currencies you support, such as USD, EUR, INR, and JPY.
  3. A customer interacts with the bot, and the bot fetches their currency property. It finds the USD value.
  4. Your bot searches for FAQs and articles with the USD tag and returns the relevant answers.


For the Acme Flights example:

  1. Acme Flights configures a filter for destination country. They have separate articles on immigration processes for England, Maldives, and Singapore, each having separate sections for different source countries.
  2. During the conversation with a customer, the bot fetches the source country (say, India) and the destination country (say, England).
  3. The bot filters to the England article, and returns the India section within it.


For the Acme Education example:

  1. Acme Education configures a filter for course. They have articles about subjects mapped to different courses.
  2. During the conversation, a student asks about different subjects. The bot finds all articles where the subject is mapped with the course defined by the student.


What are some other factors to consider?

  1. The values that you enter are case-sensitive.

  2. Filtered search will continue functioning even if your bot or customer converse in a different language. The respective language property value will be automatically picked up based on the locale.

  3. Filtered search works for all versions of a given bot. If you delete a property from one version, it will not be available for any other versions of the bot, including previously published versions. Preventive validation will warn you about this. Learn more about preventive validation in your chatbots.

  4. If the property used for filtering does not have a value associated with it during a conversation, the bot will ignore the property as it can not search for an empty tag. It'll still use other properties that have associated values.

    • If the only properties available for filtering do not have any values associated, it will default to the fallback flow. Learn more about the fallback flow here.

    • If you selected “Match ANY of the below properties”, blank properties will simply be skipped.

    • If you selected “Match ALL of the below properties”, blank properties will cause zero matches, forcing the bot to default to the fallback flow.