AI Lab запускает новое направлениеПодробнее
ailab
Отчёт

Бот знает о базе только то, что нашёл поиск

Почему бот «по вашим документам» не читает базу целиком, как он находит нужный фрагмент и от чего зависит качество его ответов.

В базе десять тысяч документов. Сотрудник спрашивает бота: «Какая неустойка в договоре с поставщиком?» Бот отвечает верно и даёт ссылку на пункт договора. Хотя прочитал он при этом не всю базу, а всего несколько небольших кусков.

Вся база в один запрос не влезает

Кажется, что бот «по вашим документам» каждый раз просматривает всю базу. Это не так. У любой модели есть предел того, сколько текста можно передать ей за один раз. Даже у самых мощных моделей на сегодня этот предел велик, но это технический потолок, а не «вся база компании». Десятки тысяч договоров, инструкций и писем в него не помещаются.

Поэтому системы, которые отвечают по документам, устроены по-другому.

Базу заранее режут на куски

Сначала, ещё до первого вопроса, базу делят на небольшие части — примерно по паре абзацев. Каждую часть система готовит к поиску по смыслу.

Когда приходит вопрос, система ищет не совпадение слов, а близость смысла. Сотрудник мог написать «штраф», а в договоре стоит «неустойка» — поиск по смыслу всё равно найдёт нужный пункт.

Найденных кусков немного. Например, у одного из облачных инструментов по умолчанию берётся пять ближайших. Это типовая настройка, а не правило для любого бота. Бот получает вопрос вместе с этими кусками и отвечает только по ним.

Что из этого следует

О ваших документах бот знает ровно то, что нашёл поиск. Если поиск достал нужный пункт договора — ответ будет точным и со ссылкой. Если не достал — бот ответит по тому, что нашлось, и может ошибиться.

Отсюда два практических вывода:

  • Хороший бот — это прежде всего хороший поиск. Как базу режут на куски и как ищут ближайшие, влияет на ответы больше, чем кажется.
  • Порядок в документах важен. Устаревшие версии договоров, дубли и файлы без понятных названий мешают поиску найти нужное: вместо действующего пункта в найденные куски может попасть старый.

Как проверить своего бота

Задайте ему вопрос, ответ на который вы знаете, и попросите показать источник. Если бот ссылается на нужный документ и пункт, поиск работает. Если источник не тот или его нет — проблема, скорее всего, не в самом боте, а в поиске или в базе.

Коротко

  • Вся база в один запрос не помещается даже у самых мощных моделей.
  • Базу заранее режут на куски по паре абзацев.
  • На вопрос поиск по смыслу находит несколько ближайших кусков, и бот отвечает по ним.
  • Качество бота — это качество поиска и порядок в документах.

Цифры в ролике — условный пример.

Почему бот не читает базу целиком? Десять тысяч документов — а читает пять кусков.Десять тысяч документов в базе — а бот прочитал только пять кусков.Какая неустойка в договоре с поставщиком?Вся база: Кажется, бот читает всю базу.Куски: Поэтому базу заранее режут на части по паре абзацев.В бизнесе: О ваших документах бот знает ровно то, что нашёл поиск.Итог: Пять нужных кусков — и Эрлан получил ответ со ссылкой на пункт договора.
Слайды поста

Этот материал в соцсетяхInstagramFacebookThreadsTelegram

Расскажите о задаче

Разберём процессы, покажем, что можно автоматизировать, и оценим сроки. Без обязательств.