Настройки индексации
Индексация базы знаний делится на несколько этапов:
- Обработка данных — преобразование текста в формат MD.
- Чанкинг — разбиение текста на фрагменты (чанки).
- Векторизация — преобразование полученных чанков в векторные представления (эмбеддинги).
На вкладке Настройки → Индексация вы можете менять параметры для чанкинга и векторизации.
Чанкинг
Параметр Способ разделения текста определяет, каким образом текст будет разбит на части.
- По предложениям
- С помощью LLM
Текст будет разбит на части по словам.
Укажите максимальное количество символов в чанке. Допустим в настройке Максимальный размер чанка указано значение 70.
У вас есть фрагмент текста из 2 предложений, каждое из которых по 100 символов. При чанкине текст будет разбит на 3 чанка:Как будет разбит текст
Выберите язык источников, чтобы текст был разбит на части корректно. Если ваши источники на нескольких языках, выберите язык, на котором будут чаще всего отправлять запросы базе знаний.
Текст будет разбит на части с помощью языковой модели. В таком случае чанки будут учитывать иерархическую структуру текста — заголовки, абзацы, названия разделов и документа.
Для этого типа чанкинга доступны дополнительные настройки:
- Средний размер чанков в токенах — если текстовая единица меньше указанного значения, то она не будет разбиваться на более мелкие смысловые части, например документ на главы или главы на подглавы.
- Использовать чанкинг для больших таблиц — если включено, большие таблицы, которые модель не может обработать самостоятельно, будут разбиты на части. В каждом чанке будет включена строка с заголовками столбцов. Это позволяет модели лучше понять структуру данных и сгенерировать более точный ответ.
- Модель — выберите одну из доступных языковых моделей. При поиске чанков с помощью LLM вам будут доступны только модели, которые поддерживают function calling — он позволяет модели запрашивать чанки.
- Максимальное количество токенов в запросе — определяет максимальное количество токенов, которое может быть отправлено в LLM.
- Максимальное количество токенов в ответе — определяет максимальное количество токенов, которое может быть сгенерировано LLM за одну итерацию.
- Температура — регулирует креативность ответов. При более высоких значениях результаты будут более творческими и менее предсказуемыми. Рекомендуем менять или температуру, или Top P, но не оба параметра одновременно.
- Top P — регулирует разнообразность ответов. При низких значениях нейросеть выбирает из меньшего количества вероятных слов, но при высоких — ответ может получиться разнообразнее. Рекомендуем менять или Top P, или температуру, но не оба параметра одновременно.
- Presence penalty — влияет на многообразие слов и фраз в ответах. Более высокие значения помогут избавиться от повторов.
- Frequency penalty — контролирует частоту повторений слов и фраз в ответах. Более высокие значения помогут избавиться от повторов.
Чтобы посмотреть, на какие части разделен ваш источник, скачайте архив с чанками:
- Перейдите в раздел Источники и наведите курсор на нужный источник.
- Нажмите → Архив чанков.
При тестировании базы знаний вы также сможете посмотреть, какие чанки были выбраны для подготовки ответа.
Векторизация
Вы можете выбрать модель для векторизации текста. Она будет использоваться не только для векторизации ваших данных, но и запросов от пользователей:
- text-embedding-3-large — модель от компании OpenAI. При ее использовании ваши данные будут отправляться на зарубежный сервер.
- intfloat/multilingual-e5-large — модель, размещенная на серверах компании Just AI, которые находятся в России.