![]()
你有没有经历过这种崩溃时刻:翻遍公司共享盘,找到了一份项目立项邮件,兴冲冲地觉得终于有线索了,结果打开一看,里面提到"具体需求见附件",附件却压根没在这封邮件里。你又去搜项目编号,跳出来三十份文档,其中哪一份是最新版本,哪一份是过时草稿,全凭运气。
现在把这个场景交给AI智能体,情况并没有变好。
这就是这篇论文要解决的问题。研究者们发现,当下最火的"智能体搜索"技术,虽然让AI能够像人一样在文件堆里反复翻找,但AI面对的仍然是一堆互相不知道彼此存在的孤立文件。每次遇到新问题,它都要从零开始摸索这些文件之间的关系,摸索完了,下一个问题来了,之前的功夫全部作废。
**这篇论文的答案是:不要让AI每次都重新摸索文件关系,而是提前把这些关系画成一张地图,让AI直接按图索骥。**
这篇来自KAIST和微软研究团队的论文,给这套系统起名叫CORPUSMAP,中文可以理解成"语料库地图"。
智能体搜索的老大难问题
先说清楚背景。传统的检索增强生成技术(也就是常说的RAG)是怎么工作的呢?
RAG(检索增强生成):先根据用户的问题从文档库里找出最相关的几篇文档,再把这些文档喂给大语言模型去生成答案,这是过去几年问答系统的标准做法。
RAG的问题在于,它只搜一次,搜出来的那几篇文档就是全部家当,如果答案恰好需要用到第六篇、第七篇没被搜到的文档,模型就只能瞎编或者说不知道。
为了解决这个"一锤子买卖"的毛病,业界发展出了智能体搜索。
智能体搜索:让AI像人类研究员一样,可以反复搜索、阅读、判断,根据已经找到的信息决定下一步搜什么,直到收集够证据再回答,而不是只搜一轮就结束。
这个进步听起来很合理,AI终于可以"多想几步"了。但论文作者一针见血地指出,问题的根子不在于搜索能不能反复进行,而在于**这个语料库本身长什么样**。
如果语料库只是一堆互相不知道彼此存在的独立文件,AI访问全部文件的权限再大,也解决不了一个根本问题:一份文档本身不会告诉你它和另一份文档有什么关系。
打个比方,这就像你搬进一个新小区,物业给了你整个小区所有楼栋的钥匙,理论上你可以进任何一户。但如果没有门牌号和楼层指示,你每次想找隔壁老王家,还是得一栋一栋挨个敲门问。钥匙给得再多,找人的效率也高不到哪去。如果不解决"标注清楚谁跟谁有关系"这个问题,单纯扩大访问权限根本没用,AI只会在文件堆里做更多次徒劳的翻找,同时消耗更多的计算token。
论文里举了一个很实际的例子:判断一个项目能不能上线,可能需要项目跟踪表里的最新状态、邮件里的审批记录、运营文档里的需求条款,还有会议纪要里的最终决定。每一份文档都只掌握一部分真相,而且这些文档之间的关联,往往根本没有被写在任何一份文档里。更麻烦的是,在真实的企业环境中,这些关键文档往往淹没在几十万份其他文件当中,分散在问题追踪系统、共享云盘、聊天记录等各种不同的应用里。
那怎么办?研究者们观察到一个规律:**几乎所有企业文档,都是围绕着一些反复出现的"实体"在写的**,比如某个人、某个项目、某个产品、某次事故。
这些实体天然就是跨文档的连接点。一封邮件提到"Project Atlas",一份状态报告也提到"Project Atlas",一份法务合同又提到"Project Atlas",这三份文档表面上分散在工程、运营、法务三个不同的文件夹里,但它们其实是被同一个实体串起来的。而且关键的是,这种"谁提到了谁"的关系,是从文档本身就能识别出来的,跟具体问题是什么完全无关。这意味着,这份关系图可以提前离线画好,不用每次问问题都现场摸索。
CORPUSMAP:给每个实体建一张身份证式的档案页
CORPUSMAP的核心设计,是给语料库里反复出现的每一个实体,都造一张"实体页"。
实体页:为语料库中某个反复出现的实体(比如一个项目、一个人、一次事故)生成的汇总档案,里面包含这个实体的简要介绍、来自不同文档的关键事实(并标注每条事实出自哪份文档)、这个实体的各种别名或叫法,以及指向所有提到过它的原始文档的链接。
这个设计的巧妙之处在于,它没有替代原始文档,而是在原始文档之上加了一层"导航层"。AI依然可以读到原文件的完整内容,但多了一条捷径:只要它读到某份文档提到了某个实体,就可以直接跳到那个实体的档案页,从那里一次性看到所有相关文档的线索,而不用再重新搜索一遍。
论文里给了一个很具体的例子。假设有人问"Atlas迁移项目为什么延期了",这个答案分散在两份文档里:一封提到"Atlas项目延期到Q4"的邮件,还有一份记录了"项目负责人J. Chen被基础设施审查卡住了"的站会纪要,这两份文档分别归档在工程部门和运营部门的不同文件夹下,表面上毫无关系。
有了CORPUSMAP之后,AI的路径是这样走的:先打开"Project Atlas"这个实体页,看到它链接到那封延期邮件;读完邮件知道了负责人是J. Chen;接着打开"J. Chen"这个人的实体页,发现这个页面又链接到了那份站会纪要;最后读完纪要,拼出完整答案:项目延期是因为负责人被基础设施审查卡住了。
这就像图书馆里的索引卡片系统。如果一个图书馆只把书按照进馆时间码放在书架上,你想找一本关于"拿破仑"的书,得从头翻到尾。但如果图书馆专门做了一张"拿破仑"的主题卡片,上面写着这个主题相关的所有书籍编号和位置,你只需要先找到这张卡片,就能一次性拿到全部线索。如果没有这张主题卡片,每次有人来查拿破仑相关资料,图书管理员都得重新翻一遍全部书架,这种重复劳动才是真正的浪费。
那么,这些实体页是怎么建出来的?论文给出了一套四阶段的离线构建流程。
第一阶段叫"编目",因为不同语料库里值得关注的实体类型是不一样的,有的语料库关心的是"项目"和"人",有的关心的是"产品"和"事故",这些类型没法提前写死。研究者让大语言模型从语料库里抽样一批文档,提出候选类型目录,再把多份候选目录合并、核验、修订,最终固定成一份类型目录。
第二阶段是"抽取",根据类型目录去识别每份文档里出现的具体实体提及,比如目录里有"项目"这个类型,那么"Project Atlas"就是文档里具体的一个实例。
第三阶段是"消解",这是整个流程里最关键的一步。因为同一个实体在不同文档里的叫法可能完全不同,比如同一个项目可能被叫做"Atlas"、"Project Atlas"或者干脆用内部代号。这个阶段的任务,是把散落在各个文档里、指代同一个实体的不同提法,全部识别出来并归并到一起,归并到一个共享的登记表里。
第四阶段叫"渲染",也就是把归并完成、至少被两份不同文档提到过的实体(只被一份文档提到的实体没有跨文档连接的价值,就不保留了),渲染成前面说的那种实体页。
这套构建流程可以完全用大语言模型来做,也可以换成不需要调用LLM的开源确定性工具,比如论文里测试过的GLinker模型,效果同样不错,成本还更低。
实测效果:省钱还更准
光说设计思路总归有点空对空,得看数据。
论文团队在三个benchmark上做了系统性测试,分别是EnterpriseRAG-Bench(企业内部知识问答)、WixQA(企业级检索增强生成基准)、和HERB(异构企业数据深度搜索基准)。测试对象是需要跨越多份文档才能回答的复杂问题,用了包括GPT-5.5、GPT-5.6系列在内的7种不同模型。
结果非常直接:CORPUSMAP在所有三个数据集、所有测试模型上都拿到了最佳的答案质量和检索质量得分,而且平均下来消耗的token反而更少。
具体数字上,相比于直接在原始语料库里裸搜的方法(论文里称为RAW CORPUS),CORPUSMAP把整体质量分数提升了6.4到11.7个百分点,同时输入token消耗减少了34%到57%。这意味着什么?意味着不仅答得更准更全,成本反而更低了,这在AI应用里几乎是鱼和熊掌兼得的罕见情况。
论文还做了一个特别值得说的统计学显著性检验:对每个基线方法都做了配对bootstrap检验,所有对比结果的p值都小于0.0001,置信区间完全在零以上。换句话说,这不是运气好碰上的一次性优势,是稳定、可重复的提升。
有意思的是,研究者还试了四种"其他方式组织语料库"的对照组,比如给每份文档单独生成摘要页、按文件夹分组生成汇总页、让AI自由地写一个类似维基百科的互链页面系统、还有把语料库整理成主题层级树。结果是,这四种方法都没能稳定地超过裸搜方案,有的甚至比裸搜还差。这说明一件很重要的事:**不是随便给语料库加一层组织结构就管用,关键要看你选的组织单位对不对。**
论文用一个具体案例展示了这种差异。有一个问题问的是,某个清单规范v1版本里,签名信息是怎么表示的。答案分散在两份文档里,一份是早期草稿,一份是修订后的v1正式规范,这两份文档存放在不同的系统里。用主题树结构组织的对照方法,虽然把这两份文档归到了同一个聚类下,但AI在探索时没有点开那个聚类,结果转了半天最后得出结论说"找不到相关文档"。而用CORPUSMAP的方法,AI从一个工作项的实体页出发,找到了草稿,读完草稿后用文中的关键词搜索实体页,找到了另一个叫"Serving Runtime"的实体页,这个页面链接到了v1正式规范,最终顺利读出正确答案。这个案例很好地说明了,**把文档通过它们共享的实体连接起来,会形成多条通往同一份证据的路径,而树状结构往往只把一份文档归到单一分支之下。**
构建成本会不会太贵?
这是个很实际的顾虑。既然CORPUSMAP需要提前用大语言模型跑一遍编目、抽取、消解、渲染这四道工序,那这笔一次性投入到底值不值?
论文算了一笔"均摊账":把构建这张地图的成本,除以这张地图未来会服务多少次查询,加到每次查询的单价上。结果显示,虽然一开始CORPUSMAP的均摊成本确实比裸搜高,但随着查询次数增加,这个均摊成本会逐渐下降,最终会低于裸搜方案。论文给出的具体数字是,对于GPT-5.5这种较贵的模型,大约9000次查询之后就能收回成本;对于GPT-5.6 Luna这种便宜模型,大约26300次查询后能打平。考虑到一个企业内部知识库可能被员工反复查询成千上万次,这笔投入回本速度其实相当快。
这就好比公司花钱请人整理一遍档案柜,做好分类标签。短期看是额外支出,但只要这个档案柜以后天天被人查阅,这笔整理费用很快就会被节省下来的翻找时间摊薄掉。如果不做这个整理,每一次查阅都要付出同样的翻找成本,成本永远不会随着使用次数摊薄。
更进一步,研究者还测试了"用便宜模型建图、让贵模型来用"这种搭配方式。结果发现,即便用成本只有旗舰模型几十分之一的便宜模型来构建地图,这张地图依然能让所有测试过的更贵模型受益,甚至跨越不同厂商的模型家族也照样管用。这意味着企业可以用一次相对便宜的投入,把这张地图建好,然后长期给不同的、甚至未来升级的AI模型复用。
语料库会变,地图能跟上吗?
现实中的企业文档库不是一成不变的,每天都有新文件产生。如果每次新增文档都要把整张地图推倒重来,那这套系统的实用性就要大打折扣。
论文专门测试了增量更新的可行性。他们把EnterpriseRAG-Bench的语料库按照文档时间戳排序,模拟文档逐步到来的过程,每次只重新渲染那些"链接文档发生了变化"的实体页,而不是把整张地图推倒重建。
结果显示,每一次增量更新相比于完全重建,能节省相当大比例的构建token(论文图表显示第一次更新节省34%,后续更新节省到69%到71%),同时整体质量随着每次更新持续提升,最终状态的表现和完全重建几乎一样好。更值得注意的是,那些因为这次更新才被纳入地图的问题,回答的正确率有明显提升(提升幅度从30.4到40个百分点不等),即便这些问题涉及的文档在裸搜方式下本来就是可以搜到的。这说明把新文档正式编织进这张关系地图里,带来的价值不仅仅是"文档能被访问到"这么简单,而是真正让AI能更高效地找到正确的组合路径。
换个模型家族、换个规模,结论还成立吗
论文的稳健性测试做得相当扎实。除了GPT系列,研究者还测试了DeepSeek-V4-Pro和MAI-Thinking-1这两个不同厂商的模型,CORPUSMAP依然拿到了最好的整体质量分数,说明这套方法的收益不是某个模型家族的特例。
他们还把语料库从最初的2819份文档,扩展到1万份、2万份(加入大量干扰文档,同时保留所有关键正确答案文档),测试CORPUSMAP在语料库规模变大时是否依然保持优势。结果是,在每一个规模档位上,CORPUSMAP都稳定超过裸搜方案,而且消耗的token反而更少,优势没有随着规模扩大而消失。
论文甚至测试了开源模型Qwen3.8-27B搭配GLinker(非LLM的确定性抽取消解工具)构建的地图,结果同样在检索质量、答案质量、token消耗三方面全面优于裸搜,证明这套方案的价值不局限于付费的闭源模型。
论文还专门和图检索类的方法做了对比,包括BM25、稠密检索、HippoRAG和GraphRAG。这些方法有个共同特点:AI直接从一次性检索到的固定内容里回答,不能再访问语料库其他部分。结果CORPUSMAP全面超过了这几种方法,包括同样基于图结构的HippoRAG和GraphRAG。这说明一个更深层的道理:图结构如果只是用来辅助"一次性检索"这一步,而没有把图本身暴露给最终生成答案的模型,那模型依然会受限于检索返回的那一小撮内容,检索没覆盖到的关键文档,模型是永远够不着的。而CORPUSMAP把这张图直接开放给了执行任务的智能体,让它能持续沿着图往前走,这是两者本质的差别。
写在后面
读完这篇论文,最触动我的其实不是CORPUSMAP这个方案本身有多精巧,而是它揭示的一个很朴素但容易被忽视的道理:给AI更多的访问权限,不等于给了AI更好的判断力。
这几年AI圈子的思路一直在往"给更大的上下文窗口、给更强的检索工具、给更自由的搜索权限"这个方向使劲,好像只要AI能看到的东西够多,它就能自己想明白该怎么用。但这篇论文用实打实的数据告诉我们,信息之间的关系,才是那个被反复浪费掉的隐藏成本。每一次AI从零摸索文档关系,都是在做一件前人已经做过、但没有留下痕迹的重复劳动。
另一个让我意外的细节是,那些看起来更聪明的组织方式,比如让AI自由生成维基百科式的互链页面,反而不如老老实实按实体归档来得稳。这提示一个反直觉的经验:**给AI更大的自由度,未必比给它一个规整、可预测的结构更有用。**自由发挥的维基页面依赖模型自己判断"什么值得单独立一页、内容该怎么合并",这种判断质量会随着语料库变大而退化,而实体页这种结构化的、有清晰归并规则的设计,反而提供了更稳定的锚点。
论文里还有一个细节我觉得值得单独拿出来说:研究者专门测试了给实体和实体之间加直接连线(类似知识图谱里的关系边)会不会进一步提升效果。结果发现几乎没用,因为AI本来就可以通过搜索功能在两个共享同一份文档的实体页之间穿梭,这条"捷径"其实早就存在了,加不加那条线,AI能走到的地方是一样的。这说明有时候看起来很自然的补充设计,实际上是重复建设。
这套思路能不能用到企业知识库以外的地方,比如法律案卷、医疗病历、科研文献库?我很好奇答案。这些领域同样存在"事实散落在多份文档里,靠人工反复摸索关系"的痛点,而实体恰好也是这些领域里天然存在的锚点,一个案件里的当事人、一份病历里的患者和药物、一篇论文里反复被引用的方法名。这张地图的画法,或许远不止企业办公场景这一种用法。
Q&A
Q1:CORPUSMAP是什么?
A:CORPUSMAP是由KAIST和微软研究团队提出的一种语料库导航层,通过识别文档中反复出现的实体(如人物、项目),把提到同一实体的分散文档连接起来,生成"实体页"供AI智能体离线复用,从而在回答跨文档问题时更快更准地找到证据。
Q2:CORPUSMAP相比直接让AI搜索原始文件库有什么优势?
A:实验显示CORPUSMAP能把整体答案质量提升6.4到11.7个百分点,同时输入token消耗减少34%到57%,因为文档之间的关系提前离线构建好并可跨查询复用,AI不用每次都重新摸索这些关系。
Q3:构建CORPUSMAP这张地图成本高吗?
A:存在一次性构建成本,但会随查询次数摊薄,通常几千到几万次查询后就能低于裸搜方案的总成本;而且用便宜模型构建的地图依然能被更贵的模型复用,也支持不用大语言模型的开源工具低成本构建。
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.