支持的方法
Chonkie 提供了多个分块器,可高效地为RAG应用程序拆分文本。以下是可用分块器的简要概述:
-
TokenChunker:将文本分割成固定大小的标记块。
-
WordChunker:根据单词将文本分成块。
-
SentenceChunker:根据句子将文本分成块。
-
SemanticChunker:根据语义相似性将文本分成块。
-
SDPMChunker:使用语义双重合并方法分割文本。
基准(VS LangChain LlamaIndex)
尺寸
-
默认安装: 9.7MB(其他版本为 80-171MB)
-
具有语义:仍然比竞争对手更轻!
速度
-
token分块:比最慢的替代方案快 33 倍
-
句子分块:比竞争对手快近 2 倍
-
语义分块:比其他方法快 2.5 倍
####
pip install chonkie
# First import the chunker you want from Chonkie
from chonkie import TokenChunker
# Import your favorite tokenizer library
# Also supports AutoTokenizers, TikToken and AutoTikTokenizer
from tokenizers import Tokenizer
tokenizer = Tokenizer.from_pretrained("gpt2")
# Initialize the chunker
chunker = TokenChunker(tokenizer)
# Chunk some text
chunks = chunker("Woah! Chonkie, the chunking library is so cool! I love the tiny hippo hehe.")
# Access chunks
for chunk in chunks:
print(f"Chunk: {chunk.text}")
print(f"Tokens: {chunk.token_count}")
https://github.com/bhavnicksm/chonkie
https://pypi.org/project/chonkie/
(文:PaperAgent)