
Before you can use [AI recommendations](/docs/ai-hub/recommendations-v2), you must [prepare an item feed](/docs/ai-hub/recommendations-v2/item-feed-requirements) which will be the source of items.

The process consists of the following steps:  
1. [Adding product feed](#adding-item-feed)
2. [Selecting a product feed](#selecting-item-feed)
3. [Connecting feed with supplemental catalog](#connecting-feed-with-supplemental-catalog) (optional)
3. [Selecting attributes for preview](#selecting-attributes-for-preview)
3. [Grouping feed attributes](#grouping-feed-attributes)
4. [Selecting a recommendation type](#selecting-recommendation-types-and-default-filters)
5. [Selecting response attributes](#selecting-response-attributes)
6. [Selecting filterable attributes](#selecting-filterable-attributes)
7. [Defining the item link](#defining-the-item-link)
8. [Selecting training attributes](#selecting-training-attributes)
9. [Selecting attributes increasing the item variety](#selecting-attributes-to-increase-item-variety)

After the configuration and the model training, you can [monitor the status](/docs/settings/configuration/ai-engine-configuration/model-status). When the model is active, you can create a [recommendation](/docs/ai-hub/recommendations-v2). 


<div class="admonition admonition-tip"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

You can use the same item catalog for Propensity Predictions, AI Search, and Recommendations.

</div></div></div>


## Adding item feed
---

The first step is selecting the feed from which items will be sourced. You can either select a catalog that contains a feed or use Google Merchant Feed. Make sure, the item feed includes the following attributes:
- `title` - The name of the item
- `category` - The category of the item

You can read about requirements for item feed:
- [uploaded to a catalog](/docs/ai-hub/item-feed/item-feed-in-catalog)
- [pulled from an URL](/docs/ai-hub/item-feed/google-merchant-feed#requirements)

  If you previously configured a feed which you want to use now, you can omit this step.


  <div class="admonition admonition-warning"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 9v2m0 4h.01m-6.938 4h13.856c1.54 0 2.502-1.667 1.732-2.5L13.732 4c-.77-.833-1.964-.833-2.732 0L4.082 16.5c-.77.833.192 2.5 1.732 2.5z" /></svg></div><div class="admonition-body"><div class="admonition-content">

- We recommend using Google Merchant XML instead of XML files due to the size limits (an XML file cannot exceed 10 MB). 
- If you're enabling AI engine for visual similarity recommendation model, select the item feed which contains less than 1,000,000 items.

</div></div></div>


1. Go to **Settings > AI engine configuration**.
2. Click **Add feed**.  
    **Result**: A pop-up appears.
3. Select the type of item feed you want to create:
    - **Metadata catalog** - A supplementary feed; it cannot operate as a standalone item feed and must be used alongside a main item feed. It's used only for the following recommendation models: 
        - [section page](/docs/ai-hub/recommendations-v2/recommendation-types#section-page)
        - [attribute recommendations](/docs/ai-hub/recommendations-v2/recommendation-types#attribute)  
    Full information on this feed type is available in the ["Metadata catalog" section](/docs/ai-hub/item-feed/metadata-catalog).  
    - **Supplemental catalog** - A feed designed to store price and availability attributes for items across different stores or sales channels. It cannot operate as a standalone item feed and must be used alongside a main item feed that contains the complete item information. Full instructions on implementing this type of feed are available in the ["Supplemental catalog" section](/docs/ai-hub/item-feed/supplemental-catalog).
    - **Item feed** - A main source of item information. You can create a feed from the following sources:
        - **Data catalog** - If you upload and update a file with product information in **Data Management > Catalogs**, select this option and then select the catalog in which you store product information. 
        - **Google Merchant** - If you store product information in Google Merchant, select this option. 
        Then provide the following information: 
            - the link to the Google Merchant feed (the **Feed link** field),
            - the name of the field (the **Feed name** field), 
            - the frequency of pulling updates from the feed to Synerise (the **Interval** field), 
            - authentication type (none, basic, or bearer)
            - authentication credentials (when you selected authentication type other than none)
        
   <div class="admonition admonition-tip"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   Include the [Last-Modified](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Last-Modified) header to enable detection of whether the product feed import is necessary, this will help you reduce data transmission costs.

   </div></div></div>
 

2. Confirm by clicking **Apply**.  
    **Result**: The feed appears on the list in **Settings > AI Engine configuration**.

    
## Selecting item feed
---


1. In **Settings > AI Engine Configuration**, on the list of feeds, click the feed you added according to the [Adding item feed](#adding-item-feed) procedure.  
The configuration form opens. In the **Item catalog** section, the feed you are configuring is selected automatically and you can proceed to the next part of the configuration.

    <figure>
    <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/campaign/_gfx/reco-model-configuration.png" alt="Blank model configuration form" class="large">
    <figcaption> Blank model configuration form </figcaption>
    </figure>

## Connecting feed with supplemental catalog
---

If you want to connect a [supplemental catalog](/docs/ai-hub/item-feed/supplemental-catalog) which stores `price` and `availability` attributes for stores/sales channels to your item feed then:

1. In the **Supplemental catalog** section, click **Show**.  
    <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/settings/_gfx/supplemental-catalog-ai-config.png" class="large" alt="Selecting a supplemental catalog in the configuration of the main item feed"><figcaption>Selecting a supplemental catalog in the configuration of the main item feed</figcaption></figure> 
2. Click **Add catalog**.  
3. From the dropdown list, select supplemental catalogs you want to connect to your item feed.  
    The list contains only feeds of the supplemental catalog type, the instructions on creating them are available in the  ["Implementing supplemental catalogs" section](/docs/ai-hub/item-feed/supplemental-catalog#implementing-supplemental-catalogs).  
4. Confirm by clicking **Apply**.  
    **Result**: As a result, the [supplemental attributes](/docs/ai-hub/item-feed/supplemental-catalog#supplemental-attributes) type will be available for use in the [recommendation filters](/docs/ai-hub/recommendations-v2/recommendation-filters) and you can select this catalog in the [preview of the recommendations](/docs/ai-hub/recommendations-v2/previewing-recommendations#previewing-recommendation-supplemental-catalog-context) based on this item feed.

## Selecting attributes for preview
---

You can define attributes whose values will appear in the Synerise platform preview when you test the recommendation or the search settings.    

<figure>
<img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/settings/_gfx/attribute-for-preview.png" alt="Attribute for preview section" class="full">
<figcaption> Attribute for preview section </figcaption>
</figure>

1. On the **Attributes for preview** tab, click **Show**.  
2. In the **Response attribute** column, from the lists select the attributes that contain the data in the **Item attributes** column.  

**Example**: If the data source stores the item title in the `itemTitle` attribute, choose `itemTitle`: on the right, select the `itemTitle` attribute as the pair for `Title` from the left column.  
  
**Result**: Values for the attributes that are chosen in the **Response attribute** column will be shown for products when previewing them in the Synerise platform.


<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

This setting is shared by the Recommendations previews and the AI Search Engine previews.

</div></div></div>


## Grouping feed attributes
---


<div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

This option is available only for feeds from Google Merchant XML files.

</div></div></div>


Grouping feed attributes organizes attributes or fields within an item feed into logical groups. Instead of treating each product variant — such as different sizes or colors — as a separate item in the feed, all variants of a product are combined and grouped into a single item.

During this grouping process, a "base" product is selected as representative. This is done by first gathering all products that share the same `itemGroupId`, then grouping them by category, and finally selecting the first product from the largest category group to serve as the base.


<div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

Null values and empty attribute values are not handled and will not appear in the grouped results.

</div></div></div>


When adding such a feed to Synerise, you must enable the grouping of feed attributes. Please note that enabling grouping is irreversible.  

1. In the **Grouping feed attributes** section, click **Show**.  
    **Result**: Grouping rules are shown. The system automatically prepares grouping rules.  
2. Verify the proposed grouping rules.  
    When configuring the grouping of feed attributes, you must map source fields to target fields using one of the following aggregators. Each aggregator determines how values from multiple items are combined:

    | Aggregator     | Description                                                                                          | Example                                               | Aggregated Result           |
    |----------------|--------------------------------------------------------------------------------------------------|------------------------------------------------------|----------------------------|
    | **or**         | Performs a logical OR on boolean values. Returns `true` if any value is `true`, otherwise `false`. | `true, false, false`                                | `true`                     |
    | **arrayDistinct** | Aggregates unique, non-null values into an array, removing duplicates.                            | `"41", "42", "41", "42"`                      | `["41", "42"]`             |
    | **arrayFlatten** | Flattens nested arrays into a single array combining all elements.                                | `["123", "456"], ["456", "789"]`              | `["123", "456", "456", "789"]` |
    | **array**      | Aggregates values into an array, preserving order.                             | `"41", "42"`                                  | `["41", "42"]`       |
    | **single**     | Selects the first non-null value from the list. For the `availability` attribute, the aggregated result will be a boolean value.                                                   | `"PROD123", "PROD124"`                        | `["PROD123"]`                |

3. To add your own rule, click **Add rule**.  
    1. In the **Source filed** dropdown, select an item attribute from the feed pulled from Google Merchant.
    2. From the **Aggregator** dropdown list, select the aggregator based on which attribute values will be combined.
    3. In the **Target field** dropdown list, select the attribute which will hold the aggregated values. You can create an attribute.
4. Confirm by clicking **Apply**.

## Selecting recommendation types and default filters
---

Select the recommendation models you want to enable for the selected item feed. Optionally, you can define **default filters** (global item and distinct filters) for the recommendations created based on the recommendation model for a specific item feed. These filters include:  

   <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/campaign/_gfx/reco-model-default-filters.png" class="large" alt=">The preview of the Top item recommendation model in AI engine configuration"><figcaption>The preview of the Top item recommendation model in AI engine configuration</figcaption></figure> 

- **Item filter** 
    - This is a global item filter whose conditions an item must meet to be included in the recommendation of a specific type.
    - You can enable this filter in the settings of a recommendation campaign through the **Apply Items Global Filters** toggle while [adding slots](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#adding-slots). The filter will then work together with the filters in the recommendation slot.
    - If you change the filter settings, the changes will be applied automatically to all recommendations based on the specific recommendation model for which the **Apply Items Global Filters** option is enabled.  
- **Distinct filters** 
    - This is a global distinct filter which helps increase the variety of items in the recommendation of a specific type. Applying this filter limits the number of items with the same value of an attribute (such as, brand, color, shape, category). 
    - The choice of attributes for selection in this filter is defined in the **Attributes for distinct filters** section in **AI Engine Configuration**.  
    - You can enable this filter in the settings of a recommendation campaign through the **Apply Global Distinct Filters** toggle while [adding slots](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#adding-slots). When you apply it there, it will override the distinct filter for a slot. 
    - If you change the filter settings, the changes will be applied automatically to all recommendations based on the specific recommendation model for which the **Apply Global Distinct Filters** option is enabled.    
    - For all recommendation types except for **Last seen**, the engine considers up to 1000 items with the highest score that match the recommendation type. For example, if you selected the **Cross-sell** type, the engine analyzes up to 1000 items that match the cross-sell recommendation type, and then selects the number of items you chose to include in the slot.
    - For the **Last seen** recommendation type, the engine considers the last 100 page visit events. Based on the data from these events, the engine selects the number of items you chose to include in the slot.


   <div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   Learn more about [recommendation types](/docs/ai-hub/recommendations-v2/recommendation-types).

   </div></div></div>


In the **Recommendation models** section:  

1. On the recommendation model you want to enable, click **Show**.
2. Switch the **Model enabled** toggle on.
3. Optionally, define default filters for the recommendation model. These are filters which are automatically applied to the recommendation, in the **Default Filters** section:  
    1. In **Item filter**, click **Add**. 
        1. From the dropdown list, select an item attribute.  
        2. Use a logical operator.  
        3. Enter or select a value of the item attribute.
        4. To add more conditions, click **Add another** and repeat steps I-IV.
        5. Confirm by clicking **Apply**.
    2. In **Distinct filters**, click **Add**.  
        
   <div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   You can read how to build conditions in the distinct filters for the `category` attribute [here](/docs/ai-hub/recommendations-v2/recommendation-filters#the-category-attribute).

   </div></div></div>

        <figure><img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/docs/ai-hub/_gfx/global-distinct-filter.png" class="large" alt="An empty pop-up for configuring distinct filter conditions"><figcaption>An empty pop-up for configuring distinct filter conditions</figcaption></figure>  

        1. In the pop-up header, enter the name of the filter.
        2. In the **Show me only** field, enter the number of items whose attribute values can be the same.
        3. From the **Choose attribute** dropdown list, select the attribute.  
            You can use each attribute only once. This means that if you add multiple filters, any attribute that has already been used will no longer be available for selection.    
        4. Confirm by clicking **Apply**.  
        5. To add the next distinct filter, click **Add** and repeat the steps. 
        6. If you want the distinct filter to supplement the slot with non-matching items in case not enough matching items are found, enable the **Mark filter as elastic** option.
  


5. Repeat steps 1 to 4 for other recommendation models you want to select.
4. Confirm by clicking **Apply**.  
    **Result**: The AI model is trained. The Default Filters are disabled in the settings of a recommendation campaign by default.


## Selecting response attributes
---

A response attribute is an attribute of the item that is returned in the response to a recommendation request.  
1. In the **Response attributes** tab, click **Show**.
2. Click **Select attributes**.  
3. Select the checkboxes next to the attributes which you want to include in the response to a recommendation request.  
    There are two types of attributes:
    - **Textual attributes**: String-type attributes, for example, a color, an item name, a brand name, fabric, pattern, and so on.
    - **Range attributes**: Attributes that can have numerical values within a selected range, such as size, price, width, length, and so on.  
    
    
   <div class="admonition admonition-tip"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   To limit the volume of data sent to your applications and sites, you should only select the attributes which you plan to use.

   </div></div></div>

4. Confirm by clicking **Apply**.

## Selecting filterable attributes
---

You can define the attributes which you can use later to filter recommendations results as well as allow you to filter items in the settings of the Propensity predictions. The attributes also become available in the **Decision Hub**.  


1. On the **Filterable attributes** tab, click **Show**.
2. Click **Select attributes**.
3. Tick the checkboxes next to the attributes which you want to use for filtering the recommendation results.  
    **Recommended**: Don't use `title` or `description` as filterable attributes. Using these attributes as filterable has a negative impact on performance.  
4. Confirm by clicking **Apply**.


   <div class="admonition admonition-important"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M12 8v4m0 4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   Every day, attributes added to **Filterable attributes** are automatically deleted if they fulfill all of the following conditions:
   - They were added to filterable attributes more than 10 days ago.
   - They are not used in a search or suggestion index configuration.
   - They are not set as filters or boosting rules in a recommendation campaign.
   - They are not set as a default filter in a recommendation configuration.
   - They are not used as additional filters in a recommendation API/SDK request.

   </div></div></div>


## Defining the item link
---

An item link is an attribute of an item to which Synerise's UTM parameters are added.

1. On the **Definition of item link** tab, click **Show**.
2. From the **Attribute** dropdown list, select an attribute that is the item link. You can select more than one attribute.  
    
   <div class="admonition admonition-tip"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M9.663 17h4.673M12 3v1m6.364 1.636l-.707.707M21 12h-1M4 12H3m3.343-5.657l-.707-.707m2.828 9.9a5 5 0 117.072 0l-.548.547A3.374 3.374 0 0014 18.469V19a2 2 0 11-4 0v-.531c0-.895-.356-1.754-.988-2.386l-.548-.547z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   When you use one workspace for multiple language versions, you can select several attributes as an item link. This lets you analyze the statistics such as item clicks or visits across various website language versions.

   </div></div></div>

3. Confirm by clicking **Apply**.  
**Result**: The`snrai`, `snr_content`, and `snr_id` parameters are added to the URL of the item. For example: `https://www.exemplary-shop.com./winter-shoes-camelbrown.html?snrai_campaign=QWERTY[…]e=&snrai_content=&snrai_id=123456789010305`

## Selecting training attributes
---

Select the attributes which will be used for training for the Similar items and Visual similarity models, so they can produce relevant results.

- For the Similar items and Item comparison models, the title attribute is set at default. 
- For the Visual similarity model, the default attributes are: image link, additional image links, and availability. These attributes are necessary as the location of the data and images are required.

We recommend selecting short attributes such as title, color, brand.

1. On the **Training attributes** tab, click **Show**.
2. Click **Select attributes**.
3. Tick the checkboxes next to the attributes which you want to display to the customers.
    
   <div class="admonition admonition-note"><div class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" stroke-width="2.5"><path stroke-linecap="round" stroke-linejoin="round" d="M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z" /></svg></div><div class="admonition-body"><div class="admonition-content">

   There are two types of attributes:
   - **Textual attributes**: String-type attributes, for example, a color, an item name, a brand name, fabric, pattern, and so on.
   - **Range attributes**: These are all attributes that can have numerical values within a selected range, such as size, price, width, length, and so on.

   </div></div></div>

4. Confirm by clicking **Apply**.

## Selecting attributes to increase item variety
---

By using distinct filters, you can define the number of items with the same value of an attribute (for example, a brand) that can be displayed in the recommendation frame.  

1. On the **Attributes for distinct filters** tab, click **Show**.
2. Click **Select attributes**. 
3. On the pop up, from the list, choose up to 5 attributes.
4. Click **Apply**.
5. Confirm the settings of the tab by clicking **Apply**.  
**Result**: These attributes are available in the **Distinct filter** [while creating a campaign](/docs/ai-hub/recommendations-v2/creating-recommendation-campaign#distinct-filter) and in the **Item attributes** dropdown in the [the slot configuration for the Section recommendations](/docs/ai-hub/recommendations-v2/creating-section-recommendations#configure-item-settings) and the [Attribute recommendations](/docs/ai-hub/recommendations-v2/creating-attribute-recommendations#configure-item-settings).  


After the configuration, you can [monitor the status](/docs/settings/configuration/ai-engine-configuration/model-status). When the model is active, you can create a [recommendation](/docs/ai-hub/recommendations-v2). 

## Removing item feed
---

You can remove item feeds from the list. While removing item feeds, any Synerise objects that rely on the feed as a source of information (such as predictions, recommendations, AI search) will be automatically disabled. Prior to confirming the removal operation, you will be presented with a list of objects that are currently using the feed to be removed. The feed will be removed after 7 days from confirming the action. During this transitional period, the feed and the objects associated with it will remain active. In the case of a feed within a catalog, the contents of the catalog will be deleted, while the catalog itself will be retained.

1. Go to **Settings > AI engine configuration**.  
2. Next to the name of the feed you want to remove, click <img src="/api/docs/image/54176ad07f146575310749eba44b7c2f42c1b327/icons/threedoticon.png" alt="Three dot icon" class="icon" >
3. From the dropdown list, select **Delete**.  
    **Result**: A pop-up appears with the list of objects that are currently using the feed.
4. To confirm the operation, click **Yes, delete feed**.