Faceted Search
Introduction
Faceted search is a widely used feature in e-commerce websites that enables users to filter products based on various attributes. It is essential for e-commerce websites with a large inventory to allow customers to quickly find products that match their interests/search etc.
Personalized search functionalities go beyond just parsing search queries. They also take into account a user's interaction history on the site, fostering a more tailored and intuitive browsing experience. By aligning search results with a user's behavior and preferences, businesses can enhance customer satisfaction, conversion rates, and overall sales.
Scenario Setup
In the Recombee Admin UI, navigate to the Scenarios section and choose Create Scenario.
- Enter a Scenario ID. Select a distinctive label for your recommendation scenario, such as "faceted-product-search"
- Choose Recommendation type - Search Items
There are typically many products matching the criteria and you want to offer the user more products as the user scrolls down.
Request the Recommend Next Items endpoint to load subsequent products of interest.
Logic
The Logic defines the behavior of the recommendation engine.
- Choose the search:personalized logic type from the Universal Models
You can adjust how much the results are biased towards the user (as opposed to strictly following the full-text results) by setting the personalizationImpact
parameter.
Filters
Facets
The user filters the desired products by various facets such as price, vendor, color, size, and many more based on the particular type of products and selected category.
You can send the information about the user’s current selection using the filter parameter of the Search Items endpoint. Only products satisfying the criteria will be returned.
For example, if the user has selected to search only within shoes by Nike that are red and size 42, the filter may look like:
'category' == "shoes" and 'manufacturer' == "Nike" and 'color' == "red" and "42" in 'available_sizes'
If the user then adds a desired price range between 100 and 140 USD, the filter will become:
'category' == "shoes" and 'manufacturer' == "Nike" and 'color' == "red" and "42" in 'available_sizes' and 100 <= 'price' <= 140
For more detailed information about how to construct the filters, please navigate to the ReQL documentation.
Other Filters
Requesting Search Results
Request the Search Items endpoint of the Recombee API using an SDK of your choice.
Don’t forget to set the filter parameter to allow only items that comply with the user’s selected criteria.