个人知识库要不要上向量数据库?我做了一次企业级 RAG 调研,顺手把 AI 研报产线改了三刀
一条"零命中"的搜索,把我的知识库问题摊在了桌面上
我有一个跑了几个月的本地知识库:SQLite 全文检索,1724 条目,954 万字符。日常工作流里,军师(我的 AI 搭档)做计划、派任务、写稿之前都要先查它。
直到我让它查"向量库 知识库",返回:无命中。再查"ima"(我前一天刚把本地文章推送到腾讯 ima 知识库),命中的全是我 2013-2022 年间剪藏的 CSDN 旧文——出版物许可证截图、pip 版本升级提示,真正相关的运维记录被淹没在垃圾里。
体量不小,检索是瞎的,推送出去的库里还发现了污染数据。我的第一反应和很多人一样:是不是该上向量数据库了?
但这次我忍住了直接动手的冲动。AI 领域三天一个说法,2023 年的结论不能拿来指导 2026 年的决策。我让军师走研报产线,先把这个问题的"当朝答案"调研清楚。
35 分钟的调研:50 多个 2025-2026 年来源,结论和直觉相反
军师按它的研报产线执行:两轮四路并行检索(架构全景、数据治理、多智能体调用、补漏反方),全部优先 2025-2026 年一手来源,每条结论带 URL,本地 kb 现状一手实测。上午 11:22 开题,12 点左右交付:一份近 7 万字符的 HTML 报告、直出版 Markdown、一份待我拍板的处置卡。
几个对我决策起决定作用的发现:
- 企业 AI 项目失败原因的榜首是数据质量,不是检索技术。PoC 到生产的转化率只有约 12%;检索到过时或不充分上下文时,幻觉率从 10.2% 跳到 66.1%(Google Research 数据,二手转引)。垃圾入库之后,换什么检索引擎都是白搭。
- 混合检索(关键词 BM25 + 向量 + 重排)已是 2025-2026 企业标配,企业采用率一年内从 10.3% 升到 33.3%。在一个 2.3 万查询的基准测试里,BM25 的 Recall@5(0.644)甚至击败了 OpenAI 的 text-embedding-3-large(0.587)——关键词检索没死。
- 我这个体量(数万 chunk 级)不需要独立向量数据库服务。sqlite-vec + FTS5 + RRF 融合检索,同栈升级,公开实践约 200 行 Python,实测增益 5-10 个点起步。GraphRAG 索引成本是标准 RAG 的 10-40 倍,小体量语料不值得碰。
- 多智能体共享知识库的主流做法是包一层本地 MCP server(单进程持有数据库,各项目的 agent 走协议按需检索),而不是多个项目直接读写同一个 db 文件。
- 规则臃肿有硬数据:500 条同时指令下,2025 年最强模型的遵守率只有约 68%(IFScale 基准);"禁止做 X"这类否定式指令是大模型的系统性弱项。我那越攒越厚的"禁词清单",不是护城河,是镣铐。
处置卡给出的动作序列很清晰:先补入库闸门(清洗、去重、来源分级、时效 TTL),推送端加白名单,然后才是检索升级——而且升级前要先建 50 条真实提问的金标集测出 Recall@5 基线,一切增益以本地实测为准,外部 benchmark 的排序不能直接迁移。
如果你也在纠结"知识库要不要上向量库",我的调研结论是:先问入库有没有闸门,再问检索要不要混合,最后才轮到换数据库。顺序错了,钱花在最没用的地方。
真正值钱的不是报告,是报告交付之后的三次追问
按常规剧本,故事到这里就结束了:调研完成,结论采纳,收工。但这份报告对我另有用途——它是检验我和军师协作水平的一块试金石。报告交付后,我没有去发布它,而是连续追了三问。每一问,都把一次性的产出变成了流程资产。
第一问:"组装搞了 16 分钟,我觉得不应该。"
HTML 版和 Markdown 版内容同源,应该就差几个图表,凭什么 16 分钟?军师没有辩解,直接用文件时间戳还原了组装过程:验证脚本全程只占 17 秒,10.5 分钟在逐字生成 6.9 万字符的 HTML,3.7 分钟又把同样内容以 3.3 万字符重写了一遍 Markdown——同源双写,时间黑洞在这里,不在验证。
我说了一个字:"改。"
当天下午,研报产线的组装环节被重构:新增一个 413 行的零依赖渲染脚本,从此 AI 只写一份带指令标记的正文源和一份图表数据 JSON,HTML 和 Markdown 两个产物全部由脚本确定性生成。用当天这篇报告复刻试产,验收 11 项全过,双源内容偏差 2.81%。"两个版本一个字不丢"从此不靠纪律自查,靠结构保证。组装预算从 12-15 分钟压到 10 分钟以内。
第二问:"这两张裹脚布的截图不要了。"
验收脚本每次会生成两张全页长截图(1440×17195 像素)供"目检"。我的账算得很直接:文本内容、数据都有闸口机器验证,排版是模板定死的,把一张这种长图读进上下文烧掉的 token,比它证明的东西值钱得多——它证明的每一件事 verify.json 里都有硬证据,要它干嘛?
第三问,是我最不满意的一次:"你为什么写这种裹脚布式的配置?"
军师处理截图问题时,第一版方案是"默认不生成截图,保留 --shots 开关",还在配置文件里写了四行注释解释什么情况下截图会回来。我的原话是:"我让你取消这个截图去识图的功能,你叭叭叭写这么多东西,直接流程里就没有这个截图流程了,跟截图相关的东西全部删掉不就好了?"
这就是上午那份调研报告里"规则膨胀"理论的现场重演,只不过膨胀的是我自家产线:裁定是"取消",执行成了"默认关闭+保留后门+配四行注释"。一条死规则占四行正文,下次读到的人还得猜它什么时候会活过来。
最终处理:截图功能的代码、开关、注释全部物理删除,全库 grep 自证零残留。规矩立下来:取消=删除,历史进 git 提交信息,正文不留尸体。
知识库是 AI 理解你的前提,这不是修辞
这次调研对我自己战略层面的启发,比技术选型大。
大模型没有记忆。每次会话开始,它对"你是谁、你要什么、你踩过什么坑"的全部认知,就是你此刻喂给它的上下文。所以"让 AI 足够理解你、记住你"这件事,本质上不是模型能力问题,是你把自己的判断、翻车记录、决策依据结构化到了什么程度。
我的实践是分四层:章程(L0)写最高纪律,岗位文件(L1)写员工职责,文档(L2)写细则,知识库(L3)装可检索的战果与翻车档案,归档(L4)封存历史。军师每次做计划、派单、写稿前先查知识库再动手——这就是它能"从我的角度"做分析的原因:它查得到我过去八年记录的行为基线、每一次拍板的来龙去脉。
但这套体系成立的前提是库里的东西可信。1724 条目里混着十几年前的剪藏垃圾、未经实证的结论,AI 查到的"你的过去"就是一个被污染的过去。企业落地是同一个道理:FDE(前沿部署工程师)模式给企业建知识本体,第一步从来不是选数据库,而是搞清楚哪些数据配进库。
**个人或企业的战略调研,必须拿事实说话;而事实的前提是,你的事实源本身是干净的。**这就是为什么我把知识库治理排在检索升级前面。
可以抄走的东西
- 知识库入库四道闸:格式清洗(去网页模板噪声)→ SHA-256 精确去重 → MinHash/嵌入近重复检测(阈值 0.7/0.92)→ 来源分级 + 时效 TTL。未实证内容可以入库,但必须打"未核实"标签并在检索时降权。
- 检索质量最便宜自检法:攒 50 条你真实会问的问题,人工标注答案在哪篇文档,测 Recall@5。这是唯一可信的基线数字,外部榜单不能替你的语料说话。
- 推送第三方知识库视同发布:只推"已核实 + 未过 TTL"的条目,污染不可逆。
- AI 产线效率诊断法:别问"为什么这么慢",让 AI 用文件时间戳还原时间线。慢在哪里,数据会直接说出来(我的案例:验证 17 秒,双写 14 分钟)。
- 配置纪律两条:同源双产物必须由脚本从单一源生成;"取消=删除",禁留"默认关闭"式后门。
- 协作手法:对 AI 的质疑要落到可验证的点("16 分钟不应该"→时间戳还原;"截图没用"→算 token 账),而不是情绪。每一次有效追问,都应该以一处流程改造收尾,否则只是发泄。
写在最后
这三轮下来,我最在意的不是那份报告本身——虽然它直接决定了我知识库重构的方向。我更在意的是另一件事:一个人用 AI 的水平,不体现在 AI 给了他什么,而体现在他能把 AI 的产出追问、改造成什么。
报告是 AI 写的,但"16 分钟不应该"的判断、"裹脚布配置"的定性、"取消=删除"的规矩,是人的。AI 负责把一切变成可验证的事实和可执行的改造,我负责判断什么值得做、什么必须砍。这个分工,就是我这几年 AI 实战最核心的一笔资产。
素材点
- 研报正文与处置卡:
notes/学习/研报/20260926_企业级知识库与RAG/(report.html / 直出版.md / 处置卡.md / 素材笔记.md,50+ 来源全带 URL) - 产线改造提交:.agents 仓库
e660ed0(单源渲染)/e08c80d/290b092(截图流程删除) - 渲染器与试产样例:yanbao 技能 assets/ 下 render_report.js、skeleton-web.html、source-example/
