Когда чат по документам выдаёт нерелевантный или неточный ответ, причина чаще всего в данных, разбиении на чанки, формулировке запроса или настройках контекста. Ниже — чек-лист, с чего начать диагностику.
Первый шаг в Adminica: прогнать проверку корпуса (data_lint) и сверить выдачу с GET /api/v1/knowledge/search по ключевым фразам из жалобы.
1. Данные: что попало в индекс
Пустые записи, дубликаты и устаревшие версии документов засоряют выдачу. Проверьте: есть ли в базе ответ на вопрос в принципе? Не попал ли в индекс мусор (шапки, подвалы, навигация)? Запустите data_lint или аналог и убедитесь, что в векторную БД попадают только валидные фрагменты с осмысленным текстом.
2. Чанкинг: границы фрагментов
Слишком крупные чанки тянут в контекст лишнее; слишком мелкие теряют смысл. Если ответ «не из той части» документа, попробуйте изменить стратегию разбиения: по заголовкам, по абзацам или с перекрытием. Проверьте, что граница чанка не режет предложение или список по полуслову.
3. Формулировка запроса
Слишком общий вопрос («расскажи про настройку») или избыток жаргона без ключевых слов ухудшают поиск. Попросите пользователя переформулировать: «как настроить X в среде Y», «что делать при ошибке Z». Сравните ответы — часто смена формулировки сразу улучшает результат.
4. Объём и релевантность контекста
Слишком много чанков в контексте размывают фокус; слишком мало — не хватает информации. Проверьте лимит top-k и порог релевантности. При необходимости включите гибридный поиск (векторный + ключевые слова), чтобы лучше ловить точные термины.
5. Модель и промпт
LLM может игнорировать контекст или «додумывать». Усильте системный промпт: «отвечай только на основе приведённых фрагментов», «если в контексте нет ответа — скажи об этом». Для спорных кейсов попробуйте другую модель или температуру.
- Проверьте наличие и качество данных в индексе (data_lint, выборочные запросы).
- Оцените чанкинг: размер и границы фрагментов для типичных вопросов.
- Прогоните один и тот же вопрос в разных формулировках и сравните выдачу.
- Настройте объём контекста и при необходимости гибридный поиск.
- Жёстко задайте в промпте опору на контекст и отказ от выдумки.
Итог: Неверные ответы RAG чаще всего связаны с данными, чанкингом, формулировкой запроса, объёмом контекста или промптом. Пройдите чек-лист по порядку — это сужает круг причин и ускоряет исправление.