Most of the eCommerce stores need a good search. And if you have been using Magento for a while, you know how challenging it might be to have a good search without investing additional budget to the 3rd party service providers. Historically, the search was not the strongest part of the Magento platform. With Magento 1, we had it with a very simple algorithm that didn’t provide good results most of the time. With Magento 2, there’s a new search engine option based on ElasticSearch. The last one is much better in terms of search results relevancy and additional features such as synonyms etc. However, without additional tweaks and modifications, it’s still not the best option.
At Adobe Summit 2021, a new service for Adobe Commerce called Live Search was introduced. Adobe’s official search solution is aimed at bringing the search to a new level by utilizing AI and other modern technologies. If you are a lucky owner of an Adobe Commerce license, you may use this service free of charge by installing the corresponding module from the marketplace Magento Live Search. The most interesting fact about this new module is that it represents the new service-based approach that Adobe, most likely, will use as the main idea for the future versions of the platform. But let’s get back to this fact later after reviewing the features.
As it was said, the module installation process is the same as for the other modules. The only difference, you will need to generate an API key from your Magento account. Your Adobe Commerce installation will use this key for communication with another Adobe services. Once the module is installed and configured, you may need to wait for some time to have all the data indexed. Since the product is still in beta, there’s no easy way to see how many of your products are processed. Anyway, if you experience issues with the search and no errors are thrown at your face – try to give it some time.
If you have configured everything correctly, you should see the new Live Search item on the Marketing tab of your admin panel.
Once you are there, you will find the screen that allows you to configure facets, synonyms, rules, or perform API requests to the search engine.
Facets are attributes that will be visible in your filters (layered navigation) on a product listing page. You may add some dropdown attributes in a standard way from Admin -> Attributes -> Product, and you will see the newly added attributes in the Faceting section of the Live Search configuration. Once again, you may need some time to have the newly added attributes populated in the search configuration. For now, the configuration itself for facets is pretty simple. You may configure sort order, sort type, or pin some attributes to have them always on the top of the filter panel.
The second tab, Synonyms, allows you to configure what keywords should be considered by the system as synonyms for other words. The most interesting setting here is the ability to set either two-way (search for a “dog”, get “Pedigree” and vice versa) or one-way (search for a “this green thing with buttons”, get “Poppit” but not vice versa).
The third tab, Rules, is one of the most exciting features. This is the place, where you may configure how the search results should look based on what is in the search string. For example, you can create a rule that pins some particular product to the top of the product listing if the search string contains “shirt”.
Many of the merchants have been waiting for this feature for a long time. In the current eCommerce reality, search is not a tool that allows visitors to find something in a quick way. It’s also a powerful marketing tool. Having flexible control over what visitors will see within the various search scenarios gives an additional possibility to promote different products.
The GraphQL tab will be helpful mainly for the developers. You may create an API request and see the direct output from the search service.
That’s it about the configuration, but what about the search functionality on the storefront? Well, it works well in most cases. Synonyms operate perfectly as well as facets. We had some hard times with rules in attempts to make this function work. But eventually, the rules started to work. We have not tested the search performance with some extensive catalog (only with around 1K SKUs). But if you had a chance to abuse the system with some big data, please share your experience in the comments below.
Under the Hood
The most appealing fact about the new search is that almost all search functionality does not take place within your platform installation – like it used to be. The Live Search module collects the necessary data about your catalog and sends it over to the external search service within Adobe’s infrastructure.
Moreover, all configurations (facets, rules, synonyms) are stored on this external service as well. Once a visitor searches for some keyword, the system will send a request to the mentioned external service using GraphQL. The service will process it using Adobe Sensei and send back the respective result.
Now, remember all the talks about the new micro service-oriented (or, I’d rather say, service-oriented) architecture of the platform? So, here you go. Adobe Live Search is a perfect example of how your Adobe Commerce installation can be used as a “thin client” that only sends and receives the data from different remote services. In the same way, it’s possible to convert sales, customers, CMS, and other parts of the system to the remote services that will process your data. So far, it is hard to estimate how good this idea is. Only time will tell. However, it’s great to see that after the talks about concepts we finally have an understanding how the services will actually work.
- When you generate the API key, accounts with “Shared Access” might not work. You need to generate the API key from the license owner’s account.
- If something went wrong, check the logs. If the logs are not helpful (i.e. “Error” with no explanation), leave the system for some time and get some coffee or take a nap. Since all the data should be stored remotely, it might take some time. This applies to all the data, including configuration, which also may not work straight away.
- By the time this article is published, the service is still in beta. So, keep in mind that fact before planning the new service usage for production environments.
- If you got stuck, feel free to ask for help in the dedicated Live Search Slack Channel.