- Post History
- Subscribe to RSS Feed
- Mark as New
- Mark as Read
- Bookmark
- Subscribe
- Printer Friendly Page
- Report Inappropriate Content
14m ago
Introduction
Search doesn't always understand what users type. In my case, an incident mentioning OOO couldn't find the Out of Office article.
This article shows how I improved the search experience using a synonym dictionary and a boost rule.
STEP 1: Create the search profile
I created a search profile, as shown in the screenshot below.
Table: ais_search_profile
STEP 2: Create and link the search source
Next, I created the search source Knowledge Base Incident Resolution JP and linked it to the search profile.
The default synonyms, stop words, and typo handling were added automatically, as shown in the related lists.
STEP 3: Test it and see the problem
I tested the search through an AI Agent that searches knowledge articles to help resolve incidents.
â Test 1: Search using the abbreviation
đŤ Incident details
Short description: Need to turn on OOO
Description: I want to set up OOO replies.
No relevant article was found for this incident, as shown below.
â Test 2: Search using the full phrase
I then tried the same request with the words spelled out.
đŤ Incident details
Short description: Need to turn on OUT OF OFFICE
Description: I want to set up out of office replies.
This time, the agent found a relevant knowledge article.
đ¤ Search didn't know that OOO and "out of office" mean the same thing.
STEP 4: Create the synonym dictionary and add the term
You can add synonyms to the default dictionary, or create a dedicated dictionary for IT Services. I created a dedicated one called "IT Services synonyms dictionary" and added a few synonyms relevant to the KB articles.
Synonyms are language dependent. The default English dictionary is the fallback.
The term is "OOO" with the payload "Out of Office", "OOO", "Auto-reply" and "Out of office rules", as shown in the screenshot.
STEP 5: Link and publish the dictionary
Linked the dictionary to the search profile, as shown in the screenshot.
The dictionary needs its own publish, so publish it separately from the profile.
STEP 6: Create the result improvement rule and boost action
From the Result Improvement Rules related list on the profile, I created a rule, as shown in the screenshot.
Rule label: IT_Service. Language: English. I set a start and end date, as shown in the screenshot.
Select Activate on all queries so the rule applies to every search. You can also limit a rule with a trigger condition instead.
Then I created a boost action from the Actions related list of the rule, as shown in the screenshot.
Boost type: Boost By Synonym Dictionary. Boost weight: 150. Indexed source: Knowledge Table. Dictionary: IT Services synonyms dictionary, as shown in the screenshot.
STEP 7: Publish the rule and the profile
Published the search profile, and made sure the synonym dictionary and the result improvement rule are published too. A rule stops working after its end date, so check the dates.
đ Result
I tested the failed case once again with the same wording as before:
Short description: Need to turn on OOO
Description: I want to set up OOO replies.
This time the agent found a relevant article, as shown in the screenshot. Before the change, the same wording returned no relevant article.
Conclusion
Synonyms help search understand what users type, so a short form like OOO finds the Out of Office article. The result improvement rule with a boost action then raises the ranking of those matching articles. In my case, the OOO incident that found nothing before now finds the right article.
Note: I used a ServiceNow University instance on the Australia release, so you may see some differences in your instance.
I regularly share learnings and updates from my ServiceNow journey. Feel free to connect with me on LinkedIn: [Juhi Poddar]
