语义检索是匹配相似的意思哪怕话术表达不一样、用词不一样只要核心含义相近就能匹配到相关内容这种通过向量检索来查找资料的方式也是目前 RAG 里最常用的一种典型代表就是 Milvus 向量检索。RAG 的 3 大检索方式向量、关键词、知识图谱它们是互补关系再配上 Rerank 重排模型就是工业级标准 RAG 完整架构。语义检索是匹配相似的意思哪怕话术表达不一样、用词不一样只要核心含义相近就能匹配到相关内容这种通过向量检索来查找资料的方式也是目前 RAG 里最常用的一种典型代表就是 Milvus 向量检索。关键词检索也是很必要的很多场景里有固定的品牌名、型号、专业术语、专有名词这种精准词条走语义检索反而容易跑偏匹配出一堆不相关内容反而更适合用关键词检索比如通过 ElasticSearch 倒排索引检索文档依靠 BM25 算法做相关性排序精准命中带有关键词的原文内容。但向量检索和关键词检索都有一个共同的致命短板它们都只能做「单点碎片化检索」只能找到独立的文档和文本看不懂数据之间的关联、分不清实体之间的逻辑关系。比如只靠向量和关键词能搜到珍珠奶茶、珍珠、台式奶茶各自的介绍文档但没法自动梳理出珍珠奶茶属于台式奶茶、包含珍珠配料、珍珠要用煮制工艺、适合年轻人饮用这种层级和链路关系。没有逻辑、没有关联、不会多跳推理只能零散给信息没法梳理来龙去脉。这时候就需要知识图谱检索来补齐短板我们常用的存知识图谱的图数据库就是 Neo4jNeo4j 专门用来存储和挖掘实体之间的关联关系它不侧重字面关键词也不单纯匹配语义而是把 Product奶茶、Ingredient配料、Type品类等实体以及 “包含”“属于”“适合” 等关系提前织成一张可视化的知识网络。我们就能顺着实体之间的关联做多跳查询、层级拆解、逻辑推导比如从 “台式奶茶” 出发通过 Neo4j 检索到它下属的 “珍珠奶茶”再关联到珍珠、果糖等配料甚至延伸到配料的制作工艺、奶茶的适合人群一步步梳理出完整的逻辑链路。虽然现在有了向量 关键词 知识图谱三路召回但还存在一个问题每次都会召回十几条、几十条候选结果里面有相关的、也有弱相关、甚至夹带噪音直接喂给大模型不仅冗余还容易干扰生成、增加幻觉。所以还要加上 Rerank 重排模型。它的作用就是把 Milvus、ES、Neo4j 三路召回的候选内容统一做精细二次打分、智能重新排序把真正和用户问题最相关的内容置顶把无关、弱相关的往下压甚至过滤掉。总结下来Milvus 向量负责语义模糊匹配懂意思不懂字面ES 关键词负责专有名词精准命中认词条不认语义Neo4j 知识图谱负责实体关联、多跳推理、梳理逻辑脉络Rerank 重排模型负责多路结果精选、精准排序提纯高质量上下文。四者搭配各司其职、互相补强才是现在企业级 RAG、GraphRAG 最标准、落地效果最好的完整方案。