Контекст
Что такое RAG (генерация с поиском по документам)?
RAG находит нужные фрагменты ваших документов и кладёт их перед моделью. Как нарезка и качество поиска решают, работает это или нет.
Все разборы · Последняя проверка:
Как это работает
Документы режутся на фрагменты, и каждый фрагмент превращается в вектор — числовое представление его смысла. Вопрос превращается так же, и извлекаются фрагменты, чьи векторы ближе всего.
Эти фрагменты вставляются в промпт, обычно с указанием отвечать по ним. Модель делает языковую работу; поиск даёт знание.
Качество поиска — это вся система
Если нужный фрагмент не найден, ни одна модель ответ не спасёт: она ответит из общих знаний и прозвучит столь же уверенно. Почти все разочаровывающие RAG-системы — это проблемы поиска в костюме генерации.
Нарезка — то место, где всё решается. Слишком мелкие фрагменты теряют контекст, который делал их осмысленными; слишком крупные размывают совпадение. Резать по структуре документа — разделам, заголовкам — обычно лучше, чем по фиксированной длине.
Что это чинит, а что нет
RAG чинит «модель никогда не видела моих документов». Он снижает галлюцинации на вопросах, ответ на которые есть в документах, потому что ответ лежит перед моделью.
Он не чинит рассуждение и не мешает модели отвечать по памяти, когда поиск не вернул ничего полезного. Опора на источник — сильная тенденция, а не гарантия, и режим отказа здесь — уверенный ответ без источника.
Частые вопросы
- RAG — это то же, что дообучение?
- Нет, и они решают разные задачи. Дообучение меняет то, как модель себя ведёт; RAG меняет то, что она знает для одного запроса. Для «отвечай на вопросы по моим документам» RAG почти всегда правильный инструмент и намного дешевле в поддержании актуальности.
- Делают ли большие контекстные окна RAG ненужным?
- Нет. Можно вставить больше, но вы платите за каждый токен в каждом сообщении, а модели неравномерно распределяют внимание по очень длинным входам. Кроме того, поиск — единственный подход, масштабирующийся за пределы любого окна.
- Отправляет ли RAG мои документы поставщику модели?
- Найденные фрагменты — да, именно так модель их и видит. Если это неприемлемо, модель должна работать там, где контролируете вы, и для этого существует локальное выполнение.
Лучше попробовать, чем читать
ClawAI ищет по файлам, которые вы прикрепляете, и сочетает это с локальным выполнением, чтобы найденные фрагменты могли остаться на вашем железе.