Text Chunker
v0.1.0Adicionado em 26 de set. de 2026Dados de exemploDivisor de texto recursivo para RAG. Separa documentos em limites de parágrafo, frase e palavra em blocos de tamanho-alvo, com sobreposição.
Dados de exemplo. Estes valores são provisórios, não medições.
cargo install kura-rs
kura add text-chunkerCopia 2 arquivos de código-fonte para o seu projeto. A partir daí, o código é seu.
Se outra ferramenta já instala um comando kura, execute cargo install kura-rs --bin kura-rs e use kura-rs add no lugar.
use crate::parts::text_chunker::Chunker;
let chunker = Chunker::new(1_000).overlap(200);
for chunk in chunker.split(&document) {
index.add(chunk.text, chunk.range);
}Verificação
Dados de exemploVerificado com langchain-text-splitters 0.3.8 (Python). Método: Teste diferencial. As mesmas entradas são enviadas às duas implementações e as saídas são comparadas.
Estes números são provisórios. Eles ainda não foram medidos e não devem ser lidos como resultados reais. Esta peça está marcada como "sample": true no seu arquivo do registry.
Benchmarks
Dados de exemplokura-rs (Rust) comparado com langchain-text-splitters em vários tamanhos de entrada. Mais rápido em todos os tamanhos de entrada medidos, até 26× mais rápido.
Estes números são provisórios. Eles ainda não foram medidos e não devem ser lidos como resultados reais. Esta peça está marcada como "sample": true no seu arquivo do registry.
Mostrar tabela de dados
| Tamanho da entrada | kura-rs (Rust) | langchain-text-splitters | Aceleração |
|---|---|---|---|
| 1 | 0,08 ms | 0,9 ms | 11× |
| 10 | 0,4 ms | 6,2 ms | 16× |
| 100 | 3,1 ms | 71 ms | 23× |
| 1.000 | 29 ms | 720 ms | 25× |
| 10.000 | 290 ms | 7,4 s | 26× |
Arquivos
- parts/text_chunker/mod.rs
- parts/text_chunker/boundaries.rs