01
真实目录检索
用户可以用中文描述品类、材质、尺寸和排除条件,系统从真实家具目录中返回候选商品。
Loading...
Commerce Search / Retrieval-Augmented Generation
面向真实家具商品目录的中文可解释检索系统,从 42,994 件商品中召回候选,并用可核验字段约束回答。
项目使用 Wayfair WANDS 的真实商品目录、480 条查询和 233,448 条人工相关性标注,持续比较 BM25、Vector、Hybrid 与 Reranker,而不是只判断回答是否看起来合理。
Furniture Catalog / WANDS
实木大号平台床,不需要弹簧床架
商品目录
42,994 件
人工标注
233,448 条
评测查询
480 条
默认策略
Hybrid RRF
Product Value
商品搜索不仅是关键词匹配。用户通常同时表达品类、属性、尺寸和排除条件,结果还需要回到商品字段核验。
01
用户可以用中文描述品类、材质、尺寸和排除条件,系统从真实家具目录中返回候选商品。
02
每条推荐都保留商品 ID、命中字段和来源排名,模型回答不能脱离当前商品证据。
03
固定数据版本、查询划分和指标口径后,每次增加检索组件都必须证明质量与延迟收益。
System Flow
中文查询先被结构化,再进入双路召回、融合排序和证据回答。生成模型不是检索失败时的替代品。
01
识别中文品类、属性、排除条件和数据禁区,规则未覆盖时才调用模型改写。
02
SQLite FTS5/BM25 与本地向量检索分别召回候选。
03
用 RRF 合并关键词与语义结果;Cross-encoder 只保留为实验策略。
04
模型只接收 Top-K 商品字段;生成失败、超时或额度耗尽时保留检索结果。
Evaluation
英文检索使用同一 WANDS 数据提交、同一 480 条查询和 Top-10 口径。
| 版本 | 策略 | nDCG@10 | ExactHit@10 | 本机 P95 | 决策 |
|---|---|---|---|---|---|
| v0.1 | BM25 | 0.666747 | 66.67% | 29.548ms | 基础基线 |
| v0.2 | Vector | 0.731349 | 67.92% | 28.511ms | 独立语义基线 |
| v0.3 | Hybrid | 0.747611 | 70.21% | 58.255ms | 当前默认 |
| 实验 | Reranker | 0.759225 | 70.63% | 1,416.331ms | 不设默认 |
30 条冻结中文需求覆盖家具品类、属性、否定条件和数据禁区。它是有限回归集,不与英文 nDCG 混用。
Top-1 类别正确率
86.67%
Top-3 类别命中率
96.67%
必需词覆盖
98.33%
规则改写 P95
0.102ms
延迟来自 Python 3.11 / macOS ARM64 的冻结本地运行,只用于同机策略比较。
Decisions
默认策略由质量、延迟和稳定性共同决定。
nDCG@10 由 BM25 的 0.666747 提升到 0.747611,本机 P95 保持在 58.255ms。
nDCG@10 进一步提高到 0.759225,但本机 P95 增至 1,416.331ms。
规则 Top-1 为 86.67%,高于全量 LLM Rewrite 的 76.67%,延迟也更低。
Evolution
每个版本只增加一个主要变量,并保留上一版作为可比较基线。
先跑通数据校验、FTS5/BM25、证据展示、失败降级和冻结评测。
为 42,994 件商品建立本地 Embedding 与 sqlite-vec 索引,并绑定模型和数据版本。
融合 BM25 与 Vector;Reranker 虽提升质量,但延迟超过交互预算。
规则优先处理中文品类、属性、否定和数据禁区,模型只在必要时介入。
完成仓库治理、访客模式与公网边界,并开放主、备用两个在线入口。
Engineering
公开页面保留与结果可信度直接相关的工程措施。内部实验日志和审查材料不进入公开作品。
数据提交、384/96 划分、Top-10 指标和未标注结果语义均被冻结,升级前后使用同一基线比较。
FTS 与向量索引绑定数据和模型元信息,构建完成后校验完整性再替换正式文件。
EvidencePack 只提供当前候选商品的白名单字段,引用必须回到商品接口核验。
LLM 未配置、超时、输出非法或额度耗尽时统一退化为 retrieval_only。
Scope
公开指标只描述当前数据、评测集和运行环境内已经验证的能力。
数据集不包含实时价格、库存、配送、促销和售后信息,系统不会对此作出承诺。
中文 30 条回归集验证的是有限品类和约束表达,不代表开放域中文检索准确率。
页面中的延迟来自本地 macOS ARM64 冻结快照,不是公网 SLA。
当前公网能力定位为个人项目演示,不是多租户商业系统或高可用集群。