尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Spring AI 13 · TextSplitter 文档分块
13 · TextSplitter 文档分块 学完能做什么理解为什么必须分块用 TokenTextSplitter 控制块大小与重叠掌握分块参数对检索质量的影响。⏱️ 预计耗时45 分钟含动手 依赖前置第 12 章 第 07 章token 上限 pgvector 文档25分块与检索质量 难度一句话分块是把长文档切成「大小适中、语义完整」的小块块太大检索不准、块太小丢上下文找到平衡点是 RAG 质量的关键。1. 为什么必须分块三个硬理由1. token 上限embedding 模型单条输入有上限整篇长文会被拒第 07 章 2. 检索精度一整篇文的向量是「平均语义」问细节时匹配不准 3. 上下文成本命中后要把 chunk 塞进 prompt块太大 token 贵 稀释重点一句话检索的最小单位是 chunkchunk 的质量直接决定 RAG 的质量。2. TokenTextSplitter最常用的分块器ListDocumentrawreader.get();// 第 12 章读进来的长文档TokenTextSplittersplitternewTokenTextSplitter();ListDocumentchunkssplitter.apply(raw);// 切成一堆小 DocumentSystem.out.println(分块前 raw.size() 个分块后 chunks.size() 个);默认按token 数切不是字符数更贴合模型的计量方式。3. 关键参数块大小与重叠TokenTextSplittersplitternewTokenTextSplitter(800,// defaultChunkSize每块目标 token 数350,// minChunkSizeChars最小块字符数避免碎块5,// minChunkLengthToEmbed太短的块丢弃10000,// maxNumChunks单文档最多切多少块true// keepSeparator是否保留分隔符);最需要关注的是块大小chunkSize和是否有重叠overlap参数取向效果风险块偏大如 1000上下文完整检索不精、token 贵块偏小如 200检索精准易丢上下文、割裂语义有重叠相邻块共享边界内容避免答案被切断略增存储与冗余经验起点中文 300~600 token/块重叠 10%~20%再按实测pgvector 文档23召回评估调整。4. 重叠overlap为什么重要不重叠时一个完整答案可能被切成两半两块都不完整检索都不命中无重叠: [...签收起 7 天] [内商品完好可退...] ← 问「几天内可退」两块都不全 有重叠: [...签收起 7 天内商品] [7 天内商品完好可退...] ← 至少一块含完整信息5. 按结构分块更聪明纯按 token 切会「一刀切断句子」。更好的做法是顺着文档结构切Markdown按标题层级#/##切每节一块。PDF先按页/段落 Reader 读第 12 章再对过长的块二次 token 切分。FAQ按「一问一答」切语义天然完整。// 组合先按结构读再对过长块做 token 细分ListDocumentbyStructurenewMarkdownDocumentReader(md,config).get();ListDocumentfinalChunksnewTokenTextSplitter(500,200,5,10000,true).apply(byStructure);6. 分块后检查chunks.forEach(c-{intlenc.getText().length();if(len20)System.out.println(⚠️ 过短块: c.getText());if(len2000)System.out.println(⚠️ 过长块: len 字);});System.out.println(平均长度 chunks.stream().mapToInt(c-c.getText().length()).average().orElse(0));理想状态大小均匀、每块能独立表达一个完整意思。7. 分块决策速查你的内容建议策略结构化文档手册/Markdown先按结构切过长再 token 细分长篇连续文本论文/合同TokenTextSplitter 重叠FAQ / 问答对按「一问一答」切表格/代码单独处理避免被拦腰切断8. 一句话总结分块把长文切成「大小适中、语义完整」的 chunk用 TokenTextSplitter 控制块大小 重叠能按结构切就别硬按 token 切——chunk 质量 RAG 质量。➡️ 下一章14-metadata富化与来源标注.md给每个 chunk 打上来源与业务标签让过滤和溯源真正可用。
RELATED

相关推荐

逻辑电平详解:四参数、电平家族与3.3V/5V互连实战

逻辑电平详解:四参数、电平家族与3.3V/5V互连实战

从一次“灵异故障”说起。两年前有个项目,一块3.3V的STM32L4单片机,接一个5V供电的GPS模块,UART通信。静态测试一切正常,上电能收到数据,但只要运行超过几分钟,数据就开始偶尔错位,重传率飙升&a…

📅 2026/10/25 6:36:04
航空安全风险量化建模:飞行数据驱动的可落地工作流

航空安全风险量化建模:飞行数据驱动的可落地工作流

1. 这不是一份“交差式”建模论文,而是一套可复用的航空安全风险量化工作流你搜到这个标题时,大概率正面临两个现实困境:要么是MathorCup D题刚开赛,手头只有题目PDF和一片茫然;要么是初赛结束,急需参考优秀…

📅 2026/10/8 7:08:17
嵌入式软件需求获取实战:从模糊需求到可验证规格

嵌入式软件需求获取实战:从模糊需求到可验证规格

做过嵌入式固件开发的人应该都有同感:我们拿到的所谓"需求",很少有哪次是一份干干净净、逻辑闭环的文档。多数情况下,需求是散落的——产品经理嘴里有一句、硬件工程师的原理图里藏着一堆、老板的邮件里还有一句"跟上次那个项…

📅 2026/10/18 19:22:53
MORE NEWS

更多资讯

📰

URFormer:关系词表与专家路由实现异构图零样本迁移

做异构图模型的同学大概都有过这种体验:业务方甩过来一张新图,schema 里躺着二十几种节点类型、上百种边语义,你手里的模型只认得训练时见过的那几种关系,于是又是一轮重写特征、重训 embedding、重调参。一个模型,任意…

📰

百亿级量化机构高性能分布式存储:场景、技术栈与落地实践

“高性能分布式存储”这个词一旦出现在量化私募的招聘标题里,味道就和互联网大厂的基础设施岗完全不同了。互联网存储团队服务的是海量用户请求,核心矛盾是并发、成本和横向扩展;百亿级量化机构养一支存储团队,服务的是几十到几百…

📰

OpenMontage:用代码批量生成视频的开放编排框架

1. 从“OpenMontage”这个名字说起:它到底想解决什么问题第一次看到“OpenMontage”这个词,我脑子里蹦出来的第一反应是“开放式的蒙太奇”。蒙太奇是影视剪辑里最核心的手法之一——把不同来源、不同时间、不同空间的镜头拼接在一起,产生新的…

📰

Win7 WDM驱动内存映射实验:物理页分配与IRP读写实现

简介:这是一份面向Windows驱动开发初学者与内核安全研究者的Win7内存读写驱动实践项目,聚焦Ring 0级物理内存直接访问能力的实现与调试。资源提供完整可编译的WDM模型驱动工程,涵盖驱动初始化、IRP请求处理、连续内存分配(MmAlloc…

📰

基于Cloudflare Workers的AI Agent工程化模板:pnpm依赖管理与边缘部署实践

1. 从“cloudflare-os”这个名字说起:它到底想解决什么问题第一次看到cloudflare-os这个仓库名,我下意识以为 Cloudflare 又出了什么边缘操作系统。点进去翻了翻目录结构和提交记录才反应过来,这其实是一个把 Cloudflare Workers 当作“运行时…

📰

AI+BI如何优化企业实时决策与监控系统

1. 为什么AIBI正在重塑企业决策模式?在零售门店的凌晨盘点时段,店长手机突然弹出预警:某畅销商品库存仅剩3天销量。与此同时,系统自动生成补货建议单,并同步调整了周边门店的调拨方案。这种实时决策场景,正…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

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

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

📞 💬