About Query Suggestions (QS)

In this article

Query suggestions example | Coveo Machine Learning

Coveo Machine Learning (Coveo ML) Query Suggestion (QS) models recommend relevant queries to users as they type in the search box.

Coveo ML QS models:

  • Identify exact, partial, or fuzzy matches with typed characters anywhere in any individual keyword appearing in any order.

  • stem query suggestion keywords to remove duplicates.

  • Offer the most relevant recommendations by ranking query suggestions by considering the following:

    • The number of times the query was performed.

    • The degree to which the query suggestion matches the typed characters.

    • The query performance based on the Relevance Index and Clickthrough metrics.

  • Only consider queries that were followed by clicked search results a specific number of times (see Review query suggestion candidates). This prevents infrequent queries from polluting the suggestions.

  • Automatically adjust recommendations based on user topics, tailoring query suggestions according to each user’s main topic of interest. This personalization enhances the relevance and effectiveness of search results by aligning them with individual user profiles.

Note

To ensure optimal performance, a Query Suggestion (QS) model supports a preset maximum number of suggestions per language. This maximum is applied after the most relevant query suggestions are identified and ranked, and after any manually defined default query suggestions are applied. The configured threshold is large enough to not negatively impact the quality of the suggestions. The most relevant suggestions are always recommended to the user. However, this behavior may explain why a query that appears as a candidate in your data isn’t suggested for a given user query.

Members with the required privileges can configure and activate Coveo ML QS in a few clicks. Developers can leverage QS in the desired search interface using the JavaScript Framework, the Headless library, or with Atomic.

Submodels

A submodel is a smaller, specialized model that operates as part of a larger model.

A QS model automatically creates submodels to handle different combinations of language, search hub, and tabs because these attributes normally define different types of users and use cases.

A model learns separately from search visits made in interfaces offered in different languages, since the keywords used for similar searches often vary by language. Different search hubs or interfaces may also serve different purposes, meaning that users may expect different results for the same query depending on where they search. Submodels account for these differences by filtering out recommendations that don’t match the current search hub and interface combination, helping ensure that recommendations remain relevant to the context in which the search is performed.

For example:

  • If your search hub supports multiple languages, each language will have its own submodel to ensure that recommendations are relevant to users searching in that language.

  • If your model is used in multiple search hubs that all share the same language, each search hub will have its own submodel to ensure that recommendations are relevant to the context of that specific search hub.

  • If a search hub contains multiple tabs, each tab will have its own submodel to account for the different search contexts represented by those tabs.

  • If your model is used across multiple search hubs, languages, and tabs, each combination of search hub, language, and tab will have its own submodel. For example, if a search hub has English and French versions and contains Products and Documentation tabs, separate submodels are created for each combination: English-Products, English-Documentation, French-Products, and French-Documentation.

You can review the number of recommended items for each submodel in the model’s information tab.

Notes
  • The number of submodels doesn’t matter. However, the quality of submodels depends on the number of events that were used to build each submodel.

  • Submodels aren’t grouped, meaning that submodels built on different user behaviors don’t negatively impact the quality of the parent model.

  • The variation in dataset sizes used to build submodels has no negative impacts on the parent model quality.

Tip

If you want user behavior from one search interface (search hub) to influence recommendations in other search interfaces for a unified experience, you can configure the Suggestion filters advanced model setting accordingly. If the parameter value specifies only a particular search hub, the model uses behavior from that search hub to generate recommendations or suggestions, including when the model is used in a different search hub.

Before modifying the Suggestion filters advanced option, we strongly recommend that you consult your Account Manager or Coveo Support for appropriate guidance. Moreover, you should test any changes in a sandbox environment before deploying in production.