KAIST 把文本、SQL、知识图谱、属性图全打通:一句话提问,跨四种知识源一起检索
一句话讲清楚KAIST 与 DeepAuto.ai 提出 OmniRetrieval 让一个自然语言问题自动找到该问的知识源、用每个源的母语自由文本 / SQL / SPARQL / Cypher 写出可执行查询再把跨源结果汇总成一份证据在覆盖 309 个知识库、 13 个数据集的基准上它全面超过只盯单一源的检索方案。现实里的一个问题答案往往散落在形状完全不同的地方。一个临床问题答案可能藏在某篇生物医学论文的一段文字里一个企业经营问题需要在多张规范化的关系表之间做 join 一个关于人物、地点、事件的事实型问题落到百科知识图谱里就是几条三元组而一个关于供应链或学术合作网络的问题则要在带标签的属性图上做多跳遍历。每一种情况答案原则上都能被检索到。但前提是你得先知道该查哪个库、该用哪种查询语言、该把查询丢给哪个执行引擎。检索真正的难点是怎么跨越不同知识源之间的结构异构性——在单个源里找到相关内容反而是整件事里最简单的一环。现有检索器各自为政今天的检索系统几乎都是一次只服务一种源的设计。文档检索器在非结构化语料上按相似度给段落排序 text-to-SQL 系统对准单个关系数据库、只吐一种 SQL 方言 SPARQL 或 Cypher 生成器同样绑死在单一图后端和查询语言上——RDF 用 SPARQL 属性图用 Cypher 。结果就是哪怕现在的大模型已经能在多种来源的证据之间做推理给它喂数据的检索层却够不着所有源更广阔的知识版图始终在视野之外。左侧四类知识源各有不同的结构特性和查询语言传统做法是四个互不相通的检索器。右侧 OmniRetrieval 用一层统一访问层通过选源、母语查询生成、跨源证据筛选三步把它们接到一起。一个看起来很自然的解法是干脆把这些孤岛合并掉把每个知识源都投影到一个共享表示里——通常是一个稠密向量空间或者一种统一的线性化文本格式。但这种做法用一个代价换回了统一接口区分每个源的结构特性被压平抹掉了剩下的是一个有损投影带来两个后果。第一统一后的 embedding 会按源的类型聚类而不是按语义内容聚类。这是一种模态鸿沟会让检索偏向那些在形式上像 query 的源而不是真正能回答问题的源。第二这种做法只支持相似度匹配每个源原生的查询操作 join 、遍历、属性路径全都丢了。所以作者干脆掉头走了另一条路别再逼所有源长成一个样让它们各保留各的脾气只在上面盖一层会调度的统一访问层。OmniRetrieval 怎么工作三步走OmniRetrieval 的核心是把统一检索这件事拆成三个可独立操作的步骤选哪些源、给每个源写母语查询、把跨源结果汇总筛选。先把问题形式化一下。给定用户问题系统面对的是一池子独立维护的知识源。每个源都自带三样东西。一是母语查询语言关系库说 SQL RDF 图说 SPARQL 属性图说 Cypher 非结构化语料就用自由文本。二是执行引擎喂它一条母语查询它还你一组结果。三是一份公开的结构上下文可能是关系 schema 、本体 ontology 也可能是语料的主题描述。检索任务就是为这个问题从一个或多个源里找出相关证据。这个拆法有个很实际的好处因为每个源都通过自己的母语被调用它暴露的结构算子 join 、遍历、属性路径会被完整保留而不是被共享空间里的相似度近似掉。更妙的是加一个新源只是注册一下的事——没有共享编码器要重训没有 embedding 空间要重画。第一步长上下文选源选源这一步的麻烦在于注册的源池可能很大、而且是开放式的每个源的结构描述符形态又千差万别 schema 列的是表和列本体声明的是类和谓词语料描述符刻画的是文档的主题和风格。一个直白的做法是把每个描述符和 query 都嵌进共享向量空间、按相似度排序。但这受限严重描述符形态不统一单个编码器没法无损表示它们而且某个源能不能回答这个问题常常取决于描述符里的具体内容关系 schema 里的某个表名、属性图里的某种关系类型这是一个相似度分数捕捉不到的。OmniRetrieval 的做法是借力长上下文大模型把全部源的结构描述符和问题一起读进去直接判断该调用哪些源。形式上长上下文 LLM 接收问题和所有注册源的结构描述符返回一个按相关性排序、至多 k 个源的候选子集。这里有个关键设计选源步骤返回的是一短列表候选比如 3 个而不是一个确定答案。这样既能照顾本来就需要多个源的问题也能兜住目标源本身就模糊的问题——把最终裁决推迟到后面的证据筛选阶段让它基于真正检索回来的证据来定。第二步给每个源写母语查询选出候选源后要为每个源在它的母语里生成一条可执行查询。难点是这些源各说各的话而且每种语言都被它所查数据的结构塑造过 SQL 在规范化关系表上表达 join 和集合运算 SPARQL 在 RDF 图上匹配三元组模式 Cypher 在属性图的带标签节点和关系上做路径遍历自由文本则驱动语料上的相似度检索。除了语言不同一条可执行查询还得引用该源实际暴露的元素——具体的表名列名、本体里声明的谓词、属性图里的关系类型。OmniRetrieval 用同一个共享 LLM 配上每个源专属的 prompt 模板把问题翻译成对应母语的查询并以该源的结构上下文为条件。对 SQL 、 SPARQL 、 Cypher 模型直接吐出可执行的母语查询对非结构化语料检索器本来就吃自由文本问题本身就能当查询用也可以让 LLM 顺手把它优化一下提升召回。这一步也并不锁死在 LLM 上——任何能把问题 结构上下文映射成该源有效母语查询的方法都能塞进这个框架。第三步跨源证据筛选执行完每条母语查询后会得到一堆来自不同源的输出。这些输出在形式和体量上都高度异构 SQL 给的是行 RDF 给的是三元组属性图给的是路径语料给的是段落体量上从一大堆条目到单个值一个实体、一个聚合数都有里头通常只有一部分跟问题真正相关。证据筛选这一步就是从所有源的输出里挑出与问题相关的子集把不相关的过滤掉完成检索。具体做法是让 LLM 把每个执行结果用它的母语形态逐一文字化 SQL 的行、 RDF 的三元组、属性图的路径、语料的段落然后判断哪些跟问题相关。这里有个容易被质疑的点既然查询阶段那么强调母语怎么到筛选阶段又把结果文字化了作者的回应很干脆到这一步结构性的活儿已经被执行引擎用那些算子干完了返回的结果本来就能当文本来读文字化并不会抵消前面用母语的价值。基准有多大 309 个知识库为了真刀真枪地验证作者搭了一个相当大的基准从 13 个公开数据集里编出一池子309 个不同的知识库横跨四种原生后端。■文档检索用 BEIR 里七个不同领域的数据集——NFCorpus 医学、 SciFact 科学论断验证、 FiQA 金融问答、 MS MARCO 网页段落、 FEVER 维基事实验证、 Natural Questions 、 HotpotQA 多跳问答每个文档集合本身算一个知识库。■关系数据库用 Spider 206 个数据库和 BIRD 80 个真实应用数据库合计 286 个知识库每个都是一个 SQLite 库 SQL 直接在上面执行。■RDF 知识图谱用 SimpleQuestions 、 QALD-10 、 LC-QuAD 2.0 三个数据集知识库是 Wikidata——目前最大的可公开查询 RDF 图查询打到它的公开 SPARQL 端点上。■属性图用 Text2Cypher 覆盖 Neo4j 合集里 15 个图领域包括电影推荐、公司结构、社交网络、金融调查等生成的 Cypher 打到 Neo4j 端点执行。每个数据集采样 300 个问题评测。对比的基线分三组四个单后端基线不管问题是什么都死磕文档检索 / Text-to-SQL / Text-to-SPARQL / Text-to-Cypher 其中一种一个KB Routing基线读源目录后每个问题只路由到一个知识库以及一个Oracle上界直接用标注好的金标准源只剩查询生成和执行。骨干模型同时跨 GPT-5.4 、 Gemini-3.1 (Pro)、 Sonnet-4.6 、 Qwen-3.5 (27B)、 Gemma-4 (31B) 五个闭源走 API 、开源用 vLLM 本地部署。评测用三个指标选源准确率、检索准确率文档用 NDCG10 SQL/SPARQL/Cypher 用执行结果匹配 Execution Match 以及一个更宽松的 LLM-as-a-Judge 软评分。结果全面超过单源方案主结果一句话概括五个骨干上 OmniRetrieval 一致领先所有可比基线。四个单后端基线表现都很差因为四种查询类型里有三种压根超出它们能力范围。 KB Routing 解除了这个限制但它一锤定音路由到单个源一旦选错就没有退路。 OmniRetrieval 同时调用多个候选、再用跨源证据筛选汇总相对 KB Routing 拿到稳定增益。下面是五个骨干平均后的核心数字满分对照 Oracle 上界方法选源准确检索准确Judge单源最佳(SPARQL)24.8417.8327.99KB Routing61.6539.9857.99OmniRetrieval65.7144.3465.88Oracle(上界)10061.8574.55三个指标均按四种检索范式宏平均再跨五个骨干取平均。 OmniRetrieval 在每个指标上都明显高于 KB Routing 。这里有个特别有意思的现象从选源到 Judge OmniRetrieval 与 Oracle 上界的差距在一路收窄——从选源时的 34.27 分缩到检索时的 17.51 分再到 Judge 时的 8.67 分。这说明即便选源这一步漏掉了金标准源证据筛选这一步常常能从另一个等价的源里把语义上对的答案捞回来。这恰恰印证了框架的设计哲学选源阶段大胆探索把最终承诺推迟到证据筛选阶段。候选数 k 越多越好没那么简单选源会返回一个 k 个候选的短列表那 k 是不是越大越好作者用 Qwen-3.5 (27B) 扫了 k 取 1 、 3 、 5 、 10 并额外对比了一个 Oracle (Evidence Selection) 变体——它把 LLM 证据筛选换成在 top-k 候选里直接用金标准源。候选数 k 对选源和检索准确率的影响。 OmniRetrieval 随 k 单调上升但 Oracle 上升更快两者差距随 k 拉大。结果是 OmniRetrieval 确实随 k 单调上升但 oracle 上升得快得多差距随 k 越拉越大。根子在选源器本身它在多候选里的 1-of-k 准确率从 k3 时的 67.5% 掉到 k10 时的 62.8%。再加上每多一个候选就多一份线性成本作者的结论是——真正更值得发力的杠杆是证据筛选这一步而不是无脑加候选数。那证据筛选到底有多靠谱在候选里确实含金标准源的多候选问题上各骨干挑中金标准的准确率明显碾压随机基线 GPT-5.4 是 72.81%随机 38.31%高出 34.51 个百分点 Gemini-3.1 是 75.29%随机 43.99%。也就是说只要把对的源放进候选列表模型大概率能把它认出来。模型越大多候选优势越明显最后一个分析很有意思把 Qwen-3.5 从 2B 一路扫到 27B 对比 OmniRetrieval (Top 1 每问一个候选) 和 (Top 3 默认多候选)。骨干规模从 2B 到 27B 的影响。 Oracle (Gold Source) 用金标准源替代 LLM 选源作为上界对照。在 2B 时 Top 1 和 Top 3 几乎打平到 27B Top 3 才明显拉开。原因在于候选的多样性 2B 时选源会塌缩到单一范式候选其实都挤在同一种检索范式里超过 4B 之后它才能在不同范式和不同源之间给出真正不一样的候选。但不管模型多大到 Oracle (Gold Source) 这条天花板的差距始终存在而且在选源指标上最大。这把一个判断钉死了选源是整条流水线里最关键、也最该继续优化的一步。为什么不直接做统一表示文章还正面回应了一个绕不开的对照那些把异构源压进统一表示的方法共享 embedding 等为什么这里不直接比答案是在这个基准的规模上根本物理不可行——而这个规模本身还只是真实部署的一小片。举几个数字感受一下维基百科撑起的几个语料就有 700 万段落而 Wikidata 的三元组超过 150 亿条比典型稠密索引高好几个数量级属性图里路径检索的自然单位随跳数指数爆炸池子里某个图的三跳路径就已经达到数百亿关系库里一个库就握着超过 7000 万行而且按行编码还会把 SQL 本该表达的 join 和集合运算丢掉。把这些都塞进一个共享索引既存不下、也算不动。这反过来成了 OmniRetrieval保持每个源母语路线最硬的论据统一表示并非没人想做只是真到了这个规模它根本跑不起来。一点我的判断这篇工作最值得拿走的其实是它对统一二字的重新定义。过去几年 RAG 社区的主流直觉是想方设法把异构数据压成同一种东西——统一 embedding 、统一文本格式好让一个检索器通吃。 OmniRetrieval 把这个直觉整个翻了过来把统一从数据层挪到了访问层。底下每个源继续说自己的母语、保留自己的 join 和遍历能力上面架一层会调度的翻译官 路由器 汇总器。这套思路和当下 Agent 调用工具的范式高度同构——选源像选工具母语查询生成像填参数证据筛选像汇总工具返回。把数据库、知识图谱、文档库都当成可调用的执行引擎而不是待向量化的素材这个视角的迁移成本很低落地价值却不小企业里那些早已存在的 SQL 库、图数据库、文档系统不用推倒重建注册进来就能被一个自然语言入口统一调度。当然短板也写得很诚实选源仍是最大瓶颈离 Oracle 还有可观差距而且每多一个候选源就要多跑一遍查询生成和执行成本是线性叠加的。后续真正能打的方向大概率不在堆候选数量而在把选源这一步做得更准。学AI大模型的正确顺序千万不要搞错了2026年AI风口已来各行各业的AI渗透肉眼可见超多公司要么转型做AI相关产品要么高薪挖AI技术人才机遇直接摆在眼前有往AI方向发展或者本身有后端编程基础的朋友直接冲AI大模型应用开发转岗超合适就算暂时不打算转岗了解大模型、RAG、Prompt、Agent这些热门概念能上手做简单项目也绝对是求职加分王给大家整理了超全最新的AI大模型应用开发学习清单和资料手把手帮你快速入门学习路线:✅大模型基础认知—大模型核心原理、发展历程、主流模型GPT、文心一言等特点解析✅核心技术模块—RAG检索增强生成、Prompt工程实战、Agent智能体开发逻辑✅开发基础能力—Python进阶、API接口调用、大模型开发框架LangChain等实操✅应用场景开发—智能问答系统、企业知识库、AIGC内容生成工具、行业定制化大模型应用✅项目落地流程—需求拆解、技术选型、模型调优、测试上线、运维迭代✅面试求职冲刺—岗位JD解析、简历AI项目包装、高频面试题汇总、模拟面经以上6大模块看似清晰好上手实则每个部分都有扎实的核心内容需要吃透我把大模型的学习全流程已经整理好了抓住AI时代风口轻松解锁职业新可能希望大家都能把握机遇实现薪资/职业跃迁这份完整版的大模型 AI 学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】