🙄 How do you sort e-commerce semantic search results by price, rating, best sellers, or freshness, while keeping a good precision?

Table of Contents


Not sorting, obviously. Visitors will never click on ill-matched products, even with the best ratings or the cheapest price.

Without further ado, the correct answer is …. 🥁 ranking !!!

Ranking is giving a score to results, based on expressions. Results are then sorted on this score.

To get a good balance between matching and other internal or external attributes, the ranking has to moderate matching scores with other scores, in a mathematical expression.

The problem is to be able to do this ranking with good performance.

For all that reasons, Vespa.ai big data, three-phases ranking expressions, is an excellent solution:
– First-phase and second-phase ranking expressions can be computed on all stateful content nodes
– An addition third-phase (named global phase) can also be computed on aggregated results on stateless container nodes

Pseudo-code examples:
rank-profile title-freshness {
first-phase {
expression: freshness(timestamp) * closeness(field, field_title_embedded)

rank-profile title-rating {
first-phase {
expression: attribute(field_rating) * closeness(field, field_title_embedded)

Vespa.ai ranking expressions: https://lnkd.in/eZnACspG

wpsolr.com will soon provide WooCommerce with Vespa.ai and ranking sorts.

Read more related content