AI Agent学习:RAG基础:构建Agent知识获取管道(李博杰《深入理解 AI Agent》3.2观后总结)
一、RAG 整体概述1. 核心概念RAG检索增强生成是搭建Agent共享知识库的核心技术核心逻辑结合大语言模型的理解、文本生成能力 外部知识库海量、可实时更新的内容解决痛点LLM训练数据存在时间截止无法获取最新资讯、企业内部私有文档无需重新训练模型即可扩充知识边界。2. 标准工作四步流程用户输入问题检索稠密稀疏检索并行召回Top-K相关文本块增强将用户问题 检索到的知识片段拼接构造完整Prompt生成LLM依托参考资料输出最终答案示例查询故意杀人罪量刑检索片段《刑法》第232条法条内容拼接Prompt依据法条回答问题附上法条原文用户提问输出结果结合法条给出清晰量刑说明二、前置离线处理文档分块 Chunking正式检索前必须对长文档预处理拆分拆分必要性嵌入模型有输入长度上限整文档向量混杂多个主题语义模糊整块文本过长会带入大量无关内容占用上下文窗口稀释有效信息三种主流分块方案固定大小切分按固定token长度切割常用512token块间设置重叠50~100token避免语句被截断优点实现简单、效果稳定缺点无视文档结构段落、代码、表格容易被生硬切断递归结构感知切分生产环境首选顺着章节标题、段落、换行等文档天然边界逐层拆分Markdown、HTML结构化文档适配性极强语义切分计算相邻句子嵌入相似度语义差距大的位置进行切割保证单个文本块主题统一优点拆分质量最优缺点需要额外嵌入计算资源开销更高调参权衡经验常规配置单块 256~1024 token块重叠占比10%~20%块过小信息残缺指代不明语义不完整块过大多主题混杂向量精度下降冗余内容过多固有缺陷分块会割裂原文上下文指代关系该问题后续通过上下文感知检索优化三、稠密嵌入检索语义匹配路线1. 嵌入 Embedding 原理把文字转化为高维数字向量语义相近的文本向量空间距离更近稠密向量向量绝大多数维度均存在数值依靠余弦相似度判定语义相似度余弦相似度越趋近于1文本语义越接近只关注向量方向不受文本长短影响经典语义规律国王 - 男性 女性 ≈ 女王向量运算可承载语义逻辑2. 稠密嵌入技术演进Word2Vec(2013)静态词向量一词固定一个向量无法区分一词多义BERT上下文感知向量依靠自注意力机制一词多语境生成不同向量上限512tokenSentence-BERT专为句子相似度设计适配检索场景BGE-M3新一代多模态嵌入模型同时输出稠密、稀疏向量支持长文本、多语言3. 海量向量快速检索ANN近似最近邻数据量巨大时无法逐句计算相似度依靠索引算法快速近似查找主流两类算法对比特性ANNOYHNSW构建速度更快偏慢内存占用更低较高增量更新不支持需全量重建支持实时新增数据检索精度较好极高适用场景静态不变知识库动态持续更新知识库四、稀疏嵌入检索关键词精准匹配路线核心基于词袋模型依靠关键词字面匹配向量绝大部分维度数值为0主流算法TF-IDF → BM25工业通用标准1. 核心计算逻辑TF词频词汇在单篇文档内出现次数IDF逆文档频率词汇在全部知识库的稀有程度生僻专业词汇权重远高于通用助词BM25新增两项修正k1词频饱和系数词汇重复多次不会无限拉高分数规避长文档堆砌关键词占便宜b文档长度归一化平衡长短文档打分公平性2. 底层存储倒排索引存储结构词汇 → 所有包含该词的文档列表优势输入关键词可瞬间定位全部相关文档是搜索引擎底层基础3. 优劣与进阶优点专业术语、代码、人名检索精准结果可解释缺点无法识别同义词、同义句式进阶SPLADE、BGE-M3稀疏分支学习型稀疏检索结合神经网络赋予词汇语义权重五、混合检索稠密稀疏融合方案两种检索各自短板稠密检索擅长语义同义匹配容易遗漏专业关键词、编号稀疏BM25关键词精准命中无法理解同义表达完整流水线三阶段并行召回稠密、稀疏检索分别独立召回一批候选文档结果融合RRF倒数排名融合最常用抛弃原始分值仅依据排名计算综合分数简单稳定分值归一化加权融合保留相似度、BM25原始分值调参复杂度更高神经重排序Rerank架构区分检索阶段双编码器文本分开编码速度快、精度一般重排序阶段跨编码器查询与文档拼接共同输入模型深度语义交互打分精度大幅提升速度偏慢作用对融合后的候选文档精细二次排序是生产RAG提升效果的关键环节检索效果三大评估指标Recallk 召回率相关文档是否进入前k条结果RAG核心指标MRR平均倒数排名衡量首个有效结果的靠前程度nDCG综合全部文档相关性与排序位置评估整体列表质量六、多模态信息摄取PDF/图片/语音知识库不止纯文本三类处理方案取舍原生多模态编码效果最优ViT视觉编码器将图像转为视觉token和文本纳入统一语义空间完整保留图表、版式、空间位置信息适合复杂报表、图文PDFOCR转录提取文本低成本通用图片、PDF、语音全部转纯文本兼容整套RAG链路缺陷丢失版式、图表视觉信息工具按需调用折中方案基础检索依靠文本摘要遇到图表、复杂版式时调用图像/PDF解析工具深度读取兼顾成本与灵活性

相关新闻

非线性磁链模型在无感FOC中的应用:原理、实现与开源库实战

非线性磁链模型在无感FOC中的应用:原理、实现与开源库实战

在电机控制领域,无感FOC(Field-Oriented Control,磁场定向控制)一直是实现高性能、低成本驱动方案的关键技术。然而,传统的无感FOC算法通常基于一个核心假设:电机磁链与电流呈线性关系。在实际工程中&#…

2026/10/20 5:55:05 阅读更多 →
@Transactional 注解怎么用?

@Transactional 注解怎么用?

接手新项目一言难尽,别的不说单单就一个 Transactional 注解用的一塌糊涂,五花八门的用法,很大部分还失效无法回滚。有意识的在涉及事务相关方法上加Transactional注解,是个好习惯。不过,很多同学只是下意识地添加这个…

2026/10/19 4:50:55 阅读更多 →
Unity项目.gitignore终极指南:告别臃肿备份,实现高效版本控制

Unity项目.gitignore终极指南:告别臃肿备份,实现高效版本控制

1. 项目概述:为什么你的Unity项目备份又慢又臃肿? 每次看到Unity项目文件夹动辄几十个GB,备份一次要等上大半天,甚至把整个项目压缩上传到网盘都感觉在浪费生命,你是不是也头疼过?更别提用Git进行版本控制时…

2026/10/19 18:56:33 阅读更多 →

最新新闻

字母象形与五行水象:从W/S/M到命名设计的认知工具

字母象形与五行水象:从W/S/M到命名设计的认知工具

把“字母象形”和“阴阳五行”放在一起琢磨,原本是一件很容易被人当成故弄玄虚的事;但如果你手里刚好有一串字母——w,s,m,f,o,e,n,i——并且试图解释它们为什么都跟“水”有关系,这事就变得特别有意思。我先说结论:这串对应关系不…

2026/10/20 5:56:20 阅读更多 →
PC寄存器详解:CPU程序计数器原理与跨架构实践

PC寄存器详解:CPU程序计数器原理与跨架构实践

1. 什么是PC寄存器?它不是“电脑”,而是CPU的“导航员”很多人第一次看到“PC寄存器”这个词,下意识以为是“Personal Computer”的缩写,结果一查发现完全不是一回事——这恰恰暴露了计算机底层概念最容易被表层符号误导的典型陷阱…

2026/10/20 5:56:20 阅读更多 →
螺旋桨流体仿真:从几何清理到流场收敛的完整拆解

螺旋桨流体仿真:从几何清理到流场收敛的完整拆解

简介:这份资源面向机械工程、航空航天及船舶方向的工程师与学生,提供螺旋桨流体仿真的完整工程资料,帮助理解并实践基于SolidWorks Flow Simulation的CFD分析流程。压缩包共105个文件,约92.06MB,包含4个sldprt零件模型…

2026/10/20 5:56:20 阅读更多 →
Flink State TTL机制深度解析:防止状态膨胀的生产实践

Flink State TTL机制深度解析:防止状态膨胀的生产实践

1. 为什么Flink的State会“长胖”——从一次线上内存告警说起上周三凌晨两点,某实时风控系统的告警群突然炸了:TaskManager堆内存使用率连续5分钟突破92%,GC频率飙升到每秒3次。值班同事紧急拉取JVM堆转储,发现一个叫userSessionS…

2026/10/20 5:56:20 阅读更多 →
PC寄存器:CPU指令执行流的物理锚点与控制核心

PC寄存器:CPU指令执行流的物理锚点与控制核心

1. 这个“PC寄存器”到底在CPU里干啥?别再被教科书绕晕了你拆开一台老式台式机,盯着那块布满金手指的主板,可能根本不会想到——就在CPU芯片内部那个比芝麻还小的硅片角落里,正有一个叫程序计数器(Program Counter Reg…

2026/10/20 5:56:20 阅读更多 →
MySQL锁机制与死锁排查实战:从行锁、间隙锁到索引优化

MySQL锁机制与死锁排查实战:从行锁、间隙锁到索引优化

这篇文章的选题我很早就想写了。起因是前阵子帮一个社区的朋友排查线上死锁,他跑了一个定时任务,每天凌晨批量更新订单状态,结果第二天一上班就收到一堆锁等待超时的告警。日志一拉,两条 UPDATE 语句堵在同一条索引记录上&#xf…

2026/10/20 5:55:20 阅读更多 →

日新闻

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

CLRC663芯片Pin-to-Pin替代实战:从评估到量产全记录

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
ESP32舵机控制指南:原理、多路驱动与避坑实战

ESP32舵机控制指南:原理、多路驱动与避坑实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →
位移法实现一阶低通滤波:单片机ADC采样降噪实战

位移法实现一阶低通滤波:单片机ADC采样降噪实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/20 1:01:30 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/19 10:02:04 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/19 17:32:41 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/20 2:50:50 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 2:54:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/19 9:10:22 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/18 12:16:16 阅读更多 →