Настройки поиска чанков
Чтобы перейти к параметрам поиска чанков, выберите в меню Настройки → Поиск.
Настройка Метод поиска чанков определяет, каким образом чанки будут извлекаться из источников для последующей обработки — повторного ранжирования или генерации ответа:
- По сходству эмбеддингов — система сравнивает векторное представление запроса пользователя с векторными представлениями чанков (эмбеддингами).
- С помощью LLM — языковая модель сама инициирует поиск чанков, анализирует их и запрашивает дополнительные. Поиск будет окончен, когда модель найдет наиболее подходящие чанки.
Состав настроек зависит от выбранного метода поиска чанков.
- По сходству эмбеддингов
- С помощью LLM
Параметры поиска чанков в источниках
-
Количество результатов поиска — количество найденных чанков, которые будут переданы для дальнейшей обработки.
подсказкаЕсли вы планируете использовать повторное ранжирование, увеличьте количество результатов поиска. Это позволит выбирать подходящие чанки из большего числа кандидатов.
-
Количество соседних чанков — количество соседних чанков каждого найденного чанка, которые будут переданы вместе с ним. Соседние чанки помогают модели лучше понять контекст запроса и сгенерировать более точный ответ.
Например, если Количество результатов поиска равно 10, а Количество соседних чанков — 3, то к каждому найденному чанку добавится еще по 3 чанка до и после него. Таким образом объем найденного чанка увеличится, в итоге для дальнейшей обработки будут переданы 10 «больших» чанков.
-
Поиск по метаданным чанков — если включен, система будет искать подходящие чанки не только по их контенту, но и по дополнительным полям, которые были заполнены в процессе индексации.
-
Перефразировать запрос пользователя — если включено, система попытается перефразировать запрос пользователя, чтобы он стал понятнее. Это может улучшить качество поиска.
Вы можете отредактировать промт для перефразирования запроса, если требуется.
-
Полнотекстовый поиск — если включен, в дополнение к семантическому поиску будет использоваться полнотекстовый.
Семантический поиск отбирает чанки, подходящие по смыслу, даже если слова из запроса отсутствуют. Полнотекстовый поиск учитывает только совпадения со словами из запроса.
Выберите стратегию использования полнотекстового поиска:
-
Гибридный поиск объединяет результаты семантического и полнотекстового поиска, предоставляя как чанки, подходящие по смыслу, так и содержащие слова из запроса. Итоговое количество результатов не превышает Количество результатов поиска, указанное выше.
-
Взвешенный поиск позволяет комбинировать результаты семантического и полнотекстового поиска в нужном соотношении.
Укажите максимальное количество результатов каждого вида поиска, которое можно включить в итоговый список для дальнейшей обработки.
Например, если Количество результатов поиска равно 10, Порция семантики — 8, а Порция полнотекстового поиска — 4, вначале отбирается по 10 результатов каждого вида поиска. Затем результаты объединяются, отбрасываются повторы (чанки, найденные обоими видами поиска) и результаты сверх указанных порций. Итоговое количество результатов — не более 12 (8 + 4).
-
С порогом: в первую очередь выполняется семантический поиск, но если он не предоставил достаточно релевантных результатов — применяется полнотекстовый.
Укажите пороговую оценку релевантности для результатов семантического поиска. Если все результаты ниже порога, поиск переключается на полнотекстовый.
-
-
Учет истории диалога — если включено, система будет учитывать предыдущие запросы пользователя при поиске чанков. Это позволяет модели лучше понимать контекст и генерировать более точные ответы.
Для учета истории вы можете модифицировать следующие настройки:
- Промт;
- Максимальный размер истории диалога, в токенах, который может быть отправлен в LLM;
- Минимальное количество запросов пользователя в истории диалога.
предупреждениеЕсли размер истории превышает ограничение по токенам, сообщения удаляются по одному, пока не будет достигнут нужный размер или минимальное количество запросов пользователя. Если минимальное количество запросов достигнуто раньше, история отправляется в LLM с превышением размера, что может привести к ошибке. Если ошибка повторяется, рекомендуем уменьшить минимальное количество запросов в истории.
Повторное ранжирование
Повторное ранжирование выполняется после извлечения чанков из документов-источников, чтобы заново оценить их релевантность запросу пользователя и отобрать наиболее подходящие. Если найденные чанки соответствуют запросу достаточно хорошо, повторное ранжирование можно отключить.
Выберите способ повторного ранжирования:
- Эмпирическое — используется алгоритм, основанный на опыте Just AI.
- С помощью модели — используется специальная модель-реранкер.
Эмпирическое ранжирование работает быстрее, чем ранжирование с помощью модели, но менее точно.
Настройки повторного ранжирования зависят от выбранного способа.
- Эмпирическое
- С помощью модели
- Количество результатов поиска — максимальное количество результатов, которые после повторного ранжирования будут отправлены в LLM вместе с запросом пользователя для генерации ответа.
- Количество результатов из одного документа — настройка полезна, чтобы чанки из одного документа-источника не заняли весь контекст при подготовке ответа.
- Пороговая оценка — результаты с оценкой релевантности ниже порога не будут использоваться для генерации ответа.
- Максимальное отличие от лучшей оценки, в % — допустимое отклонение от оценки самого релевантного чанка. Результаты, оценка которых отличается сильнее, не будут использоваться для генерации ответа.
- Количество результатов поиска — максимальное количество результатов, которые после повторного ранжирования будут отправлены в LLM вместе с запросом пользователя для генерации ответа.
- Модель — модель, которая выполняет повторное ранжирование.
Аббревиатуры
Если в ваших документах-источниках используются аббревиатуры и другие сокращения, которые отличаются от общепринятых, вы можете сделать их понятными системе. Для этого загрузите список таких аббревиатур с расшифровкой в виде файла формата JSON. Шаблон файла можно скачать в интерфейсе.
-
Количество результатов поиска — количество найденных чанков, которые будут переданы для дальнейшей обработки.
-
Количество соседних чанков — количество соседних чанков каждого найденного чанка, которые будут переданы вместе с ним. Соседние чанки помогают модели лучше понять контекст запроса и сгенерировать более точный ответ.
Например, если Количество результатов поиска равно 10, а Количество соседних чанков — 3, то к каждому найденному чанку добавится еще по 3 чанка до и после него. Таким образом объем найденного чанка увеличится, в итоге для дальнейшей обработки будут переданы 10 «больших» чанков.
При поиске чанков с помощью LLM используются также настройки LLM, указанные в разделе Настройки → Генерация.