Search that understands what you mean.
Three engines, chosen below. Re-rank: the shop's own search, re-ranked by an AI model with what the shop knows about the shopper. Model-led: the model reads needs, occasions and dishes without the old search. v4: our own engine, which matches products by their words in English and Thai, and reads occasions through the model's categories.
Search as a shopper would. For shoppers, context and the reasons behind each result: Advanced view →
Who is searching? the context the model reads
Pick a synthetic shopper to fill the form, or type your own. Behaviour is recorded as you use the page.
Profile
Basket and history
Likes and dislikes
Behaviour recorded live
Context sent to the model
Measured, not claimed
The evaluation set, scored on what shoppers see.
The rules this demo follows
The model decides
Reading the search, choosing shelves, checking and grading products, diet and allergy checks, fit for the shopper, grouping, recipe ingredients and who may be sponsored: all done by the model (R0). Code fetches what the model chose and phrases reasons from the model's answers. No text-generating model (LLM) picks, filters or orders a product.
Context is bounded
Context changes how the search is read and the order within a grade. On a search that does not name a product, a disliked product counts one grade lower for that shopper. A product the shopper named is never hidden or pushed down; an allergy clash shows a warning. Diet and allergy rules only remove products (R6).
Sponsored within limits
Only products the model grades RELATED or better can be sponsored. A sponsored product is labelled and never placed above a product the model graded higher (R2, proposed guardrails, applied strictly; pricing is open).
Demo only
Shoppers, campaigns and the basket are synthetic; nothing is written to Villa Market. Recipes come from a curated library (text for people), while the model picks each product. Products come from Villa Market's product API; stock and promotions from shop.villamarket.com, read-only.