当前位置:   article > 正文

Langchain分割方式_langchain charactertextsplitter

langchain charactertextsplitter

Langchain提供了很多文本切割的工具,其中langchain默认使用RecursiveCharacterTextSplitter:

  • RecursiveCharacterTextSplitter():按字符串分割文本,递归地尝试按不同的分隔符进行分割文本。
  • CharacterTextSplitter():按字符来分割文本。
  • MarkdownHeaderTextSplitter():基于指定的标题来分割markdown 文件。
  • TokenTextSplitter():按token来分割文本。
  • SentenceTransformersTokenTextSplitter() : 按token来分割文本
  • Language() - 用于 CPP、Python、Ruby、Markdown 等。
  • NLTKTextSplitter():使用 NLTK(自然语言工具包)按句子分割文本。
  • SpacyTextSplitter() - 使用 Spacy按句子的切割文本。

使用例子:

  1. from langchain.text_splitter import RecursiveCharacterTextSplitter, CharacterTextSplitter
  2. r_splitter = RecursiveCharacterTextSplitter(
  3. chunk_size=26, #chunk length
  4. chunk_overlap=4, #overlapping string length
  5. # separators=["\n\n", "\n", " ", ""] #Default separator characters
  6. # separators=["\n\n", "\n", "(?<=\. )", " ", ""] # 分割标识有以.结尾
  7. )
  8. #Split string
  9. text1 = 'abcdefghijklmnopqrstuvwxyz'
  10. r_splitter.split_text(text1)##
  1. c_splitter = CharacterTextSplitter(
  2. chunk_size=26,分割长度
  3. chunk_overlap=4# 重复数字个数
  4. # separator = ' ' #分割字符
  5. )
  6. text3 = "a b c d e f g h i j k l m n o p q r s t u v w x y z"
  7. c_splitter.split_text(text3)
  1. from langchain.text_splitter import CharacterTextSplitter
  2. #创建分割器
  3. text_splitter = CharacterTextSplitter(
  4. separator="\n", # 设置单换行符作为分隔符
  5. chunk_size=1000, # 设置块的大小为1000个字符
  6. chunk_overlap=150, # 设置重叠字符为150个字符
  7. length_function=len # 长度函数设置为python的len函数
  8. )
  9. #分割文档
  10. docs = text_splitter.split_documents(pages)
  1. from langchain.text_splitter import TokenTextSplitter
  2. text_splitter = TokenTextSplitter(chunk_size=1, chunk_overlap=0)
  3. text1 = "foo bar bazzyfoo"
  4. text_splitter.split_text(text1)
  5. # 如果是文档,则下面分割 pages是打开的文档
  6. text_splitter = TokenTextSplitter(chunk_size=10, chunk_overlap=0)
  7. docs = text_splitter.split_documents(pages)
  8. len(docs)
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/990277
推荐阅读
相关标签
  

闽ICP备14008679号