news 2026/5/27 1:53:04

RAG检索增强全攻略:从Embedding到评估的工程实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RAG检索增强全攻略:从Embedding到评估的工程实践
引言

RAG的核心思想是:在生成响应前,先从外部知识库检索相关文档作为上下文。这避免了模型“幻觉”问题,特别适用于问答、摘要等任务。整个过程分为检索和生成两阶段,本博客聚焦检索部分,涵盖从数据预处理到结果优化的全流程。


1. Embedding:把“语义相近”变成“向量相近”

Embedding 模型会把文本映射成一个向量。RAG 里通常用它做“语义检索”:用户问题和文档块向量越接近,就越可能相关。

新人最容易踩的坑是:Embedding 并不是越大越好,而是越适配你的语料越好。你可以按这个顺序选:

  • 通用模型先跑通:能覆盖中文、英文、混合符号的场景。
  • 领域语料再优化:如果你是医疗/法律/代码库,通用模型会出现“语义懂了但细节不准”的问题。
  • 统一预处理:文档入库和用户 query 的清洗要一致(全半角、大小写、去多余空格、去模板页眉页脚等),否则会造成向量分布不一致。

经验建议:

  • 先把“向量召回是否把相关内容拉上来”当作第一目标,而不是一开始就追极致速度或极致省钱。
  • 中文场景里,句子级别语义通常没问题,但遇到“编号条款/表格/代码/配置项”,需要依赖后面的分块与混合检索来补。

2. 分块(Chunking):RAG 成败的 50% 在这里

把整篇文档直接向量化通常不行:太长、主题太多、向量会“平均化”。所以要分块。

入门分块有两类:

A. 固定长度分块(简单但有效)

  • 例如按 300–800 tokens 切块,并做 50–150 tokens overlap(重叠)。
  • 优点:实现快、通用。
  • 缺点:容易把一个概念拆散,或把无关段落拼在一起。

B. 结构化分块(更像“按小节”)

  • 按标题层级(H1/H2/H3)、段落、列表、FAQ、函数/类等结构切。
  • 优点:语义更完整,后续重排也更容易。
  • 缺点:需要解析不同格式(HTML/PDF/Word/Markdown)的结构。

新人最常见问题与修复:

  • 块太小:检索很准但上下文不够,模型容易“答到一半”。→ 增大 chunk 或加 overlap。
  • 块太大:上下文够但噪声多,模型容易被带偏。→ 减小 chunk 或改结构化切分。
  • 一堆模板噪声(页眉页脚、导航栏、版权声明)→ 入库前清洗,否则会占据召回名额。

3. 混合检索(Hybrid Search):语义 + 关键词,互补短板

只做向量检索会漏掉:

  • 专有名词、编号、错误码、接口名(例如ERR_CONN_RESETPOST /v1/chat
  • “必须包含某个词”的严格匹配需求

因此推荐入门直接上混合检索

  • Dense(向量):找语义相关
  • Sparse(关键词/BM25):找字面匹配

常见融合方式:

  • 并集召回:向量 topK + BM25 topK 合并去重
  • 加权融合:对两路分数做归一化后加权(比如 0.6向量 + 0.4BM25)

入门建议:

  • 先用并集召回,简单稳定。
  • K 不要太大:例如各取 top20 合并,再交给 Reranker 精选。

4. Reranker:把“看起来相关”变成“真的最相关”

召回阶段(向量/BM25)追求“别漏掉”,但排序可能不完美。Reranker会用更强的模型(常是 cross-encoder 思路)对(query, chunk)做精细相关性判断,然后重新排序,挑最值得塞进上下文的那几段。

什么时候你需要 Reranker?

  • 召回里“相关的有,但第一名经常不对”
  • 文档很多相似段落(制度条款、产品说明书多版本)
  • 问题较长、带条件约束(“在 A 情况下,但不包含 B”)

入门调参方向:

  • 让召回宽一点(比如合并后 40–80 条),重排收紧到 5–10 条作为最终上下文。
  • 观察失败案例:如果重排后反而更差,多半是分块质量或 query 清洗问题先没做好。

5. 评估(Evaluation):没有评估就没有“可迭代的 RAG”

RAG 很容易陷入“感觉还行”,但线上一旦换数据、换问法就崩。入门你至少要做两类评估:

A. 检索评估(不依赖大模型答案)

目标:相关内容有没有被检索到
常用指标:

  • Recall@K:正确证据是否出现在 topK
  • MRR:正确证据的排名是否靠前

做法(入门可行):

  1. 准备 50–200 条问题(来自真实用户或你自己编写)
  2. 为每条问题标注“应该命中的文档段落/页面”(轻量标注也行)
  3. 跑检索链路,算 Recall@K / MRR
  4. 针对失败样本定位:是分块、关键词、Embedding、还是重排问题

B. 端到端评估(答案质量)

目标:最终回答是否正确且可引用证据
你可以用:

  • 人工评审(最可靠):正确性、覆盖度、引用是否支撑结论
  • LLM-as-a-judge(入门可用):注意要固定评审提示词与标准,并抽样人工复核

入门建议的验收标准:

  • 回答里尽量“带引用/依据”(哪段资料支持了哪句话)
  • 遇到资料缺失时,模型能明确说“不确定/无依据”,而不是编
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/27 1:52:25

格芬科技|重磅亮相2026广州国际专业灯光音响展览会

声光聚势,科创同行!备受全球声光视讯行业瞩目的第二十四届广州国际专业灯光音响展览会(简称“广州展”),即将于五月登陆羊城,启幕一场集技术、产品与商机于一体的行业盛典。深耕音视频集成领域十余载的源头…

作者头像 李华
网站建设 2026/5/27 1:48:28

告别GNSS失锁焦虑:测绘级MEMS组合导航系统挑战技术突破

在无人系统、智能驾驶与精密测绘飞速发展的今天,导航系统的精度与可靠性已成为决定任务成败的关键。传统单一GNSS在信号遮挡环境下容易失锁,而纯惯性导航又存在误差累积的难题。ER-GNSS/MINS-01测绘级超高精度MEMS组合导航系统的问世,彻底打破…

作者头像 李华
网站建设 2026/5/27 1:45:19

市面上好用的命理有哪些?这几点挑错等于白花钱

选择命理,核心要看排盘数据的准确性和解析的逻辑性,目前市面上兼顾专业与易用性的App,玄易App是综合体验很突出的一个。作为深耕传统命理十多年的从业者,我每天都要跟各种排盘系统打交道。服务过上千位客户后我发现,很…

作者头像 李华
网站建设 2026/5/27 1:43:02

大语言模型处理大规模代码的认知误区与合理实践

引言 在借助大语言模型(Large Language Model, LLM)处理海量代码文件时,不少用户存在一种普遍认知误区:认为使用文件上传功能提交代码,能够突破模型固有的上下文窗口(Context Window)限制。这一…

作者头像 李华
网站建设 2026/5/27 1:40:02

扣子技能商店爆款Bot设计指南:从0到1000用户

你花3天做了一个Bot,发布到扣子技能商店,等了一周——7个用户,5个是你自己测试的。 这不是段子,这是90%扣子创作者的真实经历。 问题不在你的技术,在于你把做Bot当成了"写代码",而不是"做…

作者头像 李华