РУКОВОДСТВО · ОБНОВЛЕНО 2026-09-16
Как сделать бота по базе знаний компании с проверяемыми ответами
Пользователь ждёт ответ по действующим правилам компании. Для этого боту нужны поиск по документам, контроль версий и явное право сказать, что ответа нет.
Соберите утверждённые документы, разделите их на версии и права доступа, настройте поиск релевантных фрагментов и передавайте модели только разрешённые источники. Просите ответ с указанием документа и страницы; проверяйте, что цитата подтверждает вывод. Если подходящего источника нет или правила конфликтуют, бот задаёт уточнение либо передаёт вопрос сотруднику.
1. Выберите один поток вопросов
Начните, например, с внутренних правил возврата или вопросов о доставке, а не со всех файлов организации. Соберите 30–50 реальных обезличенных вопросов: простые, с несколькими условиями, устаревшие и те, на которые в базе ответа нет. Для каждого заранее запишите правильный документ или ожидаемый отказ. Так появится измеримая задача, а не демонстрация, где бот уверенно отвечает на два удобных вопроса.
2. Подготовьте источники и права
Каждому документу назначьте название, владельца, дату действия, версию и группу доступа. Удалите дубликаты и явно отметьте устаревшие редакции. Делите текст на фрагменты так, чтобы правило и его исключения оставались вместе; сохраняйте ссылку на страницу или раздел. Секретный регламент не должен попасть в поиск обычного клиента. Фильтр доступа применяется при поиске, до формирования запроса модели, а не после получения ответа.
3. Проверьте поиск отдельно от генерации
Для тестового вопроса сначала смотрите, нашёлся ли правильный источник в первых результатах. Если нужный абзац не найден, замена модели может не помочь. Сравните поиск по ключевым словам, векторный поиск и гибридный вариант на своих формулировках. Особое внимание уделите номерам заказов, тарифам, отрицаниям и датам: семантически похожий старый документ бывает хуже точного совпадения по действующей версии.
4. Сформируйте проверяемый ответ
Передавайте модели вопрос и короткие фрагменты с ID источников. Требуйте ответ, ссылку на конкретное правило и явный отказ, если оснований недостаточно. Не смешивайте цитату с догадкой: отдельная проверка должна сопоставить каждое важное утверждение с найденным фрагментом. Документы могут содержать инструкции для персонала или даже вредоносный текст; для модели это данные, а системные правила бота задаются отдельно.
5. Оцените качество и бюджет одного ответа
Мерьте долю найденных правильных источников, корректность цитат, ответы без основания и долю передачи человеку. Для цены считайте токены системной инструкции, вопроса, найденных фрагментов и ответа; отдельно добавляйте стоимость поиска или эмбеддингов, если они используются. Длинная полная база в каждом prompt обычно проигрывает выборке релевантных фрагментов. Сквозной тест необходим для выбранного маршрута: наличие модели в каталоге не подтверждает работу поиска по вашей базе.
Частые вопросы
Можно загрузить все PDF прямо в каждый запрос?
Технически иногда возможно, но это увеличивает стоимость и риск противоречий; лучше оценить поиск нужных фрагментов.
Достаточно ли попросить модель цитировать источники?
Нет. Приложение должно проверить, что источник существует и действительно подтверждает ответ.
Что делать, если ответ отсутствует в базе?
Разрешить отказ или передачу сотруднику, не вынуждая модель угадывать.
Как защитить закрытые документы?
Применять права на этапе хранения и поиска, до отправки фрагментов модели.