news 2026/9/8 19:03:36

langchain1.X学习笔记-39-RAG之文档切分器(一)字符文本切分器CharacterTextSplitter和递归RecursiveCharacterTextSplitter

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
langchain1.X学习笔记-39-RAG之文档切分器(一)字符文本切分器CharacterTextSplitter和递归RecursiveCharacterTextSplitter

文章目录

  • 1 文档切分器Text Splitters
    • 1.1 为什么分割/切分/分块
    • 1.2 Chunking拆分的策略
    • 1.3 TextSplitter源码分析
      • 1.3.1 split_text(text)
      • 1.3.2 create_documents(texts, metadatas=None)
      • 1.3.3 split_documents(documents)
  • 2 具体实现
    • 2.1 CharacterTextSplitter:Split by character
      • 2.1.1 举例1:字符串文本的分割
      • 2.1.2 举例2:指定分割符
      • 2.1.3 举例3:指定分割符
    • 2.2 RecursiveCharacterTextSplitter:最常用
      • 2.2.1 举例1:使用split_text(传字符串)
      • 2.2.2 举例2:使用create_documents(传字符串列表)
      • 2.2.3 逐步分割过程
      • 2.2.4 举例3:使用create_documents(加载本地字符串列表)
      • 2.2.5 举例4:使用split_documents(传文档列表)
      • 2.2.6 举例5:自定义分隔符
    • 2.3 RecursiveCharacterTextSplitter底层原理
      • 2.3.1 先拆分
      • 2.3.2 后合并
      • 2.3.3 直观理解

字符文本切分器。CharacterTextSplitter和递归字符文本切分器RecursiveCharacterTextSplitter。
split_text(字符串),create_documents(字符串列表),split_documents(文档列表)。

1 文档切分器Text Splitters

可视化展示文本如何分割的工具

1.1 为什么分割/切分/分块

获取Document对象后,需要将其切分成一个个小块(Chunk)。之所以要进行切分是出于以下考虑:
(1)长文档问题:大模型存在最大输入的Token限制 ,如果一个 Document非常大 ,在输入大模型时会被截断 ,导致信息缺失。
(2)检索精度:Document可能包含非常多无关的信息 ,这些无效信息会干扰大模型的生成,而小块检索更精准。
(3)成本控制:减少不必要的token消耗 。
无论是在存储还是检索过程中,都以这些块(chunk)为基本单位,这样能有效地避免内容噪声干扰和超出最大 Token 的问题。

1.2 Chunking拆分的策略

方法1:根据句子切分:这种方法按照自然句子边界进行切分,以保持语义完整性。

方法2:按照固定字符数来切分:这种策略根据特定的字符数量来划分文本,但可能会在不适当的位置切断句子。

方法3

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/8 19:03:08

STM32C5A3R开发(4)----输出PWM及修改频率与占空比

STM32C5A3R开发.4--输出PWM及修改频率与占空比概述视频教学样品申请源码下载硬件准备参考程序生成STM32CUBEMX2时钟树配置DEBUG配置TIM1基础参数生成项目导入STM32CubeIDEPWM mode 工作原理定义修改 PSC 和 ARR根据目标频率自动计算 PSC设置通道占空比启动 PWM 输出主程序演示概…

作者头像 李华
网站建设 2026/9/8 19:02:45

四旋翼无人机PID双环控制Simulink仿真与调参

简介:这套四旋翼无人机Simulink仿真方案以PID控制为核心,面向自动化、电子信息、计算机、数学等专业学生的课程设计、期末大作业与毕业设计,也适合刚接触无人机建模与控制的初学者对照实践。压缩包共包含11个文件,包括7个.slx仿真…

作者头像 李华
网站建设 2026/9/8 19:02:25

STM32C5A3R开发(6)----DAC固定电压输出

STM32C5A3R开发.6--DAC固定电压输出概述视频教学样品申请源码下载硬件准备参考程序生成STM32CUBEMX2时钟树配置DEBUG配置串口配置DAC配置生成项目导入STM32CubeIDE设置工程编码添加头文件printf 重定向变量定义主程序测试结果概述 本章介绍如何使用 STM32C5 片内 DAC 实现固定…

作者头像 李华
网站建设 2026/9/8 19:00:28

2026数字员工与SaaW:从概念到落地实践指南

1. 数字员工与SaaW:从概念炒作到2026年的真实生意过去几年,“数字员工”这四个字几乎每次行业峰会都会出现,但说实话,早年的数字员工更像是给RPA(机器人流程自动化)换了个营销马甲。直到大模型技术真正落地…

作者头像 李华
网站建设 2026/9/8 19:00:23

数字员工与SaaW:企业劳动力变革的底层逻辑

数字员工这个词,这两年已经被说烂了。但真正让我觉得赛道开始变味的,是最近接连看到好几份报告把“数字员工”和“帮你自动填个表”画等号。作为一个从RPA时代一路做到智能体落地的老从业者,我想借“全球真实数字员工与SaaW商业全景报告 2026…

作者头像 李华