Text Chunker

v0.1.0Hinzugefügt am 26. Sept. 2026Beispieldaten

Rekursiver Text-Splitter für RAG. Teilt Dokumente an Absatz-, Satz- und Wortgrenzen in Chunks mit Zielgröße und Überlappung.

cargo install kura-rs
kura add text-chunker

Kopiert 2 Quelldateien in dein Projekt. Ab dann gehört der Code dir.

Wenn ein anderes Tool bereits einen kura-Befehl installiert, führe cargo install kura-rs --bin kura-rs aus und nutze stattdessen kura-rs add.

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);
}

Verifikation

Beispieldaten

Geprüft gegen langchain-text-splitters 0.3.8 (Python). Verfahren: Differenzielles Testen. Beide Implementierungen erhalten dieselben Eingaben, die Ausgaben werden verglichen.

Referenz
langchain-text-splitters
Python 0.3.8
Testfälle
2.400
Differenzielles Testen
Bestanden
2.400 / 2.400
Alle Fälle stimmen überein
Letzter Lauf
26. Sept. 2026
UTC

Diese Werte sind Platzhalter. Sie wurden noch nicht gemessen und dürfen nicht als echte Ergebnisse gelesen werden. Dieser Baustein ist in seiner Registry-Datei mit "sample": true markiert.

Benchmarks

Beispieldaten

kura-rs (Rust) im Vergleich zu langchain-text-splitters über verschiedene Eingabegrößen. Bei jeder gemessenen Eingabegröße schneller, bis zu 26× schneller.

Diese Werte sind Platzhalter. Sie wurden noch nicht gemessen und dürfen nicht als echte Ergebnisse gelesen werden. Dieser Baustein ist in seiner Registry-Datei mit "sample": true markiert.

kura-rs (Rust)langchain-text-splitters
Laufzeit pro Durchlauf (niedriger ist besser).
Datentabelle anzeigen
Eingabegrößekura-rs (Rust)langchain-text-splittersSpeedup
10,08 ms0,9 ms11×
100,4 ms6,2 ms16×
1003,1 ms71 ms23×
1.00029 ms720 ms25×
10.000290 ms7,4 s26×

Dateien

  • parts/text_chunker/mod.rs
  • parts/text_chunker/boundaries.rs

Crate-Abhängigkeiten