---
title: "Shopping by occasion: a product search experiment with Jev"
description: "I built a semantic product search experiment with Jev and TSR Paris pieces. Watch the live demo, see the API cost, and read what worked and what broke."
canonical_url: "https://www.rohanchaudhari.fr/blog/semantic-product-search-with-jev"
md_url: "https://www.rohanchaudhari.fr/blog/semantic-product-search-with-jev.md"
last_updated: "2026-09-22"
---

# Shopping by occasion: a product search experiment with Jev

I built a semantic product search experiment with Jev and TSR Paris pieces. Watch the live demo, see the API cost, and read what worked and what broke.

## Shopping by occasion

The next experiment in Rohan's Jev series uses natural-language requests to rank a small collection of real clothing. “Something tailored for a work presentation that I could wear to dinner afterwards” brings the Celeste Peplum Jacket and Magnolia Floral Military Tang Jacket to the top. “An autumn dinner somewhere intimate. Elegant, with a little drama” brings the Amaryllis Botanical Open-Back Dress and Selene Midnight Lace Gown to the top.

[Watch the 28-second live demo](/videos/jev-product-search/demo.mp4). Both requests make fresh Jev API calls; waiting time is retained. No keyword-comparison sequence appears in the video.

## Implementation

Fourteen products were selected from 53 public catalog records. Original descriptions and variant data are separated from Codex-prepared photo observations and explicit unknowns. Jev receives text, not images. One request asks a suitability Score and a factual-support Choice for every product: 28 questions over the same subset. Code checks recognized size, price, and availability constraints against captured variants. The interface waits 550 ms after typing pauses, supports immediate Enter submission, and prevents stale responses from replacing a newer selection.

## Measurements and limits

On 22 September 2026, the recorded calls to jev-1.13.0 took 1.431 and 0.519 seconds at the API boundary. Combined estimated API cost was $0.001061046, using returned tokens and the published $0.042 per million input tokens. These figures exclude catalog preparation, development, browser rendering, and the input debounce. Two calls are not a load benchmark.

Conflicting bag color information produced a poor selection. Early array-position references also mixed up neighboring products; explicit product names corrected the repeated errors observed in reruns. No shopper relevance study, conversion lift, or superiority over production ecommerce search is claimed.

## Credits and next step

The amazing collection, product photos, and original descriptions are from [TSR Paris](https://tsrparis.com/). This is an independent local prototype, not a feature on the store. The next useful test is uncoached shopping requests and observing how people refine the results.

[Read the illustrated article](/blog/semantic-product-search-with-jev), the [previous Jev experiment](/blog/i-just-want-the-setting), or the [TypeSafe model documentation](https://docs.typesafe.ai/models).

## Sitemap

See the full [Markdown sitemap](/sitemap.md), [LLM index](/llms.txt), or [contact page](/contact.md).
