分享AI实践与思考
入门
上手
教程
基础
概念解释
Microsoft Foundry
开发工具
操作指南
参考
治理与网络
工具与知识
概念解释
操作指南
Agent Service
总览
概念解释
Azure OpenAI
API 与开发
总览
Azure AI Search
权限与安全
参考
检索概念
概念解释
快速上手
教程
Foundry Tools
其他与已退役
总览
概念解释
RAG 与知识工程
智能体与工具
MCP 与 Skills
操作指南
基础
评测、观测与安全
安全
评测
概念解释
参考
企业架构与成本
解决方案场景
样例与学习资源
附录
分块策略
分块(chunking)是把长文档切成较小片段,使其既能放进模型的输入上限,又能让向量或关键词检索落在语义完整的粒度上。本页比较常见切分方式的取舍。
为什么要分块
- 嵌入模型与聊天模型都有输入 token 上限。页面举例:text-embedding-3-small 的最大输入为 8,191 token(原文数字,以官方页面为准)。
- 超出上限会被截断,造成数据丢失。
- 主题混杂的长页面整体向量化时,语义会被平均掉,细粒度分块通常效果更好。
- 对检索增强生成(RAG)与代理式检索同样适用。
常见策略对比
策略 | 做法 | 优点 | 风险 | Azure AI Search 内置支持(页面列出) |
固定大小 | 固定长度,并保留一定重叠 | 简单、可预测 | 可能切断句子或段落 | Text Split 技能(按字符) |
可变大小 | 按句末标点、换行或标题切分 | 保留句子结构 | 块长度不一 | Content Understanding 技能,或 Text Split 按句切分 |
语义分块 | 按语义单元切分,可跨页 | 上下文更连贯 | 成本与实现复杂度更高 | Content Understanding 技能(输出 Markdown) |
组合 | 固定与可变结合;中段分块附加文档标题 | 灵活,可防止上下文丢失 | 需要自行实现 | 无内置 |
文档解析 | 把大文档解析为多条检索文档(一对多索引) | 无需显式切块 | 严格说不是分块 | Markdown 或 JSON blob 索引 |
Text Split 参数
参数 | 说明 |
textSplitMode | pages(默认,块由多个句子组成)或 sentences(单句为一块) |
maximumPageLength | pages 模式下每块的最大长度,按字符计或按 token 计(token 计量为预览版本能力:待核实) |
pageOverlapLength | 相邻块重叠的长度;必须小于最大长度的一半 |
maximumPagesToTake | 从文档中最多取的块数,0 表示全部 |
页面注明:字符数与 LLM 计量的 token 数不等价,两者差异取决于内容。
起点建议(页面给出,未在本站复现实验)
方式 | 建议起点 | 说明 |
固定大小(按 token) | 512 token(约 2000 字符),重叠 25%(约 128 token) | 页面称重叠可保证块间过渡平滑 |
Text Split(按字符) | maximumPageLength 2000,pageOverlapLength 500 | 页面称为默认起点 |
重叠过大时可能出现几乎没有重叠的情况,需要按样本检查(页面示例中的做法)。
选择时要考虑的因素
因素 | 影响 |
文档形态与密度 | 需要保留完整段落时,用较大块并保留句子结构 |
用户问题类型 | 针对具体事实的问题,较大块加重叠更利于保留上下文 |
下游模型 | 摘要与嵌入模型的最佳块长不同,需找到兼顾各模型的取值 |
结构化程度 | 高度结构化的数据通常需要较少重叠;叙述性文本可以多一些 |
限制与待核实
- 页面中的示例(NASA 电子书)显示,参数变化会显著改变块数,但这是单一样本,不宜直接套用到其他语料。
- 按 token 分块的能力在预览版 API 中提供,GA 状态与参数名:待核实(2026-11-05 获取)。
- 嵌入模型的输入上限会随模型版本变化,使用前需核对当前模型文档:待核实。
- 本页未评估任一策略的检索质量,取值应以自有评测为准。
来源与核对
- 来源:https://learn.microsoft.com/en-us/azure/search/vector-search-how-to-chunk-documents
- read_scope:正文已读(分块页面,2026-11-05 抓取)。
- 待核实(2026-11-05 获取):token 分块的预览状态、模型输入上限的当前值。
上一篇
索引字段设计
下一篇
语义排序
Loading...