只答文档内问题的 RAG 机器人实测:隐藏测试集拿下 9/10
ZtasnimS75 · reddit · 2026-10-22
一位开发者构建了基于 8 页 FastAPI 教程的 RAG 助手,规则是只从检索文档回答并引用来源文件,否则回复 NOTINDOCS。技术栈:ChromaDB + all-MiniLM-L6-v2 嵌入(800 字符分块、100 重叠)+ Gemini flash-lite + Streamlit(免费云部署)。
关键发现:
- 首轮开发集 10/14,失败全是误判「文档中没有」;测量向量距离后发现文档能答的问题距离 1.36,反而大于文档外问题的 1.12——单纯距离阈值无法区分。将阈值放宽到 1.5 并让 LLM prompt 负责拒绝后,开发集 14/14(但已在开发集上调参,数字偏乐观)。
- 冻结管线后隐藏集 9/10:唯一失误是文档其实能答的问题,top chunk 来自相邻页面,严格 prompt 拒绝了回答;作者未回头修补以保持数字诚实。
- 部署坑:PowerShell 下 pip freeze 生成 UTF-16 编码的 requirements 文件;向量索引不入 git、首次启动时构建;ChromaDB 首次云端启动报错(重启解决,根因未明)。
作者坦承测试题由 AI 起草、25 题中仅 9 题人工核对答案,并就失误案例的改进方向(BM25 混合检索、重排序、加大重叠)和「不在文档中」阈值设定征求意见。附演示、代码与完整复盘链接。
「编程与Agent」频道最新
- 针对 LiteLLM 供应链事故,作者发布 6 套 Agent 网络防御工具包 — alvelda · 2026-10-23
- AI 每日实验规划 agent:一个 prompt 帮科学家省去跑腿确认试剂库存 — nlarusstone · 2026-10-23
- 两台 £300 骁龙迷你 PC 无 GPU 跑 Qwen3.8 Flash Next,实测 46 tok/s — WorldlyAd7946 · 2026-10-22
- Chrome 工程师发问:agent 让安全响应更好,还是 10 倍速部署漏洞? — fhinkel · 2026-10-22
- Loom 推出 record for agent:用语音和视觉给 agent 喂上下文 — davidhoang · 2026-10-22
- Hugging Face 将 OpenEnv 捐给 AAIF 与 Linux Foundation 中立治理 — ben_burtenshaw · 2026-10-22