RAG простыми словами
RAG помогает AI отвечать на основе документов и источников компании, а не просто генерировать текст «из головы».
Языковая модель сама по себе ничего не знает о вашей компании. Она умеет складывать правдоподобный текст, и если спросить её про ваши сроки поставки, она ответит — уверенно и неправильно.
RAG решает эту задачу прямолинейно: перед тем как отвечать, система находит в ваших документах несколько подходящих фрагментов и кладёт их в запрос вместе с вопросом. Модель отвечает не по памяти, а по тексту, который ей только что показали. Отсюда и название: retrieval-augmented generation — генерация, дополненная поиском.
Что такое источник
Источник — это конкретный документ или его часть, за которую кто-то отвечает. Регламент возврата. Раздел договора. Страница базы знаний. Карточка услуги. Важно не то, в каком формате он лежит, а то, что у него есть владелец и понятный срок актуальности.
Переписка в чате, черновик и «файл у Марины на диске» источниками не являются, даже если содержат правильный ответ. Первое, что обычно приходится сделать перед запуском RAG, — отделить документы, на которые компания готова ссылаться, от всего остального.
У этого разделения есть неожиданное следствие: список источников почти всегда оказывается короче, чем ожидали. Из сотни файлов в общей папке до состояния «на это можно ссылаться» доживают полтора десятка. Остальное — старые редакции, черновики и материалы, за которые никто не готов отвечать. Начинать лучше именно с этих полутора десятков.
Как готовить документы
Поиск работает не с документом целиком, а с фрагментами. Значит, фрагмент должен быть самодостаточным: по нему должно быть понятно, о чём речь, без соседних страниц.
- заголовки внутри документа — по ним режутся осмысленные куски
- таблицы и сканы — либо в текст, либо отдельным описанием
- одна тема — один документ, вместо сборников «разное»
- дата и версия рядом с текстом, а не в имени файла
Эта работа выглядит скучной, но именно она определяет качество. Плохо нарезанная база даёт формально релевантные, но бесполезные фрагменты — и модель начинает додумывать.
Почему важен показ основания
Ответ без ссылки на источник проверить нельзя, а значит, нельзя и использовать в работе с клиентом. Поэтому в интерфейсе рядом с подсказкой всегда показывают, откуда она взялась: документ, раздел, фрагмент текста.
Побочный эффект оказывается едва ли не главным: сотрудники начинают замечать, что документы устарели или противоречат друг другу. RAG превращается в способ навести порядок в базе знаний.
Показ основания меняет и то, как люди относятся к системе. Подсказка без ссылки воспринимается как мнение непонятно кого, и её либо принимают на веру, либо игнорируют целиком. Подсказка с цитатой из регламента — это просто быстрый способ найти нужный пункт, и спорить с ней незачем: видно, откуда она.
Про обновление тоже стоит подумать сразу. Если регламент правят раз в квартал, достаточно пересобирать базу вручную после каждой правки. Если документы меняются каждую неделю, нужен процесс: кто обновляет, что при этом происходит со старой версией и как убедиться, что система уже отвечает по новой. Без этого база тихо расходится с оригиналами за пару месяцев.
Ограничения RAG
RAG отвечает на вопросы, ответ на которые где-то записан. Он не считает, не сверяет данные между системами и не знает того, чего нет в документах. Если правило живёт только в голове у руководителя отдела, поиск его не найдёт.
Плохо даются и вопросы, требующие собрать картину из десятка мест сразу: «сколько у нас сейчас в работе» — это запрос к системе, а не к тексту. Такие сценарии решаются интеграцией, а не поиском по документам.
Отдельная сложность — противоречия. Если в двух регламентах написано разное, поиск честно найдёт оба фрагмента, и ответ будет зависеть от того, какой из них оказался выше в выдаче. Разрешать такие конфликты должен человек: пометить одну редакцию устаревшей, а не надеяться, что система выберет правильную.
Как оценивать качество
Качество RAG раскладывается на две части: нашёлся ли нужный фрагмент и правильно ли модель его пересказала. Их полезно измерять отдельно — лечатся они по-разному. Первое чинится нарезкой и метаданными, второе — формулировкой запроса и правилами ответа.
Проверяют на наборе реальных вопросов, собранном заранее, и повторяют после каждого изменения базы. Отдельно смотрят, как система ведёт себя, когда ответа в документах нет: молчит и передаёт человеку — хорошо, отвечает уверенно — повод разбираться.
Сравнивать имеет смысл не с идеалом, а с тем, как было раньше. Оператор без ассистента тоже ошибается, тоже не находит нужный пункт и тоже иногда отвечает по памяти. Вопрос не в том, безупречен ли RAG, а в том, стало ли лучше — и не появилось ли новых способов ошибиться, которых раньше не было.
Есть база документов, по которой нужно отвечать?
Опишите, где лежат регламенты и кто по ним отвечает клиентам. Мы разберём, что нужно подготовить и как устроить проверяемые подсказки оператору.
Показать процесс Aivex