How Chivle's AI Matching Actually Works
When you type "stone fruit for this week's menu" into Chivle and get back a ranked list of farms with current inventory, something non-trivial just happened. This post explains what.
What the model is actually doing
Chivle's matching engine isn't a search engine. It doesn't keyword-match your query against farm names and product descriptions. It's a ranking model — its job is to sort farms and listings by how likely they are to be useful to you, right now.
When you submit a request, the model evaluates every available listing against a set of signals:
- Product category match — How closely does this listing fit what you asked for? "Stone fruit" covers peaches, plums, nectarines, apricots, and cherries. The model understands category relationships, not just exact words.
- Your order history — Which farms have you ordered from before? Which product categories? What price ranges do you typically buy at? A buyer who regularly orders heirloom tomatoes from small farms will see different results than someone who's never ordered produce online.
- Farm distance — How far is the farm from your delivery address? Closer farms rank higher by default, because fresher produce and lower delivery friction both correlate with satisfaction.
- Harvest recency — When was this actually picked? A listing marked "harvested this morning" scores higher than the same product harvested four days ago. This is why harvest dates are required for every listing on Chivle — they're a direct input to ranking.
- Seasonal availability — Is this what's actually growing in your region right now? The model adjusts scores based on typical growing seasons, not just what's listed.
Why it improves over time
The model learns from completed orders. When you place an order, the system records which listing you chose, what the match score was at the time, and whether you ordered from that farm again.
A buyer who consistently reorders from the same three farms is giving the model a strong signal: these farms match this buyer's preferences. That signal gets baked into future rankings.
This is why new users see more generic results — the model has nothing to personalize on yet — and returning users often notice a quality jump after their first five or ten orders.
What the match score percentage means
The percentage shown on each match card — "AI match · 96%" — is a normalized confidence score, not an exact probability. It represents how strongly the model believes this listing fits your request relative to all other available listings at that moment.
A 96% match doesn't mean there's a 96% chance you'll love it. It means this listing ranked in the top percentile of available options given everything the model knows about you and the current inventory. A 72% match is still a good match — it just means the model found better-fitting options above it.
What the model doesn't do
The model doesn't invent availability. If a farm hasn't listed a product, it won't appear in your results. It doesn't predict what farms will harvest next week. It only works with what's currently listed and marked available.
It also doesn't replace your judgment. The match score is a starting point. You can filter by distance, freshness, price, and category independently. The model surfaces candidates — you decide.
The longer-term picture
Every order on Chivle improves the model for everyone. As more buyers develop order histories, the model gets better at distinguishing what "stone fruit for a restaurant kitchen" means versus "stone fruit for a family." As more farms list with accurate harvest dates, the freshness signal gets more precise.
We're early. The model is learning. But the direction is clear: the more you use it, the better it gets at finding what you need before you have to describe it in detail.