Text Chunker

v0.1.0Ajouté le 26 sept. 2026Données d'exemple

Découpage récursif de texte pour le RAG. Coupe les documents aux limites de paragraphes, de phrases et de mots en fragments de taille cible, avec chevauchement.

cargo install kura-rs
kura add text-chunker

Copie 2 fichiers source dans votre projet. Le code vous appartient ensuite.

Si un autre outil installe déjà une commande kura, lance cargo install kura-rs --bin kura-rs et utilise kura-rs add à la place.

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

Vérification

Données d'exemple

Vérifié par rapport à langchain-text-splitters 0.3.8 (Python). Méthode : Tests différentiels. Les mêmes entrées sont fournies aux deux implémentations, puis leurs sorties sont comparées.

Référence
langchain-text-splitters
Python 0.3.8
Cas de test
2 400
Tests différentiels
Réussis
2 400 / 2 400
Tous les cas concordent
Dernière exécution
26 sept. 2026
UTC

Ces valeurs sont fictives. Elles n'ont pas encore été mesurées et ne doivent pas être lues comme des résultats réels. Ce composant est marqué "sample": true dans son fichier de registre.

Benchmarks

Données d'exemple

kura-rs (Rust) comparé à langchain-text-splitters sur plusieurs tailles d'entrée. Plus rapide pour toutes les tailles d'entrée mesurées, jusqu'à 26× plus rapide.

Ces valeurs sont fictives. Elles n'ont pas encore été mesurées et ne doivent pas être lues comme des résultats réels. Ce composant est marqué "sample": true dans son fichier de registre.

kura-rs (Rust)langchain-text-splitters
Temps d'exécution par itération (plus bas = meilleur).
Afficher le tableau de données
Taille d'entréekura-rs (Rust)langchain-text-splittersAccélération
10,08 ms0,9 ms11×
100,4 ms6,2 ms16×
1003,1 ms71 ms23×
1 00029 ms720 ms25×
10 000290 ms7,4 s26×

Fichiers

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

Dépendances (crates)