Implementing Synerise AI Search
The Synerise AI Search feature is available from the Magento plugin version 3.1.1
and higher.
You can use Synerise AI Search engine for product listing on category pages and in quick search on the website of your shop. However, advanced search is not supported, so ensure that its pages are disabled in your shop’s theme.
AI search engine is compatible with Smile ElasticSuite module. It has not been tested with other search and layered navigation modules.
Benefits:
- Personalized search results
- Ability to analyze search statistics based on search events which will be available in profile’s event history in Synerise
- Ability to elevate the engine performance by defining advanced options such as item ranking for sorting search results, management of typos and missing words, synonyms, query rules, query suggestions, A/B testing
Prerequisites
-
Make sure your API key has the following permissions:
- ITEMS_SEARCH_CONFIG_SEARCH_CREATE,
- ITEMS_SEARCH_CONFIG_SEARCH_UPDATE,
- ITEMS_SEARCH_CONFIG_SEARCH_READ,
- ITEMS_SEARCH_SEARCH_READ
-
In the Magento panel (Stores > Attributes > Product), review attributes which will be available for selection as searchable, filterable, and sortable attributes, and decide if you want to add some or remove them. You will always manage these attributes in Magento settings, and the plugin automatically transfers those settings to Synerise. During and after completing the integration, you should not change these settings in the Synerise search index used with your Magento shop.
Option name Value Result Use in Search Yes An attribute is available on the list of searchable attributes Use in Layered Navigation Yes An attribute is available on the list of filterable (facetable) attributes Use in Search Results Layered Navigation Yes An attribute is available on the list of filterable (facetable) attributes Used for Sorting in Product Listing Yes An attribute is available on the list of sortable attributes
Procedure
The following steps must be performed in the given order:
- Enable search item attribute synchronization (Magento)
- Configure AI engine for the catalog (Synerise)
- Prepare a search index (Magento)
- Select attributes for the search index (Magento)
- Select the search engine (Magento)
Optionally, you can review and use advanced search index features in the Synerise platform.
Enable search item attribute synchronization
In this part of the process, you will enable synchronization of item attributes used in search. These attributes will be available in Synerise in Data Management > Catalogs, in a catalog named store-{id}
, where {id}
is the ID of the store.
-
In the Magento platform, go to Marketing > (Synerise) Configuration > Data.
-
Scroll to the Products section.
-
Recommended: Set the value of Include attributes used in search to Yes.
This way all attributes used for searching (attributes selected as searchable, filterable, sortable in the configuration in Magento as a part of prerequisites) will be sent to Synerise catalog. We strongly recommend selecting this option when using Synerise AI Search. -
Set Selectable attribute value to ID & Label.
This setting allows you to send both the labels (for example, “red”, “shoes”, “XYZ brand”) and IDs of the attribute options. Selecting this option lets search users search and sort results using the labels. -
To confirm the settings, click Save Config.
-
Clear configuration cache in System > Cache Management by performing the following steps:
- Select the checkbox next to Configuration cache type.
- Set the option above the table to Refresh.
- Confirm the action by clicking Submit.
-
Schedule full synchronization of data for the Product model to reflect the changes you made to the configuration.
Configure AI engine for the catalog
In this part of the process, you will create an item feed in Synerise using the Synerise catalog, which receives synchronized data from Magento (you can find it in Data Management > Catalogs under the name in the following format: store-{id}
, where {id}
is the ID of the store). Additionally, you will configure the AI engine for this feed.
If you already created a feed from the store-{id}
catalog, make sure the search engine is enabled for the existing feed in its configuration and skip this part of the process as creating multiple feeds from the same catalogs is impossible.
-
In Synerise, go to Data Management > Catalogs.
-
Check the list for the catalog named
store-{id}
(where{id}
is the ID of the store). -
If:
- you find it, check whether its structure is consistent with the changes you made in “Enable search item attribute synchronization”. If not, wait until the catalog is updated.
- the catalog isn’t created yet, wait until it appears on the list. The duration of creating a catalog depends on the data load.
-
Go to Settings > Configuration > AI Engine Configuration.
-
In the upper right corner, click Add feed.
Result: A pop-up appears. -
On the pop-up, select Catalog.
-
As the catalog type, select Data catalog.
-
From the list of catalogs, select the catalog that receives synchronized data from Magento.
The catalog’s name isstore-{id}
, where{id}
is the ID of the store. If the catalog isn’t in the list, make sure that it’s not already used in another feed. -
Confirm by clicking Apply.
Result: The feed is created and added to the list. -
On the list, find the feed you have just created and click the icon and then Edit.
-
On the Applied search engines section, click Show.
-
Enable the Search engines toggle.
Result:
Prepare search index in Magento
In this part of the process, you will create and/or select a Synerise search index for a store view. If you don’t have any indexes, creating one in the Magento plugin settings will also create it in Synerise, as described below.
- Go to Marketing > (Synerise) Search Indexes.
- Click Assign Search Index.
- Select the store view for which the search will be applied.
- To:
- assign an existing index to the store view:
- Set Create to No.
- From Select, choose the index. The list contains the indexes from the Synerise platform ( AI Search > Indexes)
- create a new index:
-
Set Create to Yes.
-
In Name, enter the name of the index.
Result: The index will also be available in the Synerise platform in AI Search > Indexes.
-
- assign an existing index to the store view:
Select attributes for the search index
In this part of the process, you will select searchable, filterable (facetable), and sortable attributes that will be available for use in search. This is the primary location for managing filterable, searchable, facetable, and sortable attributes. The scope of attributes available for selection is determined by the setup you defined as a part of the prerequisites.
- Go to Marketing > (Synerise) Search Indexes.
- Find the search index for which you want to select attributes.
- For that index, from the Action column, click Setup.
- Select searchable, filterable (facetable), and sortable attributes.
Select search engine
In this part of the process, you will select the Synerise search engine in the configuration of the Magento platform.
- In Magento, go to Stores > Configuration > Catalog > Catalog Search.
- In Search Engine, select Synerise AI Search.
- Optionally, set Disable “Catalog Search” index to Yes.
Such configuration removes unused search engine indexes from the reindex list.
Advanced search index features
This part of the process is optional.
To define advanced options which let you optimize search engine performance:
- In Synerise, go to AI Search > Indexes.
- Find the search index you selected in “Prepare a search index in Magento”.
- Open the details of the search index by clicking its name on the list.
- You can edit or define the following options:
-
Response, filterable, facetable, and sortable attributes
WARNING: The primary location for managing filterable, searchable, facetable, and sortable attributes is the Magento panel. While deleting these attributes in Synerise will take immediate effect, any additions of new attributes must be done through the Magento panel. To ensure compatibility, it is important to maintain the same scope of attributes on both platforms when managing them in the Magento panel and Synerise.The following attributes are required:
-
Response attributes:
entity_id
-
Searchable attributes:
name
-
Filterable attributes
entity_id
is_salable
visibility
deleted
-
Facetable attributes
category_ids
entity_id
is_salable
visibility
deleted
-
Additionally, you can make use of other features available in the AI Search: