Guru’s search uses several types of technology to find information relevant to what users are searching for. This article covers how Guru interprets search terms and how search results are gathered. You can also learn how content is indexed for search in Guru and how search results are displayed.
Interpreting search terms provided by users
After you type a search term in the web app or browser extension search bar, several things happen:
Guru checks to see if there are alternate forms of the search term(s).
For example, if you entered "ran", Guru will include "run", "running", and "runs".
Guru does a spell check (also known as fuzzy matching).
Guru evaluates punctuation marks and spacing.
For example, "self service" versus "self-service".
Guru considers potential synonyms.
For example, if a searcher provides "vacation" in the search bar, Guru may also consider Cards with the word "holiday" in them.
Guru considers double quotation marks used when you are searching for a specific word combination or an exact phrase.
For example, "engineering onboarding" will find Cards that have that exact phrase only.
Guru uses machine learning (“ML”) to form a representation of the meaning of the search terms. This is part of Guru’s semantic search capabilities.
Gathering relevant results
After analyzing the search term(s) provided, Guru will find Cards that are relevant to those terms. Relevance is based on many factors, including:
Where matches are found in a Card.
For example, a match could be found in the Card's title, Tags, attachment, content, etc.
How many “matches” to the search term(s) there are in the Card.
How well the meaning of the Card matches the meaning of the search terms as determined by an ML process.
How much interaction a Card has received and if that interaction happened recently or a long time ago.
Interactions include favoriting, viewing, and copying.
Recent interactions are a little bit more important than old interaction.
How recently a Card was created.
In addition to the inputs derived from Card content and actions on Cards, Guru also uses data about which search terms have successfully led other members of your team to Cards as a way to ensure that the most relevant Cards are as high in the results list as possible.
The process for finding relevant Cards in search is a complex combination of several sub-processes that are constantly being evaluated, tested, and adjusted. The factors mentioned above are a simplified representation of this process.
📑 Related articles