Why Keyword Search Fails Ecommerce Chat and Hybrid Fixes It

Andrew Altair, Founder
Why Keyword Search Fails Ecommerce Chat and Hybrid Fixes It
Mohamed Nohassi / unsplash

TL;DR: Keyword search misses synonyms, semantic search misses model codes. aiSTAFF takes both and combines the two ranked lists with Reciprocal Rank Fusion, then separates the rating and reviews so the chat buyer gets the right item instead of a dead end.

Where one search method fails

The buyer types "a comfortable chair up to 300 GEL" in the shop chat. The keyword engine searches for the word "comfort" in your product titles, finds nothing, and returns an empty result because your catalog calls the product "chair." User leaves. That one omission is a lost sale, and it happens dozens of times a day on a busy page. If you sell online in Georgia, the fix starts with our AI sales bot and this article explains how it works.

Keyword search also has the opposite problem. A user who types in the exact model code, say "AX-220", wants the exact SKU. A pure value-based engine might return five buckets that are conceptually similar and buried in the corresponding code. Each method is strong where the other is weak. The task of finding a good product is to use both at the same time.

Two engines, two powers

aiSTAFF puts your catalog in a private vector store, one per business, and reads it two ways for each message.

  • Dense semantic search. Each product and each query is converted into a vector using Gemini's built-in. The distance between vectors measures value, so "sofa", "couch" and "set" are close to each other even though they don't share letters. This is what captures synonyms, descriptions, and intent, such as "something for a little balcony."
  • BM25 Keyword Search. A classic lexical ranker that determines the exact overlap of terms. This is what parenthetical models identify, codes, brand spellings, and rare words that a semantic model has never seen. It is exact where dense search is fuzzy.

Run alone, each returns a ranked list. The problem is combining them. A naive approach selects the top result from one engine and ignores the other, throwing away half of the signal. aiSTAFF combines two lists.

Reciprocal rank merge, in simple terms

Reciprocal Rank Fusion, or RRF, is a scoring trick that combines two ranked lists without needing two engines to speak the same entities. Dense search returns the cosine similarity, BM25 returns the term frequency score, and the two numbers are not comparable. RRF gets around this by ignoring the raw scores and using only the position of each element in each list.

The rule is short: the product's combined score is the sum of 1 divided by (the constant plus its rank) in both lists. The first item on the list contributes a lot. The item in the tenth place favors the little one. A product that is high in both the semantic list and the keyword list collects the two solid pieces and pushes them to the top of the merged result. A product that ranks high in just one still gets a fair shot. The math is simple and the effect is strong: the elements that both engines agree on win, and the powerful punch of one engine is not wasted.

This is why a query like "comfortable AX-220 seat" works. The semantic side handles "comfortable seat", the keyword side closes on "AX-220", and the RRF accurately maps the model to the top because it evaluates both sides well at the same time.

by rating and popularity

Relevance is the first pass, not the last word. Two chairs are equally matched to the query, while one is a bestseller with 200 reviews and the other is a backlog that no one buys. aiSTAFF ranks the merged results by similarity, multiplied by popularity, using the number of ratings and reviews, so a proven seller beats the dust. Products are also grouped by type, which stops chair searches from returning chair-shaped lamps. The customer sees the item that will fit best and is likely to satisfy them, just as a good floor fitter will guide you to a model that works.

It also crosses languages ​​and word forms

As the dense side seeks meaning, it extends to languages ​​and grammar. A Georgian or Russian query is translated into the language of the catalog for searching, and then the answer is returned to the user's language. Plurals, cases and word forms are tolerated, so "chair", "chair" and Georgian "seat" reach the same products. Two companions cover this: How a Georgian customer buys your English catalog and A comfortable chair should find your seats. A broader vector search image is Multilingual Vector Search Georgian Catalog.

Hybrid Plus Compliance Gateway

Powerful search still needs a floor. If the best fusion match is weak, returning it will still invent a product that the customer didn't want. aiSTAFF uses a compliance gate at a cosine threshold close to 0.64: ​​below that the bot says "we don't handle this" rather than forcing a bad result. Hybrid search increases search quality; The gate stops the rest. Together, they explain Why Chatbot Wont Invent Products, detailed in Gateway to Relevance.

Once the right elements are found, presentation matters. Each result is returned as a card with price, old price, rating and inventory covered in product cards in chat that convert and the bot can move multiple items to chat cart. The entire sales engine sits at the hub, AI Chatbot That Sells Your Catalog. If you're deciding between this and retraining the model on your data, see RAG vs fine-tuning, and for a more comprehensive build, Ecommerce Chatbot Guide.

Working example

The electronics store receives the message "tihi keyboard for office, mechanical." This is a typo for "calm". A keyword search alone returns nothing. A dense search reads intent as a low-noise mechanical keyboard and lists three models. BM25 captures the "mechanics" exactly and confirms two. RRF combines the lists, the two agreed models are growing and ranked first with a 4.6 rating and 90 reviews. The bot returns two cards, both in stock, with both prices. A miss turned into a sale and the customer never knew the typo almost cost them their response.

FAQ

What is hybrid search in a chatbot?

Runs two product searches simultaneously, a semantic one that understands meaning and a keyword one that captures exact codes, then combines the two ranked lists to find the best overall match.

What does Reciprocal Rank Fusion do?

RRF combines the two ranked lists using each item's position rather than its raw score. Products that rank high on both lists gain the most weight and rise to the top, making the combined result durable.

Why not just use semantic search?

Semantic search is vague about exact model names, codes and rare brand spellings. Pairing keywords with searches keeps the value relevant while pinning the exact SKU the shopper was looking for.

How do you avoid returning the wrong product?

After the

merge, the bot moves through the ratings and reviews, then uses a relevance gate close to cosine 0.64. Weak matches fall below the gate, and the bot says it doesn't carry the item instead of guessing.