
在RAG(检索增强生成)系统中,文档拆分是决定最终效果的核心预处理环节——分块逻辑不合理,即便选用顶级大模型,也难以发挥最佳效果。本文聚焦LlamaIndex的NodeParser拆分策略,系统解析其核心类型与差异,重点拆解中文文档的适配技巧,同时精选适配中文的LangChain分词器,提供可直接套用的实操方案,新手也能快速上手。
一、LlamaIndex NodeParser核心拆分策略大盘点
LlamaIndex的NodeParser提供从基础到智能的全场景拆分逻辑,核心策略可归纳为4类,适配不同文档类型与精度需求:
1. 固定大小拆分(基础款)
这是最基础直观的拆分方式,核心逻辑是按预设字符数或Token数切割文本。为避免跨块信息丢失,一般会保留相邻块的部分重叠内容(Overlap),以此保障上下文衔接。
适用场景:结构简单的文本、快速搭建基线模型、对块大小有严格限制的场景。核心优势:实现逻辑极简、处理速度极快,块大小统一,便于批量管理与后续检索调度;核心不足:完全无视语义边界,易在完整句子或语义单元中间“拦腰斩断”,破坏文本连贯性。
2. 语义拆分(智能款)
进阶的智能拆分方案,核心是按文本语义关联性切割。先将文本拆分为句子级基础单元,再通过嵌入模型(如BAAI/bge-m3)计算相邻单元的语义类似度,将类似度高的单元合并为一个块,直至类似度显著下降时再创建新块,以此保障块内语义聚焦。
适用场景:问答系统、聊天机器人、论述性长文本等对语义连贯性要求高的场景。核心优势:最大程度保留上下文完整性,显著提升后续检索与生成的精度;核心不足:依赖嵌入模型的质量与稳定性,计算成本高于固定大小拆分,且类似度阈值需结合文档类型调试。
3. 主题拆分(精准款)
通过大语言模型(LLM)识别文档中的主题转换节点,实现语义层面的精准分割。可配置最大块大小、类似性计算方法等参数,确保每个块对应一个完整主题,避免跨主题混合。
适用场景:论文、报告等主题清晰的长文档,以及对分块语义精准度要求极高的场景。核心优势:分块逻辑性极强,能精准匹配文档的主题结构;核心不足:依赖LLM的文本理解与生成能力,可能出现轻微改写(影响原文一致性),且处理速度相对较慢。
4. 递归拆分(通用款)
采用“分而治之”的核心思路,优先使用高优先级分隔符(如段落、章节标记)拆分;若拆分后的块仍超出预设大小,则使用低优先级分隔符(如句子结束符、逗号)递归切割,直至所有块符合大小要求。
适用场景:绝大多数类型文档,尤其适合结构不规整但有基础层级的文本(如新闻、博客、手册)。核心优势:完美平衡语义完整性与块大小控制,比固定大小拆分更尊重原文自然结构,是日常开发中通用性最强的拆分策略。
二、LlamaIndex 核心分词器详解
LlamaIndex的分词器与NodeParser拆分策略深度绑定,核心作用是将文本转换为可量化计算的单元(字符/Token),为拆分逻辑提供基础依据。其核心分词器共5类,分别适配不同拆分场景与精度需求:
1. 类型一:CharacterSplitter(字符级分词器)
● 核心定位:最基础的字符级分词工具,按指定字符(如换行、逗号)或固定字符长度切割文本,是NodeParser中固定大小拆分、递归拆分策略的默认依赖分词器。
● 具体使用方式:
|
python |
● 优点:实现逻辑极简,无任何外部模型依赖,处理速度极快;支持自定义分隔符,适配各类简单文本;兼容性强,可与所有NodeParser拆分策略搭配使用。
● 缺点:无语义识别能力,仅按字符切割,易破坏词语、句子的完整性;对中文文本适配性差,无法识别中文词语边界,单独使用时语义割裂问题尤为明显。
2. 类型二:TokenSplitter(Token级分词器)
● 核心定位:基于大模型Token规则的分词工具,按Token数量拆分文本,能精准匹配大模型上下文窗口限制,核心用于需严格控制Token量的拆分场景(如GPT-3.5 4k上下文)。
● 具体使用方式:
|
python |
● 优点:Token计数精准,能严格控制拆分后文本块的Token量,避免超出模型上下文限制;适配各类大模型分词规则(如GPT、通义千问);结合拆分策略使用时,可减少Token浪费。
● 缺点:依赖外部模型分词器(需提前配置tiktoken等库及模型环境);无语义理解能力,仅按Token数量切割,可能拆分完整语义单元;处理速度略慢于CharacterSplitter,受分词器性能影响。
3. 类型三:SentenceSplitter(句子级分词器,含中文适配版)
● 核心定位:按句子边界拆分文本的语义级分词工具,核心依赖分句器实现句子识别;中文场景需额外集成jieba、HanLP等中文分句工具,是NodeParser语义拆分、主题拆分策略的核心依赖。
● 具体使用方式(中文适配版):
|
python |
● 优点:能精准识别句子边界,最大程度保留单句语义完整性;中文适配版可解决中文无天然分隔符的痛点,显著减少语义割裂;是语义拆分、主题拆分的最佳搭档,能直接提升后续检索精度。
● 缺点:中文场景需额外集成第三方分句工具(如jieba),配置稍复杂;处理速度慢于前两类分词器,依赖分句函数的精度;长句较多时,可能导致单块Token数超标,需额外搭配Token校验逻辑。
4. 类型四:SentenceWindowSplitter(句子窗口分词器)
● 核心定位:专为强上下文关联需求设计的分词器,以单个句子为核心,自动携带前后相邻句子作为“上下文窗口”,形成“核心句+上下文”的文本块,核心适配问答、对话等需上下文支撑的场景。
● 具体使用方式:
|
Plain Text |
● 优点:能精准保留核心句的上下文信息,大幅提升问答场景的答案准确性;支持自定义窗口大小,适配不同上下文需求;中文场景可通过设置分隔符(如“。”)适配分句逻辑,灵活度高。
● 缺点:窗口大小需结合场景调试——过大易导致冗余信息过多,过小则上下文不足;依赖分句精度,分句错误会直接影响窗口效果;处理速度比基础分词器慢,需额外计算句子边界。
5. 类型五:SemanticSplitter(语义分词器)
● 核心定位:深度融合语义理解的智能分词器,无需提前分句,直接基于文本语义类似度拆分,可自动识别语义断点,是语义拆分策略的进阶升级工具,适配复杂文本场景。
● 具体使用方式:
|
Plain Text |
● 优点:语义拆分精度最高,能自动规避“语义割裂”问题;无需手动设置分句规则,适配各类复杂中文文本;可直接对接各类嵌入模型,灵活性强。
● 缺点:严重依赖嵌入模型的性能与稳定性,中文场景需优先选用中文优化嵌入模型(如BAAI/bge-m3-zh);计算成本高,处理速度最慢;类似度阈值需结合文档类型反复调试,上手难度较高。
三、四大拆分策略核心异同对比
为协助大家快速匹配适合的拆分策略,整理核心维度对比表如下(重点标注中文适配相关特性):
|
对比维度 |
固定大小拆分 |
语义拆分 |
主题拆分 |
递归拆分 |
|
核心逻辑 |
按固定字符/Token长度切割,无视语义 |
基于嵌入模型计算语义类似度,聚合类似单元 |
通过LLM识别主题转换,按主题边界切割 |
按分隔符优先级(如段落>句子>标点)递归切割 |
|
处理速度 |
★★★★★ 最快(无额外计算) |
★★★☆☆ 中等(需计算语义类似度) |
★☆☆☆☆ 最慢(依赖LLM主题识别) |
★★★☆☆ 中等(仅解析分隔符) |
|
语义完整性 |
★☆☆☆☆ 最差(易割裂句子/词语) |
★★★★☆ 较好(保留语义关联单元) |
★★★★★ 最好(单块对应完整主题) |
★★★☆☆ 中等(尊重自然分隔,少量割裂) |
|
依赖外部模型 |
无(纯规则切割) |
需嵌入模型(如BAAI/bge-m3) |
需大语言模型(如GPT、通义千问) |
无(纯规则切割) |
|
默认分词器 |
CharacterSplitter/TokenSplitter |
SentenceSplitter/SemanticSplitter |
SentenceSplitter(先分句再识别主题) |
CharacterSplitter(按分隔符切割) |
|
中文适配难度 |
★★★★☆ 较难(无天然分隔,易割裂语义) |
★★☆☆☆ 较易(需中文嵌入模型适配) |
★☆☆☆☆ 易(LLM对中文主题识别精准) |
★☆☆☆☆ 易(自定义中文分隔符即可) |
|
适用场景 |
简单文本、快速搭基线、Token严格受限场景 |
问答系统、长文本理解、需精准检索场景 |
论文、报告等主题清晰的专业文档 |
新闻、博客、手册等通用/结构不规整文本 |
四、中文文档专属:2类拆分策略优先选
中文文档的拆分痛点与英文存在本质差异——无天然单词分隔符、句子边界模糊且语义密度高,直接套用英文拆分逻辑,极易出现“断句生硬”“语义割裂”等问题。结合中文文本处理实践,以下2类策略为最优解,同时明确不推荐方案及核心避坑要点:
1. 首选方案:递归拆分(中文专属适配)
核心逻辑:彻底放弃英文默认的空格分隔逻辑,按中文文本自然结构优先级拆分,最大程度保留语义完整性。推荐分隔符优先级排序:【段落换行】>【。!?】(句子结束符)>【,、;】(句内停顿符)>【空格】,优先在自然语义断点切割,从根源上避免“拦腰斩断”完整表达。
实操核心参数(可直接套用):块大小提议设置为384-768 Token(中文单Token承载的语义密度低于英文,过大易导致冗余);块重叠(Overlap)设为64-128 Token,重点覆盖跨句、跨段落的衔接语义,避免拆分后上下文断层。
2. 进阶方案:递归+语义双层拆分(专业文档必选)
若处理技术手册、学术论文、法律文本等专业中文文档,单一拆分策略难以平衡“块粒度”与“语义精度”,推荐采用“递归粗分+语义微调”的双层方案:
第一步(粗分):用递归拆分按中文分隔符逻辑拆分,得到基础文本块(块大小可略大,如768 Token),快速梳理文档结构;第二步(微调):接入中文优化嵌入模型(如通义千问嵌入、BAAI/bge-m3-zh),计算基础块间的语义类似度,合并语义高度关联的块,拆分语义断点明显的块。
避坑关键:① 坚决避免使用英文嵌入模型(如text-embedding-3-small),否则会出现中文语义判断偏差;② 类似度阈值提议设为95%百分位(基于中文语义类似度分布优化),既保证块内语义聚焦,又避免块过大导致检索冗余。
明确不推荐:纯固定大小拆分(仅极简场景可用)
除非是“短文本批量处理”“快速搭建基线模型”等极简场景,否则不提议直接使用纯固定大小拆分中文文本。这类方案的核心问题是“无视语义边界”:简单句(如“我爱吃火锅,你喜爱吗”)拆分影响较小,但复杂技术句(如“大模型的训练依赖数据质量、算法优化和算力支撑三大核心要素”)被拆分后,会直接破坏逻辑链,导致后续检索时无法匹配完整语义。
注:上述中文拆分策略可与本节推荐的LangChain中文分词器搭配使用,具体组合方案见第六章总结。
补充说明:中文拆分的核心原则
无论选用哪种拆分策略,中文场景需坚守两个核心原则:① 优先尊重中文自然结构(段落、标点),避免强行按长度切割;② 块大小与重叠率需适配中文语义密度,无需照搬英文场景的参数(如英文常用1024 Token,中文384-768 Token更合适)。
注:若需快速验证拆分效果,可先按推荐参数搭建基础版本,再通过检索准确率反向调试块大小与重叠率。
进阶优化:拆分效果的验证方法
拆分效果直接影响RAG系统性能,推荐两种简单验证方法:① 人工抽检:随机查看10-20个文本块,确认无明显语义割裂;② 检索测试:用核心问题检索,查看返回的文本块是否能覆盖答案所需语义。
避坑提醒:验证时需重点关注专业术语、复杂长句的拆分效果——若出现“术语被拆”“长句断章取义”,需优先调整分隔符或分词器(如替换为Jieba/HanLP分词)。
兜底方案:极简场景的拆分提议
若处于项目初期,需快速搭建基线模型,可临时使用纯固定大小拆分,但需满足两个条件:① 文本为短文本(单句/短句为主);② 后续需尽快替换为递归拆分或双层拆分方案,避免影响最终效果。
五、LangChain 全部分词器详解(中文适配+LlamaIndex集成)
LangChain的分词器(TextSplitter)核心作用是为文档拆分提供基础切割逻辑,按核心原理可分为7类(基础类、通用类、Token级、句子级、格式专属类、代码专属类、中文集成类)。其中部分需集成第三方工具适配中文,且多数可通过自定义逻辑集成到LlamaIndex中使用。以下是完整解析:
一、LangChain 全部分词器类型
1. 基础类:CharacterTextSplitter(字符级分词器)
● 核心定位:最基础的字符级切割工具,按固定字符长度或指定分隔符拆分,无任何外部依赖,是所有分词器的“基础款”,适合简单场景快速落地。
● 具体使用方式:
|
Plain Text |
● 优点:实现逻辑极简,处理速度极快,无任何外部依赖;支持自定义分隔符,适配各类简单文本场景。
● 缺点:无语义识别能力,易割裂句子/词语;原生不适配中文(无中文词语边界识别能力),需手动配置中文专属分隔符才能勉强使用。
2. 通用类:RecursiveCharacterTextSplitter(递归字符分词器)
● 核心定位:LangChain最常用的通用分词器,是CharacterTextSplitter的“进阶版”——按分隔符优先级递归切割,优先级从高到低(如段落>句子>标点),切割失败时按字符长度兜底,平衡效果与效率。
● 具体使用方式(中文适配版):
|
Plain Text “, ” |
● 优点:通用性极强,完美平衡语义完整性与切割效率;支持自定义中文分隔符,适配大多数中文通用场景;无任何外部依赖,部署简单。
● 缺点:仍无语义理解能力,复杂长句(如技术句、法律句)可能出现割裂;中文分句完全依赖分隔符配置,标点不规范(如无句号、逗号混用)时效果大幅下降。
3. Token 级:TokenTextSplitter(Token级分词器)
● 核心定位:按大模型Token数量切割文本,能精准匹配模型上下文窗口限制,核心用于需严格控制Token量的场景(如长文本批量处理、模型上下文紧张),需依赖大模型分词器(如OpenAI Tokenizer)。
● 具体使用方式:
|
Plain Text |
● 优点:Token计数精准,能严格避免超出模型上下文限制;适配各类大模型编码规则(如GPT、通义千问),兼容性强。
● 缺点:依赖外部编码模型(需安装tiktoken等库);无语义识别能力,可能拆分完整语义单元;中文场景下虽Token计数精准,但切割仍按Token长度,完全无视语义边界,割裂风险高。
4. 句子级:SentenceTransformersTokenTextSplitter(句子级分词器)
● 核心定位:基于Sentence-BERT模型的句子级切割工具,核心优势是精准识别句子边界,确保单句语义完整,适配需要精准句子单元的场景(如嵌入向量生成、句子级检索)。
● 具体使用方式:
|
Plain Text |
● 优点:原生支持句子边界识别,语义完整性显著优于字符/Token级分词器;无缝适配嵌入模型场景,能提升向量生成的精准度。
● 缺点:依赖Sentence-BERT模型(需安装sentence-transformers库);原生中文句子识别精度一般,需额外集成jieba等中文分句工具优化;处理速度中等,不适配超大规模文本。
5. 格式专属:MarkdownTextSplitter(Markdown 专属分词器)
● 核心定位:专为Markdown文档设计的格式专属分词器,按Markdown语法结构(如标题、列表、代码块)拆分,能完美保留文档原生格式层级,避免格式混乱。
● 具体使用方式:
|
Plain Text “] |
● 优点:能精准识别Markdown语法边界,拆分后仍可正常渲染;适合技术文档、博客、知识库等Markdown格式场景,格式兼容性强。
● 缺点:仅适配Markdown格式,通用性差;中文文本的拆分仍依赖标点分隔,原生无中文优化,需额外配置中文分隔符。
6. 格式专属:PythonCodeTextSplitter(Python 代码专属分词器)
● 核心定位:专为Python代码设计的代码专属分词器,按代码语法结构(如函数、类、注释块)拆分,能避免拆分完整代码逻辑(如函数体被截断)。
● 具体使用方式:
|
Plain Text |
● 优点:精准识别Python代码语法边界,能完美保留函数、类、注释块等核心逻辑;适合代码库、技术文档中的Python代码片段拆分,适配开发者场景。
● 缺点:仅适配Python代码,应用场景极窄;与中文文本适配无关,仅在中文技术文档包含Python代码时可能用到。
7. 第三方集成: JiebaTextSplitter/HanLPTextSplitter(中文专属分词器)
● 核心定位:LangChain中文场景的核心优选分词器,通过集成中文专用分词工具(jieba/HanLP)实现中文词语级/语义级拆分,能精准识别中文词语边界,解决原生分词器的中文适配痛点。
● 具体使用方式(需先安装依赖:`pip install jieba hanlp`):
|
Plain Text |
● 优点(jieba版):分词速度快、准确率高,支持自定义词典优化专业术语;轻量易安装(单条pip命令即可),适配大多数通用中文场景(新闻、商业文档等)。
● 优点(HanLP版):支持词性标注、命名实体识别,能精准拆分专业术语/复杂长句;适配学术、法律、技术等专业中文场景,语义理解能力更强。
● 缺点(jieba版):对古文、极专业的垂直领域术语(如医疗、航天)拆分精度稍弱;无原生语义识别能力,仅能做词语级拆分。
● 缺点(HanLP版):安装依赖多,部分模型需额外下载;处理速度比jieba慢;配置稍复杂,新手需额外学习基础用法。
二、LangChain全部分词器多维度对比
|
分词器类型 |
核心逻辑 |
中文适配性 |
处理速度 |
准确率(中文) |
外部依赖 |
支持LlamaIndex集成 |
适用场景 |
|
CharacterTextSplitter |
字符长度/自定义分隔符 |
差(需手动配分隔符) |
★★★★★ 极快 |
低(易割裂词语) |
无 |
是 |
简单文本、快速搭基线 |
|
RecursiveCharacterTextSplitter |
分隔符优先级递归切割 |
中(适配中文分隔符后可用) |
★★★★☆ 快 |
中(避免部分语义割裂) |
无 |
是 |
通用文本、大多数中文场景 |
|
TokenTextSplitter |
大模型Token数量限制 |
中(Token计数准,切割无语义) |
★★★☆☆ 中等 |
中(Token精准,语义割裂) |
有(tiktoken等编码库) |
是 |
需严格控制Token量的场景 |
|
SentenceTransformersTokenTextSplitter |
句子边界识别+Token限制 |
中(中文句子识别精度一般) |
★★★☆☆ 中等 |
中(句子级完整,词语可能割裂) |
有(sentence-transformers) |
是 |
嵌入向量生成、句子级拆分场景 |
|
MarkdownTextSplitter |
Markdown语法结构切割 |
中(需配中文分隔符) |
★★★☆☆ 中等 |
中(格式保留好,语义一般) |
无 |
是 |
Markdown格式中文技术文档 |
|
PythonCodeTextSplitter |
Python代码语法切割 |
无(与中文适配无关) |
★★★☆☆ 中等 |
高(代码逻辑保留好) |
无 |
是 |
Python代码库、中文技术文档中的代码 |
|
JiebaTextSplitter |
jieba中文词语级切割 |
高(适配通用中文) |
★★★★☆ 较快 |
高(词语边界识别准) |
有(jieba库) |
是 |
通用中文文本、商业文档 |
|
HanLPTextSplitter |
HanLP中文语义级切割 |
极高(适配专业中文) |
★★☆☆☆ 中等 |
极高(专业术语/长句精准) |
有(hanlp库+模型) |
是 |
学术、法律、技术等专业中文文档 |
三、中文文档优选:3类LangChain分词器(按优先级排序,新手直接抄)
1. 首选:JiebaTextSplitter(通用中文场景)
● 核心优势:词语级拆分精准,支持自定义词典优化专业术语;能平衡速度与精度,轻量易部署,是大多数中文通用场景的“最优解”。
● 适配技巧:若处理医疗、金融等垂直领域文本,可导入自定义词典(格式:术语 词性,如“大语言模型 n”),通过`jieba.load_userdict(“custom_dict.txt”)`加载,避免专业术语被拆分。
2. 进阶:HanLPTextSplitter(专业中文场景)
● 核心优势:不仅能拆分词语,还支持词性标注、命名实体识别,可精准解决学术论文、法律条文、技术手册中“复杂长句拆分”“专业术语识别”等核心痛点。
● 适配技巧:优先选择HanLP中文优化模型(如`hanlp.load(“CTB9_CONVSEG”)`适合通用场景,`hanlp.load(“PKU_NAME_MERGE”)`适合命名实体识别);若追求速度,可关闭词性标注等非必要功能。
3. 兜底:RecursiveCharacterTextSplitter(快速落地场景)
● 核心优势:无任何外部依赖,通过配置中文专属分隔符即可快速落地;适合快速搭建基线模型、处理标点规范的简单中文文本(如新闻稿、普通通知)。
● 适配技巧:严格按中文语义优先级配置分隔符:`[”
“, ”
“, “。”, “!”, “?”, “,”, “、”]`,最大程度避免语义割裂。
四、LangChain分词器集成到LlamaIndex:3类核心方案(附完整代码)
LangChain分词器无法直接替换LlamaIndex的原生分词器,但可通过“自定义拆分函数”实现集成——核心逻辑是:用LangChain分词器完成文本切割,再将切割后的文本块封装为LlamaIndex所需的Node格式。以下是3类核心适配分词器的完整集成示例:
1. 集成 JiebaTextSplitter(最常用)
|
Plain Text |
2. 集成 HanLPTextSplitter(专业场景)
|
Plain Text |
3. 集成 RecursiveCharacterTextSplitter(快速落地)
|
Plain Text “, ” |
● 关键说明:集成后可同时享受两大框架的优势——LangChain分词器的中文适配能力,以及LlamaIndex的Node管理、元数据关联等核心功能。新手推荐优先集成JiebaTextSplitter(平衡速度与精度),专业场景再思考HanLPTextSplitter。
LangChain本身没有专属中文分词器,但可通过集成第三方分词工具实现优化,结合中文文档特点,推荐3类高效果分词方案:
1. 基础款:RecursiveCharacterTextSplitter(适配中文配置)
这是LangChain的通用分词器,无需额外安装第三方库,通过自定义分隔符即可适配中文。核心优势是轻量、速度快,适合大多数通用场景(如新闻、博客、普通报告)。
实操代码片段:
|
python “, ” |
2. 进阶款:jieba分词器(通用精准型)
jieba是中文分词领域的“国民工具”,分词准确率高、支持自定义词典,适合处理通用中文文本。通过LangChain的自定义分割函数集成,可解决专业术语拆分不准的问题。
优势:处理日常文本、商业文档效果极佳,速度快于HanLP;不足:对古文或极专业的技术术语支持稍弱。
3. 专业款:HanLP分词器(学术/专业文本首选)
适合处理学术论文、法律文档、技术手册等专业中文文本,支持词性标注、命名实体识别,能精准拆分复杂长句和专业术语。
核心优势:语义理解能力强,可减少专业内容的拆分误差;不足:安装依赖稍多,处理速度比jieba慢,适合对精度要求高于速度的场景。
效果对比总结
|
分词器方案 |
中文适配性 |
准确率(中文) |
处理速度 |
外部依赖 |
核心适用场景 |
|
RecursiveCharacterTextSplitter(中文配置) |
中(需自定义中文分隔符) |
中等(依赖分隔符精度,易割裂复杂语义) |
★★★★★ 极快 |
无(纯规则切割,零依赖) |
通用文本、快速搭基线、标点规范的简单文本 |
|
jieba+LangChain(JiebaTextSplitter) |
高(词语级拆分,适配通用中文) |
高(词语边界精准,支持自定义词典优化专业术语) |
★★★★☆ 较快 |
有(需安装jieba库) |
日常文本、商业文档、可自定义词典适配垂直领域(医疗/金融) |
|
HanLP+LangChain(HanLPTextSplitter) |
极高(语义级拆分,适配复杂中文) |
极高(专业术语/长句精准,支持词性标注/命名实体识别) |
★★☆☆☆ 中等 |
有(需安装hanlp库+下载中文模型) |
学术论文、法律条文、技术手册等高精度专业中文文档 |
六、总结:中文文档拆分与分词最优组合方案
1. 快速落地场景:优先采用「LlamaIndex 递归拆分(配置中文专属分隔符)+ LangChain RecursiveCharacterTextSplitter」组合。无需额外依赖第三方工具,既能快速完成部署,又能通过中文分隔符配置保障基础语义完整性。
2. 通用精准场景:推荐「LlamaIndex 递归+语义双层拆分 + LangChain JiebaTextSplitter」组合。依托 Jieba 精准的中文词语级拆分能力,搭配双层拆分策略平衡粒度与精度,适配新闻、博客、商业文档等绝大多数通用中文场景。
3. 专业深度场景:选用「LlamaIndex 主题+语义拆分组合 + LangChain HanLPTextSplitter」方案。借助 HanLP 强劲的专业术语识别、词性标注及语义分析能力,可精准处理学术论文、法律条文、技术手册等对拆分精度要求极高的场景。
核心提醒:拆分与分词无绝对最优解,需结合具体文档类型(如新闻、论文、手册)与业务核心需求(优先速度/优先精度)开展小范围测试。提议重点调试块大小(中文场景推荐 384-768 Token)、块重叠率(64-128 Token 为宜)等关键参数,最终敲定适配自身场景的最优配置。




