Chonkie:轻量高效的 RAG 分块库,支持 Token、单词、句子和语义相似性等多种分块方法
Chonkie 是一个轻量级、快速且功能丰富的 RAG 分块库,支持多种分块方法,适用于各种自然语言处理任务。
·
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
🚀 快速阅读
- Chonkie 是一个轻量级、快速且功能丰富的 RAG 分块库。
- 支持基于 Token、单词、句子和语义的多种分块方法。
- 易于安装和使用,提供高效的分块处理能力。
正文(附运行示例)
Chonkie 是什么
Chonkie 是一个轻量级、快速且功能丰富的 RAG(Retrieval-Augmented Generation)分块库,专为文本处理设计。Chonkie 支持基于 Token、单词、句子和语义的多种分块方法,易于安装和使用,无冗余,适合各种自然语言处理任务。Chonkie 以其高效性能和广泛的 tokenizer 支持,成为开发者在构建 RAG 应用时的首选库。
Chonkie 的主要功能
- 多种分块方法:支持基于 Token、单词、句子和语义相似性的文本分块。
- 易于使用:安装、导入和运行分块过程简单快捷。
- 高性能:提供快速的分块处理能力,优化了分块速度。
- 广泛的支持:支持多种 tokenizer,易于集成到不同的 NLP 项目中。
- 轻量级:没有不必要的依赖和冗余,保持库的轻量化。
- 灵活性:根据需要选择安装特定的分块器或全部安装。
Chonkie 的技术原理
- 分块(Chunking):分块是将长文本分割成更小的、易于管理和处理的块的过程。
- Tokenization:Chonkie 用 tokenizer 将文本分割成 Token,这是 NLP 中常见的预处理步骤,有助于后续的分块操作。
- 固定大小分块:例如,
TokenChunker
将文本分割成固定数量 Token 的块,对保持模型输入的一致性非常有用。 - 基于内容的分块:
- WordChunker:基于单词的分块,将文本分割成单词序列。
- SentenceChunker:基于句子的分块,使用句子边界来分割文本。
- SemanticChunker:基于语义相似性的分块,用句子嵌入和相似性度量确定分块的边界。
- 双遍语义合并(SDPM):
SDPMChunker
用双遍语义合并方法来分割文本,首先合并句子,然后根据合并后的句子的语义相似性进行分块。 - 优化和效率:Chonkie 在设计时考虑性能和效率,减少不必要的计算和优化算法提高分块速度。
如何运行 Chonkie
安装
要安装 Chonkie,只需运行以下命令:
pip install chonkie
如果您需要安装所有分块器,可以使用以下命令(不推荐,除非您确实需要所有功能):
pip install chonkie[all]
使用示例
以下是一个基本的使用示例:
# 首先导入所需的分块器
from chonkie import TokenChunker
# 导入您喜欢的 tokenizer 库
# 也支持 AutoTokenizers, TikToken 和 AutoTikTokenizer
from tokenizers import Tokenizer
tokenizer = Tokenizer.from_pretrained("gpt2")
# 初始化分块器
chunker = TokenChunker(tokenizer)
# 对文本进行分块
chunks = chunker("哇!Chonkie,这个分块库真是太酷了!我喜欢这只小小的河马。")
# 访问分块结果
for chunk in chunks:
print(f"分块: {chunk.text}")
print(f"Token 数量: {chunk.token_count}")
资源
- 项目官网:https://pypi.org/project/chonkie/
- GitHub 仓库:https://github.com/bhavnicksm/chonkie
- 官方文档:https://github.com/bhavnicksm/chonkie/blob/main/DOCS.md
- 基准测试:https://github.com/bhavnicksm/chonkie/tree/main/benchmarks/README.md
❤️ 如果你也关注大模型与 AI 的发展现状,且对大模型应用开发非常感兴趣,我会快速跟你分享最新的感兴趣的 AI 应用和热点信息,也会不定期分享自己的想法和开源实例,欢迎关注我哦!
🥦 微信公众号|搜一搜:蚝油菜花 🥦
更多推荐
所有评论(0)