cargo install kura-rs
kura add text-chunker2 個のソースファイルを自分のプロジェクトにコピーします。以後、コードはあなたのものです。
別のツールの kura コマンドとぶつかる場合は、cargo install kura-rs --bin kura-rs で入れて 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);
}検証
サンプルデータlangchain-text-splitters 0.3.8(Python)と差分テストで比較しました。同じ入力を両方の実装に与え、出力を突き合わせています。
参照実装
langchain-text-splitters
Python 0.3.8
テストケース
2,400
差分テスト
成功
2,400 / 2,400
すべて一致
最終実行
2026年9月26日
UTC
この数値は仮のものです。 まだ計測していないため、実際の結果として読まないでください。この部品のレジストリファイルには "sample": true が付いています。
ベンチマーク
サンプルデータ入力サイズごとに kura-rs(Rust)と langchain-text-splitters を比べています。 計測したすべての入力サイズで速い。最大 26× 速い。
この数値は仮のものです。 まだ計測していないため、実際の結果として読まないでください。この部品のレジストリファイルには "sample": true が付いています。
kura-rs (Rust)langchain-text-splitters
数値の表を見る
| 入力サイズ | kura-rs (Rust) | langchain-text-splitters | 倍率 |
|---|---|---|---|
| 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× |
ファイル
- parts/text_chunker/mod.rs
- parts/text_chunker/boundaries.rs