网上介绍检索优化的文章很多,分块策略、查询改写、RAG优化……我看不懂,毕竟不是这个专业的
但我确实每天都要大量的检索信息和数据,我绕不开,也就只能摸索了……
—— · ——
问题一:让AI查数据,但我不知道它查的数据准不准
场景:让ima.copilotI帮查"中国FD的患病率"。AI给了一个数字。你问"这个数据哪来的"——它说来源是某个网页。你敢直接用吗?大部分人不敢。
这是用AI做检索的第一个障碍:输出质量取决于数据源,但你控制不了源。
AI查数据有两种方式。大部分人默认在用第一种,但第二种更好。
打个比方:方式一像是让助理去图书馆翻书,找到相关内容抄给你。方式二像是直接去问图书馆的电脑系统,系统直接把书目卡片打印给你。没有API之前,我一直用方式一——结果每次拿到数据都得回去翻出处。用上API之后,返回的每一行数据都带着DOI,出处不用再查。
具体怎么实现? 其实只是告诉AI几个网站和接口。比如:中文数据告诉AI去秘塔(metaso.cn)的API接口查——它是一个专门做中文学术搜索的工具(我看重他家有自己的数文献库和资料库,能找到原始资料。我一般避免使用那种仅靠抓取网页当证据的AI做检索,网页是真真假假啊)。英文文献告诉AI去PubMed的E-utilities接口查——这是美国国家医学图书馆的公开接口。不需要了解技术细节,就像我告诉ima.copilot"我想用API接入PubMed查文献,你试试能不能行?"——AI自己会跑通。
确实不止pubmed还有好些资料库都行
—— · ——
问题二:中英文数据要分开查,但AI老是混在一起
场景:做市场分析,既要查中国人群的流调数据,又要查英文文献的临床证据。让AI一次搜完,它给你回了一堆混杂结果分不清哪条靠谱。
原因不是AI笨——是中文数据和英文数据的结构完全不同。混在一个检索通道里搜,AI不知道应该优先用哪个标准。
解决方法:分开搜,再合并。
两套并行跑,各搜各的。结果合在一起去重。中文走秘塔API,一次请求返回的就是中文结构化的数据。英文走PubMed E-utilities接口,返回的是英文结构化的数据。不混在一起,AI就不需要在中英文之间来回切换策略。
—— · ——
问题三:搜完了,但我不知道这次搜得好不好
场景:AI给了你一批检索结果。看起来挺全。但该有的数据点是不是都有了?有没有漏了但很重要的?
这是检索里最隐蔽的问题——我没有标准来判断检索质量?我也没学过
后来看到有文献,就把文献丢给AI,他学习后整了个解决方法:每次检索后自动评分。 五维度评分——相关性、时效性、信源质量、覆盖度、冗余度。低于阈值自动触发修正。
举个具体例子。
假设你让AI查"益生菌治疗中国IBS患者的临床证据"。AI返回了8条结果。
对结果评分,看看结论:
综合低于阈值,触发AI进行修正:
1. 覆盖度修正:补搜中文"益生菌 肠易激综合征 中国 指南"——找到2024年中国专家共识,补上。
2. 时效性修正:缩小时间范围到2023-2026年,重新搜PubMed,找到2023年更新版Meta。
3. 冗余度修正:去重,保留数据更完整的那一篇。
修正前 vs 修正后:
修正前:综合4-6分(低于阈值)。修正后:综合8分+(通过),而且知道"覆盖度从4涨到8,是因为补了中文数据"。
—— · ——
问题四:规则全设好了,但别指望AI乖乖听话
场景:你定了检索流程(先查知识库、再联网、新资料入库),你也设了评分和修正。但有些会话里,你以为AI是按你要的流程做的,其实他没有。
这不是技术问题。是执行纪律的问题。发生的三种典型情况:
1. 技能会沉睡。 检索流程封装成技能,但AI在多数会话里根本没调用它。不是技能不好用——是AI不会自动把"市场分析"映射到"需要检索"。
2. 规则可以绕过。 搜索流程写在行为指南里——它是建议,不是门禁。AI可以不经过流程直接搜。
3. 发现问题只修了一部分。 22个技能长期没被调用,修了2个证明可行就停了——还有20个依然在睡。
核心设计:不是AI要记得做这些事,是文件存在那里,不做就无法推进。
—— · ——
有些事AI也做不到
局限
AI不能自动删文件(会发生新旧版本冲突,得用户手动清理)。
AI的模型天然设置是“偷懒”(这点没想到……把活儿干一半是他的本能,还不告诉你)
API不支持按时间排序,检测新文件用快照对比替代(非常弱智,非常困扰)。
他好像没有长期记忆,说话扭头就忘很正常(你以为对话的时候他什么都记得……)
虽然用API也可以下载文献,但实测速度很慢,还不如我手动下载,所以我一般都是要AI给我一份下载清单,有链接,有名称,有dio号码下载也足够了
本文涉及的技能和工具(自行开发设置)
• cross-domain-deep-retrieval(跨领域深度检索技能)—— 三层级联管道、秘塔API调用、PubMed E-utilities调用、KB搜索、PICO问题分解、文献导入流程
• keyword-evolution-engine(关键词演化引擎)—— 由检索技能自动触发,将新发现的关键词反馈到domain-keywords.md
• skill_sleep_audit.py(技能使用率审计脚本)—— 每次启动自动扫描所有技能,检测长期未调用的技能
• check_bounded_tasks.py(任务完整性检查脚本)—— 有数量边界的任务自动生成清单,全部完成才能结束
• search_strategy.py(搜索策略执行脚本)—— 实际执行三层管道的API调用和结果合并
本文引用的文献
• Yan S-Q, et al. Corrective Retrieval Augmented Generation. arXiv:2401.15884. — 五维检索评分的实现方法论来源
—— · ——
虽然调整过程琐碎,特别耗费时间精力
但跑顺后干活儿效率高
有种数字分身的感觉
而且随着时间和经验累积
有时候会想
明年的今天
他能成长成什么样子
5年,10年后呢……


夜雨聆风