一个轻量级RAG文本切块项目Chonkie

Chonkie:实用的RAG分块库,轻量级、速度快,可随时对文本进行分块

支持的方法

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 AutoTikTokenizerfrom tokenizers import Tokenizer tokenizer = Tokenizer.from_pretrained("gpt2")
# Initialize the chunkerchunker = TokenChunker(tokenizer)
# Chunk some textchunks = chunker("Woah! Chonkie, the chunking library is so cool! I love the tiny hippo hehe.")
# Access chunksfor chunk in chunks: print(f"Chunk: {chunk.text}") print(f"Tokens: {chunk.token_count}")

https://github.com/bhavnicksm/chonkiehttps://pypi.org/project/chonkie/

(文:PaperAgent)

欢迎分享

发表评论