RAG (Retrieval-Augmented Generation) устроен так: ИИ сначала находит нужные фрагменты в документах твоей компании и только потом пишет ответ строго по ним, со ссылкой на источник. Модель отвечает по твоему актуальному прайс-листу, регламентам и базе знаний, и любой ответ можно проверить в пару кликов. Ниже разберём, из чего состоит такая система, где она теряет точность и как это исправить.
Почему ИИ без доступа к твоим документам ошибается
Языковая модель «из коробки» обучена на общих текстах. Она ничего не знает о твоих тарифах, сроках доставки в конкретный город или о том, что на прошлой неделе поменялись правила возврата. Если спросить её напрямую, она редко скажет «не знаю», а скорее соберёт правдоподобный ответ из того, что видела раньше. В разговоре с клиентом это опасно: уверенная выдумка о цене или гарантии хуже честного «сейчас уточню».
Вторая проблема в проверке. Даже если ответ верный, сотрудник не видит, откуда он взялся, и вынужден перепроверять. RAG решает обе: модель получает на вход найденные фрагменты документов, отвечает только по ним и показывает, из какого документа взята каждая часть ответа.
Из чего состоит RAG: два контура
Система работает в двух режимах. Подготовка выполняется один раз и затем при каждом изменении документов. Ответ формируется на каждый вопрос сотрудника или клиента.
Шаги 1–3 относятся к подготовке: выполняются один раз и при каждом обновлении документов. Шаги 4–5 выполняются на каждый вопрос.
- Сбор источников. Документы, база знаний, вики, история поддержки, данные CRM: всё, на что будет опираться ИИ.
- Разбиение на фрагменты. Каждый документ режется на смысловые куски: раздел регламента, строка прайса с условиями, ответ из базы знаний.
- Индекс. Фрагменты попадают в поисковую базу, которая ищет по смыслу и понимает вопрос, заданный разными словами.
- Поиск. На каждый вопрос система находит несколько самых релевантных фрагментов.
- Ответ. Модель получает вопрос и найденные фрагменты, пишет по ним ответ и прикладывает ссылки на документы.
Эта статья про архитектуру и точность. Если тебя интересует бизнес-сторона, смотри нашу страницу о корпоративной базе знаний на ИИ.
Подготовка документов: половина работы
ИИ отвечает ровно настолько хорошо, насколько хороши документы, на которые он опирается. Если в папке лежат три версии прайс-листа, поиск может найти старую. Поэтому перед запуском мы проходим по источникам вместе с клиентом.
| Что проверяем | Зачем |
|---|---|
| Дубли и старые версии | Чтобы поиск не находил устаревший регламент рядом с актуальным |
| Противоречия между документами | Если в двух местах указаны разные условия, ИИ не должен выбирать сам: решает владелец документа |
| Владелец у каждого источника | Кто-то отвечает за актуальность прайс-листа и регламентов |
| Права доступа | Какие документы видят менеджеры по продажам, а какие доступны только руководителям |
| Формат | Сканы без текстового слоя и таблицы, сохранённые картинками, плохо находятся поиском: переведи их в текст |
Переписывать документы под ИИ не нужно. Обычно достаточно убрать лишнее и договориться, кто и как часто обновляет каждый источник.
Где RAG теряет точность
Качество ответов больше всего зависит от поиска. Если на этом шаге вернутся не те фрагменты, даже сильная модель ответит мимо. Главные точки сбоя:
- Размер фрагмента. Слишком крупные куски размывают смысл, слишком мелкие теряют контекст: условие оказывается в одном фрагменте, а исключение из него в другом. Мы режем по собственной структуре документа: разделы, пункты, строки таблиц.
- Точные термины. Поиск по смыслу хорошо справляется с перефразированным вопросом, но может пропустить артикул, код тарифа или аббревиатуру. Поэтому его дополняют поиском по точным словам и объединяют результаты.
- Ранжирование. Отдельный шаг пересортировывает найденные фрагменты по тому, насколько хорошо они отвечают именно на этот вопрос. Модель первыми видит самые релевантные.
- Вопросы на стыке документов. Когда для ответа нужны два источника, например условия доставки и прайс-лист, поиск должен вернуть оба. Для таких вопросов нужны отдельные тесты.
За точность отвечает поиск. Сильная модель на неверном фрагменте даёт уверенный неверный ответ.
Как ИИ пишет ответ
Модель получает строгую инструкцию: отвечать только по переданным фрагментам, ссылаться на них и никогда не додумывать недостающее. Если в документах нет ответа, правильная реакция: «этого нет в документах», а в клиентском канале вопрос уходит сотруднику. Это настраивается явно и проверяется вопросами, на которые в базе заведомо нет ответа.
Вторая часть касается формата. Менеджеру по продажам нужен короткий ответ и ссылка на пункт регламента, клиенту нужен простой язык без внутреннего жаргона. Поверх одной базы знаний мы пишем разные инструкции для разных каналов.
Актуальность, доступы и данные
Рабочую систему от демо отличают три требования.
Актуальность. Индекс обновляется при изменении документов. Иначе ИИ будет уверенно отвечать по прошлогоднему прайс-листу. Кто и как часто обновляет каждый источник, договариваемся до запуска.
Доступ. Фильтрация по правам встроена в поиск: сотрудник не получит через чат фрагмент документа, который ему нельзя видеть. Клиент в мессенджере получает ответы только из публичной части базы.
Данные. Работаем под NDA. Какие документы и поля можно передавать модели, а какие остаются закрытыми, фиксируем до старта проекта.
Как проверить качество до запуска
Перед запуском собираем набор реальных вопросов: из почты поддержки, из чатов, от менеджеров по продажам. Для каждого заранее известны правильный ответ и документ, где он находится. Прогоняем вопросы через систему и смотрим на три вещи: нашёлся ли нужный документ, верен ли ответ и честно ли система говорит «не найдено», когда ответа нет.
Ошибки почти всегда сводятся к одной из двух причин: пробел или противоречие в документах либо плохое разбиение и поиск. Первое исправляет владелец документа, второе исправляем мы. После запуска тестовый набор пополняется каждым вопросом, на котором система ошиблась в реальной работе.
Когда RAG окупается, а когда он избыточен
| Ситуация | Нужен ли RAG? |
|---|---|
| Сотни документов, продукт или условия часто меняются | Да: без поиска по документам ответы быстро устаревают |
| Поддержка отвечает на сложные вопросы по документации | Да: ИИ готовит черновик ответа со ссылками, человек проверяет |
| Менеджеры по продажам ищут ответы в регламентах и прайс-листах | Да: ответ за секунды вместо поиска по папкам |
| Десяток стандартных вопросов, ответы на которые не меняются | Нет: хватит простого скрипта или ИИ-агента с короткой инструкцией |
| Документов почти нет, знания живут в головах сотрудников | Сначала собери базу знаний, потом подключай ИИ |
Пример из нашей практики: поддержка B2B SaaS-компании отвечает по базе знаний на ИИ. Обработка обращений ускорилась в 48 раз, 90% обращений закрываются без участия человека, ответы уходят 24/7. Подробности в кейсе B2B SaaS.
Стоимость и как мы внедряем
Корпоративная база знаний на ИИ стоит как отдельный модуль, от $650, полный проект от $3 750, сопровождение от $400 в месяц. Начинаем с бесплатного экспресс-аудита твоих источников и задач за час, ещё за 3 часа готовим план внедрения, затем проводим пилот на твоих документах и запускаем от 7 дней. Две недели поддержки включены. Если та же база знаний должна отвечать клиентам в мессенджерах, посмотри, как на её основе ИИ-агент квалифицирует заявки.
Частые вопросы
Чем RAG отличается от обычного ChatGPT?
Публичный чат-бот отвечает из общих знаний модели и не видит твоих документов. С RAG модель сначала получает найденные фрагменты твоей базы и отвечает только по ним, со ссылкой на источник.
Нужно ли переписывать наши документы под ИИ?
Нет. Обычно достаточно убрать дубли и старые версии, снять противоречия и назначить владельцев документов. Сканы без текстового слоя лучше перевести в текст.
Что будет, если ответа нет в документах?
Система прямо об этом говорит, а в клиентском канале передаёт вопрос сотруднику. Это настраивается и проверяется до запуска.
Как ИИ узнаёт об изменениях цен или регламентов?
Индекс обновляется при изменении документов. Порядок обновления и владельца каждого источника согласуем до запуска.
Где хранятся данные?
Работаем под NDA. Что можно передавать модели, а что остаётся закрытым, фиксируем до старта проекта.