## 💡**Prerequisites**
**Knowledge** We recommend that you review the following guides:
[Algorithm controls feature guide](🔗): This guide introduces you to the Algorithm Controls feature.
[Algorithm Modes Reference](🔗): This guide gives you an overview of all the available algorithm modes you can configure via Dashboard Controls.
**Permissions** Make sure that you have the ** AlgoControl User **permission. Your IAM admin can assign this role to any user who wants to create or edit an algorithm setting.
# **What are Dashboard Controls**
Dashboard Controls are one of the routes you can use to configure the Algorithm Controls feature. This functionality empowers you to preview, edit and save the algorithm settings directly from the Discovery dashboard.
# **How to configure algorithm settings with Dashboard Controls**
**Navigation**: Go to **Algorithm Customizations > Recall Algorithms** section in the Bloomreach dashboard.

On the Recall Algorithms homepage, you’ll see the following tabs:
**[Global Rules](🔗)**: Use this section to turn on/off, edit or preview Global Algorithm Controls settings for your site. For example, you can use the Global Rules section to turn on precision mode for your entire site.
**[Query Overrides](🔗)**: Use this section to change algorithm controls at a **per query level**. Here you can view, add, edit, or delete Query Overrides rules for specific queries. For example, you can use the Query Overrides section to remove precision mode for specific queries where maybe the default algorithm provided a better experience.
<hr>
**Note**: When you enter the Recall Algorithms homepage at the account level, you can only apply settings on the account or language-specific catalog level based on your account setup. If you enter at the site level, you can only apply settings at the site level.
## Global Rules

Under the Global Rules tab, you can view the current settings enabled for all your language-specific catalogs and different sites in the account. Under the Global Rules tab, there are three columns:
**Influence**: This section specifies the site scope of algorithm settings. At the account level, you can see the algorithm settings for language-specific catalogs and sites. However, if you have access to only one site in the account, then you can only update the settings of that site only. Rules with a different site influence are indicated with a Read-only tag.
**Settings**: This section lists the current algorithm settings for the site.
**Last edited by**: This section specifies the date and time the configurations were last edited. It also mentions the editor.
### Recall Algorithms Configurations
To view and edit the Global algorithm rules, hover on the Settings column. This reveals an edit icon. Click this edit icon.

This opens up a configuration screen with 2 elements:
**Algorithm controls panel**: This section provides dropdown controls to choose the settings of the following Algorithms:
Search Recall Precision
Query Relaxation
Facet Precision
Spell Correct

**External AB Test URL panel**:
This section provides the URL that you can use for AB testing the search results. If you would like to test the configurations for a particular query, you must replace "QUERY_PLACEHOLDER" text with that query.

**Points to Remember**:
In the case of multi-site accounts, you’ll see an **Influence **section at the top that mentions the site scope of algorithm settings.

Some algorithm settings are only available to English sites and not applicable to non-English sites. The following table summarizes the languages supported for each algorithm:
Algorithm | Languages Supported |
Search Recall Precision | - Text Match: [All languages](🔗) are supported - Product Type Precision: Only supports **English** - Category Precision: Only supports **English, French**, and **German** - LLM-based Precision: Only supports **English** currently |
Query Relaxation | Only supports **English, French**, and **German** |
Facet Precision | - Standard Facet Precision: All languages are supported - High Facet Precision: Only supports **English, French**, and **German** |
Spell Correct | All languages are supported |
If an algorithm is not supported for a particular language, it will not show up in the dropdown options. <br>For example, Homeoasis.com has both English and French catalogs. The values for its English catalog (Homeoasis_EN) and French catalog (Homeoasis_FR) for Search Recall Precision will differ since we don't support "Product Type Precision" for French language catalogs.

The following are the **default modes** for the Recall Algorithms:
Algorithm | Default Mode | How it works |
Search Recall Precision | `Text Match Precision ` | This mode recalls all the relevant products using basic term match. |
Query Relaxation | `Product Type ` | This mode reduces null results by identifying the query intent using Bloomreach’s semantic understanding. |
Facet Precision | `Standard ` | This mode ranks relevant facets higher than the irrelevant facets. |
Spell Correct | `Term Frequency ` | This mode uses term frequency to rank the different candidates for a correction. |
<br>
### **Previewing Algorithm Controls settings**
Select the desired algorithm setting using the dropdown controls provided.

To test if the newly selected Algorithm settings are suitable for your use case, click the **Preview** button and explore the results with the new Algorithm settings.

Enter the query in the search box and hit enter/return to see the results after the new algorithm configurations.

Refer to the following table to understand how facet/facet value changes are indicated in the facet UI:
Tag | What it means |
<img src="https://files.readme.io/0aee57a-Screenshot_2023-02-06_at_9.31.03_PM.png" width="27"> | Indicates no change in the facet/facet value position. |
<img src="https://files.readme.io/63b5853-Screenshot_2023-02-06_at_9.30.00_PM.png" width="27"> | Indicates how much higher the facet/facet value is ranked now compared to where it was before. |
<img src="https://files.readme.io/3aaec05-Screenshot_2023-02-06_at_9.30.27_PM.png" width="27"> | Indicates how much lower the facet/facet value is ranked now compared to where it was before. |
<img src="https://files.readme.io/4d2b2b2-Screenshot_2023-02-06_at_9.31.30_PM.png" width="27"> | Indicates the new facets introduced after changing the algorithm settings. |
For further exploration, go to the **Side-by-Side Preview** tab. Click the `
Show Changes
` checkbox
You can now view the excluded products (noise) and compare the results with the current state. This can help you determine if the new algorithm settings are suitable for your use case or not.

To preview the Facet Precision mode changes, click the <img src="https://files.readme.io/4d7203b-Screenshot_2023-02-06_at_8.25.10_PM.png" width="27"> filter icon to reveal all the facets. From the `
Total Facet
` dropdown, you can choose the `Excluded Facets
` option to view the facet noise removed from the results.

In case you enter a misspelled query, the products results will be shown after spell-correcting the query.

In the example shown, the misspelled query "batery" is corrected to battery.
<br>
### **Editing existing Algorithm Controls settings**
Select the desired algorithm setting using the dropdown controls provided.

If the newly selected algorithm settings work well for your use case and you are satisfied with the results, then click the “**Save**” button to save the new algorithm settings.
## Query Overrides
There can be use cases when you want certain queries to fall back to a different algorithm than the default Global algorithm. For instance, at the Global level, you have Category precision mode, but you want the query “tops” to use the Text Match precision mode.
Query override rules can be used for accomplishing such use cases. Query overrides take precedence over Global algorithm rules.

These rules are listed under the Query Overrides tab. This section shows 4 columns:
**Queries: **This section specifies the query corresponding to the query override rule.
**Influence**: This section specifies the site scope of query override settings. If you've opened the dashboard on the account level, you can see the query override settings of language-specific catalogs and sites. However, if you have access to just one site, you can modify settings only for that site.
**Settings**: This section lists the corresponding algorithm settings for the query override rule.
**Last edited by**: This section specifies the date and time the rules were last edited. It also mentions the editor.
## Configuring Query Overrides
This section illustrates the process of [previewing](🔗), [adding](🔗), [editing](🔗), and [deleting](🔗) query override rules.
### **Preview Query overrides for one or more search queries**
Click on the “**Add**” button to open the “**Configure query overrides**” section.

Specify the query for which overrides need to be previewed by passing the search query in the “**Queries**” textbox.

#### Importing multiple queries
If you'd like to specify multiple queries, you can simply list the queries **vertically** in a spreadsheet file, copy the queries and paste them into the Queries textbox. To toggle between different queries, just click the desired query.

Select the site influence of the override rule from the dropdown menu. If you have multiple catalogs, you need to specify the catalog that is being targeted by the current rule you’re creating. The demo here has two catalogs - Homeoasis EN (English)and Homeoasis_fr (French). The user has to decide whether the rule settings for query "chair" should be applied to Homeoasis EN or Homoasis_fr site.

Select the appropriate algorithm setting from the dropdown.

Click the “Preview” button to view the product search results for this query override rule.

<br>
### **Add Query overrides for one or more search queries**
Click on the “**Add**” button to open the “**Configure query overrides**” section.
<img src="https://files.readme.io/e6d18e1-image14.png" class="border">
Specify the queries for which overrides need to be added by passing the search query in the “**Queries**” textbox. To specify multiple queries, hit enter/return after typing each query. You can also import multiple queries, as illustrated [here](🔗).

Select the appropriate algorithm control setting from the dropdown. **Notes:**
Category Precision, Facet Precision, and Product Type Precision modes work only for top queries.
Only queries with a valid product type are supported by LLM-based Precision. For instance, the query “black shoes” has the product type “shoes”.

Click the “Save” button.
<br>
### **Edit Query override for one or more search queries**
Hover on the “**Settings**” column to reveal the edit icon.

Select the appropriate algorithm control setting from the dropdown.

Click the “**Save**” button.
<br>
### **Delete an existing Query override rule**
Hover on the “**Settings**” column to reveal the delete icon.

Click the “**Delete**” button in the Delete Confirmation pop-up window.
# **Dashboard Controls FAQs**
**How is conflict resolution managed i.e. when a setting is passed through API vs Global rule vs Query Override vs any live AB test?** Priority order works as follows: a. Query Override on Dashboard b. API parameters passed directly on front-end API call c. CMS setting for any live AB test d. Global Rules on Dashboard <br> Example: Let’s say a customer has Global rules set up on the dashboard for Search Recall Precision as Text Match. **Case 1**: If the customer is running a live AB test for 50-50 traffic for text match and category precision. In this case, since CMS setting has higher priority than Global rules, CMS setting triumphs global rules, and 50% traffic will have text match precision, whereas the other 50% will have category precision. <br> **Case 2**: On top of case 1, if the customer is also controlling the feature for a few search queries on their end by passing search recall precision as Product Type precision. In this case, for the queries that are controlled by the customer on their end, product type precision will be applied. For all other queries, CMS settings(live A/B test) will be respected. <br> **Case 3**: On top of case 1 and case 2, if the customer has a query override set up of Search recall precision as “Product Type” for a few queries. In this case, since query overrides have higher priority, the search queries that have overrides set up will have category precision. For the queries that are controlled by the customer on their end, product-type precision will be applied. For all other queries, CMS settings(live A/B test) will be respected.
**Do all 4 settings need to be updated together on the dashboard?** No, if you wish to update/preview one setting at a time, you can achieve this by selecting the relevant dropdown value of the setting and leaving all other settings as is.