Экстрактор — специальный модуль, который извлекает информацию из документов и превращает ее в чанки. В дальнейшем чанки используются LLM-моделью для поиска в базе знаний.
Экстрактор состоит из двух частей:
Парсер — блок с настройками извлечения информации из источников.
Сплиттер — блок с настройками разделения извлеченной информации на чанки.
Для некоторых расширений файлов также доступна продвинутая настройка экстракторов.
При работе с экстрактором вы можете выбрать один из нескольких типов сплиттеров. Это позволяет подобрать оптимальную логику разбиения документов на чанки. Доступные сплиттеры зависят от расширения файла.
Сплиттер | Описание |
|---|---|
Рекурсивный символьный сплиттер | Делит текст по заданному разделителю и склеивает получившиеся участки в рамках допустимого размера чанка. Если текст между разделителями превышает размер чанка, такой фрагмент превысит лимит и не разделится. Подходит для всех типов файлов. |
Символьный сплиттер | Делит текст по списку разделителей по очереди. Следующий разделитель применится только к тем фрагментам, которые все еще слишком большие. Мелкие соседние фрагменты при этом объединятся обратно.
|
Рекурсивный JSON сплиттер | Делит данные по их структуре, от верхнеуровневых объектов до вложенных без ввода разделителей. Подходит для JSON и JSONL-файлов. |
Markdown сплиттер | Делит текст по заголовкам. Разделы, превышающие размер чанка, делит по абзацам. Подходит для простого текста, таблицы и блоки кода может разорвать. Подходит для markdown-файлов. |
Markdown Smart сплиттер | Собирает чанки из целых структурных элементов:
Не разрывает их, пока они помещаются в размер чанка. Подходит для markdown и PDF-файлов, а также для работы с изображениями. |
HTML сплиттер | Понимает разметку страницы, делит по заголовкам и смысловым блокам, сохраняет таблицы и ссылки. Мелкие блоки объединяются в один чанк, крупные делятся. Подходит для HTML-файлов. |
Word сплиттер | Объединяет идущие подряд малые элементы и делит слишком крупные элементы с учетом их типа: таблицы делятся по строкам, а распознанный текст по markdown-разметке. Подходит для DOC и DOCX-файлов. |
Excel сплиттер | Делит большие листы по строкам и колонкам и сохраняет привязку чанка к диапазону ячеек. Мелкие текстовые фрагменты объединяются с соседними. Подходит для Excel-файлов. |
CSV сплиттер | Cобирает подряд идущие строки файла в один чанк пока не достигнут лимит размера, после чего выводит их таблицей с заголовком. Строка, которая сама превышает лимит, делится по полям. Подходит для CSV и TSV-файлов. |
Вы также можете не делить текст на чанки, то есть не использовать сплиттер при обработке файлов экстрактором.