RAG-day9

一、稀疏检索 & 稠密检索(最核心,先搞懂这俩)

1. 稀疏检索

人话:按关键词匹配 就像百度搜东西,你输几个字,它找包含这些字的文章。

  • 只认字面关键词
  • 不懂语义、不懂意思
  • 代表工具:**ElasticSearch(ES)**适合:找专有名词、专业术语、法规编号、固定关键词。

举例子:你搜 "乌干达鲜鱼检疫标准"稀疏检索只找包含这几个字的文档。

2. 稠密检索

人话:按意思匹配,不看字面 不管字一不一样,意思相近就给你找出来。靠向量 Embedding 计算语义相似度。

  • 懂语义、懂含义
  • 不依赖关键词
  • 代表:所有向量数据库(Milvus/FAISS)

举例子:搜 "进口鱼类入境要求"哪怕文章里没这句原话,意思一样,也能搜到。

一句话记住区别

  • 稀疏:对字(关键词匹配)
  • 稠密:对意(语义匹配)

二、多路混合检索(RAG 工业级必用)

单独用一个都有缺点:

  • 只用 ES 稀疏:关键词少就搜不到,不懂语义
  • 只用向量稠密:没有关键词时容易搜到不相关的

混合检索 = 稀疏检索 + 稠密检索 一起用两边结果合并、打分、排序。

好处:

  1. 关键词能精准命中专业名词
  2. 语义能搜到意思相近的内容
  3. 不漏、不杂,检索质量直接拉满

面试一句话背:ES 做关键词稀疏检索,向量库做语义稠密检索,两者多路融合,提升召回和精准度。


三、Rerank 重排(必考点,超好懂)

干啥的?

前面混合检索先捞出一批候选内容,Rerank 再精细筛选一遍,重新排队,把最相关的放前面,没用的往后挪或删掉。

通俗流程

  1. 检索阶段:先粗选,捞出 Top10--Top20 一堆内容
  2. Rerank 重排模型:挨个打分、判断相关性
  3. 只留最匹配的 Top3--Top5 给大模型

作用

  • 过滤垃圾无关内容
  • 减少大模型上下文负担
  • 提升答案准确度、减少幻觉

记住一句:先粗搜,再精排,Rerank 负责二次筛选重新排序。


四、Query 改写(用户问题优化)

用户提问有时候:太短、太口语、意思模糊。比如用户只说:"进口鱼有啥要求?"太简略,检索搜不准。

Query 改写做三件事:

  1. 把短句补全成完整专业问句
  2. 口语改成书面专业表述
  3. 拆分多意图问题,拆成多个子问题

目的:让检索更容易搜到精准内容。


五、上下文压缩

检索出来的内容可能又长又啰嗦,有废话、有无关段落。上下文压缩就是:把多余废话删掉,只保留和问题相关的关键句子,精简后再给大模型。

好处:

  • 节省 token
  • 加快生成速度
  • 减少无关信息干扰,降低幻觉

六、RAG 常见链路完整流程(Day8+Day9 合起来完整版)

我给你串成一条完整流水线,超好记:文档入库 → 高级分块 → 生成 Embedding 存入向量库 + ES 建索引用户提问 → Query 改写 → 多路混合检索(ES + 向量)→ Rerank 重排 → 上下文压缩 → 喂给大模型生成答案


七、给你整理 Day9 必背极简口诀

  1. 稀疏对字,稠密对意
  2. ES 稀疏找关键词,向量稠密找语义
  3. 混合检索两路合并,不漏不杂
  4. 先粗搜,后精排,Rerank 做重排
  5. Query 改写补全问题,方便检索
  6. 上下文压缩删减废话,精简输入
相关推荐
救救孩子把12 小时前
生产 RAG 检索故障怎么查?沿着正确证据逐站定位
rag·rag检索·准确度
仙逆GPT13 小时前
ChatGPT、Codex工程实战:Agent接入企业知识库,文档明明更新了,为什么回答还是旧版本?
chatgpt·codex·rag·企业知识库·ai agent
第404块砖头2 天前
Spring Boot 4.1 + Spring AI 2.0:我如何用 Java 微服务把 RAG、知识图谱和 MCP 协议串成一个 Agent 平台
知识图谱·知识库·graph·rag·mcp·spring boot 4.1·spring ai 2.0
code2cat2 天前
【随笔】RAG混合检索:让关键词与向量一起找证据
人工智能·rag·混合检索
lgcgkCQ2 天前
【AI 转型实战 1】SpringAI 入门:搭建基础大模型对话能力
java·ai·agent·rag·spring ai·mcp·langchain4j
Flynn Liang2 天前
RAG 答非所问/幻觉怎么破?Spring AI QuestionAnswerAdvisor 召回优化实战(TopK/重排/混合检索)
人工智能·算法·spring·rag·幻觉·springai
Flynn Liang2 天前
内存/Redis/PGVector/Milvus/ES 怎么选?Spring AI VectorStore 抽象与向量库选型对照表
redis·elasticsearch·milvus·rag·springai·pgvector·向量库
ynchyong3 天前
OpenAI 技术全景解析
openai·rag·function·guardrails
一枕槐安4873 天前
RAG 服务扛住高并发:缓存、队列、限流三件套
java·spring·缓存·异步任务·rag·断路器
Maiko Star4 天前
【HM-LC】LangChain RAG查询优化详解:查询重写、混合检索与重排序实战
langchain·rag