尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Day8:从0实现AI Agent知识库:RAG优化之文本切分Chunk设计详解
前言在前面的学习中我们已经完成了第一个基础版 RAG 系统。Day7 我们实现了文档读取Embedding向量生成向量数据库存储相似度搜索基础RAG问答流程一个完整的 RAG 流程如下用户问题 ↓ 问题Embedding ↓ 向量数据库搜索 ↓ 找到相关知识 ↓ 拼接Prompt ↓ LLM生成答案但是实际项目中的 RAG 远比这个复杂。因为真实企业知识库通常包含几百份PDF技术文档安全规范产品说明内部知识库如果直接把整篇文章进行Embedding会出现很多问题搜索精度下降无关内容大量进入PromptToken浪费LLM回答质量降低因此 Day8 我们开始优化 RAG 的核心环节文档切分 Chunk。一、为什么 Day7 的 RAG 不够好Day7 中我们直接把完整文本生成Embedding。例如企业安全规范 管理员账号必须开启双因素认证。 普通用户密码需要90天修改一次。 发现漏洞后需要7天内完成修复。 服务器日志必须保存180天。 高危漏洞需要立即处理。整个文本作为一个向量。这样做的问题假设用户问密码多久修改向量搜索找到的是企业安全规范全文但是用户真正需要的是普通用户密码需要90天修改一次也就是说搜索粒度太大。二、什么是ChunkChunk就是将一篇长文本切分成多个小文本块。例如原始文档企业安全规范 管理员账号必须开启双因素认证。 普通用户密码需要90天修改一次。 发现漏洞后需要7天内完成修复。切分之后Chunk1:管理员账号必须开启双因素认证。Chunk2:普通用户密码需要90天修改一次。Chunk3:发现漏洞后需要7天内完成修复。每个Chunk都会文本 ↓ Embedding ↓ 向量数据库最终数据库保存向量1 - 管理员账号规则 向量2 - 密码修改规则 向量3 - 漏洞修复规则查询时用户 密码多久修改 搜索 Chunk2这样准确率明显提高。三、Chunk设计的重要性Chunk并不是简单切字符串。一个好的Chunk需要考虑1. Chunk大小如果太大例如5000字一个Chunk问题包含大量无关信息搜索困难Prompt变长如果太小例如一句话一个Chunk问题上下文丢失例如Chunk1: 漏洞处理要求 Chunk2: 发现漏洞后需要7天内修复。单独搜索Chunk2可能不知道它属于什么规则。因此实际项目一般300~1000字符作为一个Chunk大小。2. Chunk overlap重叠什么是Overlap例如文本A B C D E F切分没有重叠Chunk1: A B C Chunk2: D E F问题C和D之间的信息断裂。加入重叠Chunk1: A B C Chunk2: C D E Chunk3: E F这样上下文不会突然丢失。四、Day8项目结构设计重新整理RAG项目day8 │ ├── knowledge │ | │ security.txt │ ├── db │ ├── rag_build.py │ └── rag_chat.py两个核心文件rag_build.py负责知识库构建流程读取文档 ↓ 文本切分 ↓ 生成Embedding ↓ 保存Chromarag_chat.py负责用户查询流程用户问题 ↓ Embedding ↓ 向量搜索 ↓ 拼接Prompt ↓ 交给LLM五、实现文本切分程序核心代码def split_text(text, chunk_size100): chunks[] start0 while start len(text): endstartchunk_size chunktext[start:end] chunks.append(chunk) startend return chunks例如输入企业安全规范......输出Chunk0 Chunk1 Chunk2六、改进后的RAG流程现在完整流程文档 | | Chunk切分 | -------------------- | | | Chunk1 Chunk2 Chunk3 | Embedding | Chroma向量数据库 | 用户问题 | 相似度搜索 | 相关Chunk | Prompt | LLM回答这就是企业RAG的基础架构。七、运行效果构建知识库 RAG知识库构建开始 文本读取成功 Chunk数量: 6 Embedding模型加载完成 Collection创建成功 知识库构建完成 数据数量: 6查询请输入问题: 密码多久修改搜索结果普通用户密码需要90天修改一次。说明RAG已经可以根据问题找到对应知识片段。八、Day8学习总结今天完成了RAG从能运行到更接近真实项目主要学习1. 为什么需要Chunk因为整篇文档Embedding ↓ 搜索范围太大 切成Chunk ↓ 提高检索精度2. Chunk设计原则不是越小越好。需要平衡准确率 上下文完整性 Token成本3. RAG核心不是LLM很多人认为RAG效果不好是模型问题。实际上很多时候问题来自数据处理 ↓ Chunk设计 ↓ Embedding ↓ 检索策略知识库质量决定RAG上限。总结Day7解决了RAG是什么以及如何运行。Day8解决了如何让RAG真正可用。真正的RAG系统不是文本 ↓ Embedding ↓ 搜索而是数据处理 ↓ 合理Chunk ↓ 高质量Embedding ↓ 精准检索 ↓ LLM生成这也是从Demo级RAG走向企业级RAG的关键一步。
RELATED

相关推荐

小客厅怎么装修显大?重点不是刷白墙,而是做好空间比例

小客厅怎么装修显大?重点不是刷白墙,而是做好空间比例

很多人装修小客厅,第一反应就是刷白墙、铺浅色地板、少做装饰。这样确实能让空间更明亮,却不一定真正显大。有些客厅墙面很白,家具也不多,看起来仍然拥挤;有些面积不大,却显得通透舒服。真正拉开差距的&…

📅 2026/9/28 7:58:27
Taste-Skill 新手入门与实战指南一

Taste-Skill 新手入门与实战指南一

Taste-Skill 新手入门与实战指南一 ① 核心概念解析与生活化类比 ② 开发环境搭建与依赖安装 ③ 快速启动与基础调用演示 ④ 分步实操:构建首个味觉技能模型 ⑤ 结果验证与效果可视化方法 ⑥ 常见报错分析与排查技巧 ⑦ 参数调优与性能提升策略 ⑧ 实际应用…

📅 2026/9/21 7:11:27
国内GEO优化工具怎么选?新手友好平台实测推荐

国内GEO优化工具怎么选?新手友好平台实测推荐

随着生成式 AI 搜索普及,GEO(生成式引擎优化)成为品牌线上获客的核心赛道,不少新手运营、中小企业、营销服务商想要入局,却不清楚如何挑选适配自身需求的工具。结合多平台实测体验、各产品原生技术能力与落地实操表现&…

📅 2026/9/23 15:46:33
MORE NEWS

更多资讯

📰

React Native异步状态更新与渲染机制全面解析

我先跟你说个特别真实的场景:RN 项目里调完setState,紧接着下一行打印this.state,结果拿到的还是旧数据。你以为是代码写错了,查了半天,发现不是 bug,是机制。状态更新是异步的,渲染是 React 自…

📰

Eclipse怎么做网页免费工具全解析:备案别花冤枉钱

Eclipse怎么做网页免费工具全解析:备案别花冤枉钱 备案流程一头雾水?很多人第一反应是找代办,结果一问多少钱,从几百到几千都有,心里没底。其实,对于用 Eclipse…

📰

浪网站制作对比评测:告别拖延,3招搞定技术选型

浪网站制作对比评测:告别拖延,3招搞定技术选型 改个按钮颜色,建站公司让你等一周?这种憋屈谁受得了? 别骂了,先看看你的网站是用什么技术堆的。很多老板不懂技术,只懂扔需求,结果被外包坑得底掉。今天咱们不整虚的,直接上硬菜,通过 对比评测…

📰

做网站需要提供什么条件?避开被黑挂马坑,选对哪家好

做网站需要提供什么条件?避开被黑挂马坑,选对哪家好 网站被黑挂马不知道怎么办?别慌,先自查。很多老板找建站公司,问“做网站需要提供什么条件”,结果只给了个Logo和几段文字,上线没三天,网站变成赌博广告,百度也搜不到,找服务商推诿,找技术不…

📰

小项目开发sop流程

文章目录从零开始做项目:一份完整的个人项目开发流程指南(以贪吃蛇为例)一、立项二、可行性分析技术可行性要分析什么?🌰 实战例子:开发一个贪吃蛇三、需求分析四、功能流程图五、产品原型图六、架构搭建为…

📰

S905L3SB盒子刷机指南:安卓9.0线刷固件+当贝桌面纯净版集成

如果你手里有一台运营商送的IPTV盒子,芯片方案是晶晨S905L3SB,那大概率你和我一样,拿到手没几天就被它自带桌面里的广告和推荐位烦得不行。开机先放十几秒广告,切个频道又弹个充值页面,想装个第三方App还被各种限制卡住…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬