Chonkie: легкая библиотека для разбивки текста на части в RAG
Общее введение
Chonkie - это легкая и эффективная библиотека RAG (Retrieval-Augmented Generation) для разбиения текста на куски, призванная помочь разработчикам быстро и легко разбивать текст на куски. Библиотека поддерживает различные методы чанкинга, включая чанкинг на основе лексем, слов, предложений и семантического сходства, и подходит для широкого спектра задач обработки текстов и естественного языка. Для установки по умолчанию требуется всего 21 МБ (другие аналогичные продукты требуют 80-171 МБ) Поддерживает все основные чанкеры.
Список функций
- TokenChunker: Разделяет текст на блоки маркеров фиксированного размера.
- WordChunker: Разделите текст на фрагменты на основе слов.
- SentenceChunker: Разделите текст на фрагменты на основе предложений.
- SemanticChunker: Разделение текста на фрагменты на основе семантического сходства.
- SDPMChunker: Сегментация текста с использованием семантического подхода двойного слияния.
Использование помощи
монтаж
Чтобы установить Chonkie, просто выполните следующую команду:
pip install chonkie
Chonkie следует принципу минимальной установки по умолчанию и рекомендует устанавливать определенные чанкеры по мере необходимости, или все, если вы не хотите учитывать зависимости (не рекомендуется).
pip install chonkie[all]
пользоваться
Вот базовый пример, который поможет вам быстро освоиться:
- Сначала импортируйте нужный чанкер:
from chonkie import TokenChunker
- Импортируйте вашу любимую библиотеку токенизаторов (поддерживаются AutoTokenizers, TikToken и AutoTikTokenizer):
from tokenizers import Tokenizer tokenizer = Tokenizer.from_pretrained("gpt2")
- Инициализируйте чанкер:
chunker = TokenChunker(tokenizer)
- Разбивка текста на части:
chunks = chunker("Woah! Chonkie, the chunking library is so cool! I love the tiny hippo hehe.")
- Получите доступ к результатам разбивки на части:
for chunk in chunks: print(f"Chunk: {chunk.text}") print(f"Tokens: {chunk.token_count}")
Методы поддержки
Chonkie предлагает широкий спектр чанкеров, которые помогут вам эффективно создавать и распределять чанки для RAG Приложение разбивает текст на части. Ниже приведен краткий обзор доступных чанкеров:
- TokenChunker: Разделяет текст на блоки маркеров фиксированного размера.
- WordChunker: Разделите текст на фрагменты на основе слов.
- SentenceChunker: Разделите текст на фрагменты на основе предложений.
- SemanticChunker: Разделение текста на фрагменты на основе семантического сходства.
- SDPMChunker: Сегментация текста с использованием семантического подхода двойного слияния.
бенчмаркинг
Chonkie демонстрирует хорошие результаты в нескольких бенчмарках:
- размеры: Установка по умолчанию занимает всего 9,7 МБ (по сравнению с 80-171 МБ для других версий), что все равно меньше, чем у конкурентов, даже если включить семантический чанкинг.
- темп: Теговый кусок в 33 раза быстрее самой медленной альтернативы, кусок предложений почти в 2 раза быстрее конкурентов, а семантический кусок в 2,5 раза быстрее других методов.
Подробная процедура работы
- установщик: Установите Chonkie и необходимые библиотеки таггеров с помощью pip.
- библиотека импорта: Импортируйте Chonkie и библиотеку тегеров в свои скрипты на Python.
- Инициализация чанкера: Выберите и инициализируйте подходящий чанкер для ваших нужд.
- фрагментированный текст: Разбейте текст на куски, используя инициализированный чанкер.
- результат: Итерация результатов разбивки для дальнейшей обработки или анализа.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...