Guru's Search Algorithm: Definition

Roles: Read Only, Authors, Admin


Want to optimize the access to your team's collective knowledge? Dig into Guru's Search Algorithm.

How Does Guru's Search Algorithm Work?

  1. Guru's search algorithm first attempts to match all relevant documents by matching card title and content against exact phrases, word stems and synonyms along with prefixes and fuzzy matches (Levenshtein distance searching).
  2. The algorithm then attempts to rank the search results, placing the most relevant results at the top by favoring exact matches over word stem matches over synonym matches over prefix and fuzzy matches. Additionally, the scoring favors card title matches over card content matches.
  3. Finally, when there are ties in search rank, card popularity is factored into search rankings to boost more popular cards over less popular cards. Number of Card views, number of times favorited by team members, and verification status all contribute to a Card's popularity.

Matching Scores are weighted as follows:

  • Tag matches
  • Card title matches
  • content matches

For search results that have the same relevancy score:

  1. Look at Cards with Trusted/Stale Status, sort Most Popular to Least Popular

  2. Look at Cards with Needs Verification Status, Most Popular to Least Popular

Most Popular = Views + Copies + Favorites

Things to Note:

  • There is no way for users to exactly determine the order in which Cards appear.
  • If content is bite-sized, it helps both the search results as well as the user's experience.
  • Search results are always sorted by most relevant to least relevant.