Все статьиAI

База знаний для AI-агента: что собрать и как проверить, что он отвечает по ней

Команда МТС готовила базу о 100+ продуктах для ассистента менеджеров: разметка разделов, таблицы и проверка на 72 вопросах по трём продуктам. Что из этого взять небольшой компании.

Клиентские менеджеры МТС готовились к встречам через Telegram-бота: разведка по ИНН, подбор продуктов, шаблонные подсказки. Исследование отдела продаж показало, что больше всего времени уходит на подготовку к разговору с клиентом, и команда CVM B2B взялась за ассистента, который отвечает на вопросы по 100+ B2B-продуктам со ссылкой на источник в документации. Отвечает он только по тому, что лежит в базе знаний, которую для него собрали.

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

Внутренняя база знаний в компании была, и у команды, которая её ведёт, был собственный поиск по ней. Но исходных данных она не отдавала, а API базы для этой задачи оказался бесполезен. Поэтому страницы пришлось разбирать парсером и собирать содержимое заново.

Почему справочник контактов отвечал на вопросы о продуктах

Устройство базы стало видно после выгрузки. У некоторых продуктов вложенность доходит до шести уровней, а рекорд команды с такой структурой: 77 подстраниц у одного продукта.

Поэтому структуру закрепили в самом тексте. Заголовок первого уровня в разметке равен продукту, ниже идёт вложенность страниц. К каждому фрагменту добавили «хлебные крошки», путь до раздела, чтобы фрагмент нёс с собой своё место в базе. Таблицы привели к единому виду, а ссылки из текста удалили как мусорные. Отдельным правилом записали, что делать, когда ответа нет: если данных нет на внутренних ресурсах, ассистент честно говорит «не нашёл».

Сама база тоже ломала ответы. Разделы без категории получали метку general, и справочник «Контакты» с телефонами выходил в топ на вопросы вида «чем X отличается от Y». Метрики по таким вопросам стремились к нулю: человек спрашивал про разницу двух продуктов, а получал телефонный справочник.

Проверяли это набором из 72 контрольных вопросов: три продукта из сотни, пять категорий. Часть вопросов составили руками, часть сгенерировали, ответы оценивала языковая модель-судья. Остальные продукты из сотни эти вопросы не затронули.

В рабочей версии результат разошёлся с тем, что получали на своей машине. Большинство метрик упало, выросла только достоверность ответа, и авторы объясняют это тем, что модель чаще отвечает «информация в документации не найдена».

Проверка базы знаний для AI-агента до запуска

У небольшой компании нет ни сотни продуктов, ни 77 подстраниц. Но три поломки повторяются и на десятке услуг: раздел, по которому непонятно, о чём он; таблица, разорванная на части; выдуманный ответ там, где в базе ничего нет.

Что проверить в базе до запуска агента
Что ломаетсяКак это выглядитЧто сделать до запуска
Раздел без пометки, о чём онНа вопрос о разнице двух услуг агент приносит справочник контактовПроставить каждому разделу тему или продукт и путь до него в базе
Таблица, разорванная при нарезкеАгент называет срок или цену из соседней строкиПривести таблицы к единому виду, расшифровать аббревиатуры рядом с таблицей
Ответа в базе нетАгент придумывает ответПрописать правило: нет во внутренних документах, агент отвечает «не нашёл»
Дубли и устаревшие версииДва фрагмента отвечают по-разному на один вопросПрогнать базу на похожие пары и сводить их руками
Непонятно, кто отвечает за базуРегламент поменялся, в базе осталась прежняя версияНазначить владельца базы и срок обновления

Таблица, разорванная на границе фрагментов, даёт неверную цифру. В разборе помощника по 300+ регламентам агент назвал неверный срок подготовки коммерческого предложения: шапка таблицы попала в один фрагмент, а строки со сроками в другой. После структурной нарезки и глоссария аббревиатур оценка корректности на 20 вопросах в три прогона выросла с 0,377 до 0,586, и автор разбора сам предупреждает, что читать это как «агент верен на 58,6%» нельзя.

Контрольные вопросы не нужно сочинять. Они уже есть в переписке с клиентами и в вопросах новых сотрудников. Наберите столько, сколько закрывает ваши ходовые темы: у команды МТС на три продукта ушло 72 вопроса. На этом же наборе видны два признака, что база ещё не готова: агент отвечает «не нашёл» на вопрос, ответ на который в документах есть, и в ответ на вопрос о продукте выходит посторонний раздел. Пока держится хотя бы один из них, запускать агента на клиентов рано.

По словам разработчика хелпдеска, до запуска стоит ответить на один вопрос: сможет ли новый сотрудник работать только по имеющейся документации. Если нет, сначала приводят в порядок знания компании, и только потом ставят агента. Тот же разработчик замечает, что у маленьких компаний часто нет оцифрованных регламентов.

Читайте такжеЧто умеет ИИ-ассистент для бизнеса и где у него предел

Файл в чате базой знаний не становится

Вторая линия техподдержки МТС Web Services начинала с выгрузки Confluence в JSON и загрузки этого файла в чат с моделью. Минусы вылезли сразу: каждый пользователь должен сам загружать файл, файл требуется обновлять, и есть ограничение на размер.

Вместо файла собрали базу с поиском: фрагменты по 2000-3000 символов с перекрытием 150-200, обновление раз в 30 минут и только изменённых страниц. Проверяли по списку запросов с эталонными ответами и ссылками, а сотрудники параллельно пользовались обычным поиском и заводили задачи на плохие ответы. Количественные метрики, по их словам, измерить пока сложно.

Кроме устаревших страниц в базе копятся дубли. В сервисе пополнения базы по обращениям в поддержку проба на 264 обращениях и базе из 54 фрагментов дала 191 кандидата: 33 новых, 93 на обновление, 35 уже покрытых, 30 на проверку. Редактор принял 33 новых, и база выросла до 87 активных фрагментов. На тестовой базе из 134 фрагментов нашлось 14 групп возможных дублей, но автоудаление включать не стали: ложное объединение опаснее пропущенного дубля.

Личная папка файлов, которую агент читает в начале работы, живёт по тем же правилам. Замеров у неё нет: инженерная команда, которая такую папку ведёт, прямо пишет, что формальных измерений сэкономленного времени пока не делала. Открытый вопрос у неё тот же, что у корпоративной базы: как находить устаревшие решения, чтобы агент на них не опирался.

Читайте такжеВторой мозг для AI-агента: какие файлы вести, чтобы работа продолжалась между сессиями

Коротко

  1. Решите, на что агент отвечает Выпишите темы и продукты, по которым он обязан дать ответ. Остальное в базу пока не кладите.
  2. Соберите контрольные вопросы Возьмите реальные вопросы клиентов и новых сотрудников, запишите к ним верные ответы и проверяйте базу на этом наборе до запуска.
  3. Подпишите каждый раздел У раздела должна быть тема и путь до него в базе, иначе справочник контактов вылезет в ответ на вопрос о продукте.
  4. Приведите таблицы к одному виду Расшифруйте аббревиатуры рядом с таблицей и проверьте, что строка читается, даже когда шапка осталась в другом фрагменте.
  5. Запретите агенту выдумывать Пропишите ответ «не нашёл» для случаев, когда в документах ответа нет, и проверьте это правило на своих вопросах.
  6. Назначьте владельца базы Один человек отвечает за обновление и решает, что удалить. Автоудаление похожих фрагментов не включайте.

Частые вопросы

Что собрать в базу знаний для ИИ-агента в первую очередь?

То, на что агент будет отвечать: описания продуктов и услуг, частые вопросы клиентов, действующие регламенты. В МТС ассистент отвечает по 100+ B2B-продуктам со ссылкой на источник в документации, и структура там закреплена заранее: заголовок первого уровня равен продукту, ниже идёт вложенность страниц. Для небольшой компании это значит одно: сначала выпишите темы, по которым AI-агент обязан отвечать, и собирайте базу под них.

Как проверить, что ИИ-агент отвечает по базе знаний?

Набором контрольных вопросов с заранее известными ответами. Команда МТС прогнала 72 вопроса по трём продуктам и пяти категориям, часть вопросов составили руками, часть сгенерировали, ответы оценивала языковая модель-судья. В МТС Web Services для поддержки собрали список запросов с эталонными ответами и ссылками, а сотрудники параллельно пользовались обычным поиском и заводили задачи на плохие ответы.

Как часто обновлять базу знаний для ИИ-агента?

В МТС Web Services базу обновляют раз в 30 минут и пересчитывают только изменённые страницы. Частота здесь вторична. Важнее, что у базы есть человек, который за неё отвечает: без него правка регламента доходит до агента случайно.

Почему ИИ-агент путает цифры из таблиц?

Потому что таблица рвётся на границе фрагмента. В разборе помощника по 300+ регламентам агент назвал неверный срок подготовки коммерческого предложения: шапка таблицы попала в один фрагмент, строки со сроками в другой. Помогла структурная нарезка и глоссарий аббревиатур.

Что делать с дублями в базе знаний для ИИ?

Искать их отдельной проверкой и сводить руками. В сервисе пополнения базы по обращениям поддержки на тестовой базе из 134 фрагментов нашлось 14 групп возможных дублей, и автоудаление делать не стали: ложное объединение опаснее пропущенного дубля.

ЕЩЁ ПО ТЕМЕ
AI

Что умеет ИИ-ассистент для бизнеса и где у него предел

Производитель электростанций поставил сотрудникам ИИ-ассистента, и в свободном диалоге он не помог. Чем ассистент отличается от бота и агента и какой тест из 100 вопросов провести до выбора.

AI

Работа с AI-агентами: порог качества для автоматической обработки документов

НПФ «Будущее» регистрировал вручную 42% входящих документов, около 142 тысяч в год. Как задан порог качества для автоматической обработки и что считают после запуска.

OPERATIONS

Второй мозг для AI-агента: какие файлы вести, чтобы работа продолжалась между сессиями

Разработчик за 391 сессию дошёл до двух файлов: текущего состояния и журнала решений. Что агент читает каждый раз, что лежит отдельно и когда систему пора упростить.