#text #overlap #splitting #chunks #langchain #amounts #splitter

character_text_splitter

一个用于将文本分割成重叠块段的Rust库,旨在高效处理大量文本。实现与langchain的CharacterTextSplitter相同。

4个版本

0.1.3 2023年6月26日
0.1.2 2023年6月25日
0.1.1 2023年6月25日
0.1.0 2023年6月25日

文本处理类别中排名第800

MIT许可协议

7KB
92行(不包括注释)

TextSplitter - Rust

TextSplitter是一个Rust库,可以将文本分割成指定大小的块段,并可选择重叠。

此库复制了Python Langchain库中找到的CharacterTextSplitter的功能,为Rust用户提供相同的文本分割功能。它设计简单易用,无需依赖项,是任何项目的轻量级补充。

功能

  • 将文本分割成特定大小的块段
  • 可选重叠块段
  • 可选提供自定义分隔符进行分割

安装

将以下内容添加到您的Cargo.toml文件中

[dependencies]
character_text_splitter = "0.1.2"

用法

导入库并使用CharacterTextSplitter结构来分割您的文本。

use character_text_splitter::CharacterTextSplitter;

let text = "your text here...";

let splitter = CharacterTextSplitter::new();
let chunks = splitter.split_text(text);

for chunk in chunks {
    println!("{}", chunk);
}

您还可以指定块段大小、块段重叠大小或库要使用的分隔符,如下所示

    let splitter = CharacterTextSplitter::new()
        .with_chunk_size(300)
        .with_chunk_overlap(50)
        .with_separator(". ");

chunk_size的默认值是200chunk_overlap40,默认separator\n\n

许可协议

本项目采用MIT许可协议 - 有关详细信息,请参阅LICENSE文件。

无运行时依赖项