Все статьи
AI 5 май 2026 12 мин Вячеслав

RAG-системы: практическое руководство по внедрению

Как устроен retrieval-augmented generation: чанкование, эмбеддинги, векторный поиск, reranking и оценка качества ответов на русскоязычных данных.

RAG (retrieval-augmented generation) — способ дать языковой модели доступ к вашим данным без дообучения. Модель не «запоминает» документы: перед каждым ответом система находит подходящие фрагменты и передаёт их в запрос как контекст. Это дешевле дообучения, обновляется мгновенно и позволяет показывать источники ответа.

Когда RAG уместен, а когда нет

  • Уместен: база знаний компании, поиск по документации, поддержка первой линии, ответы по регламентам и договорам.
  • Уместен: данные часто меняются — достаточно переиндексировать документы.
  • Не уместен: задачи, где нужен свой стиль или формат ответа — это решается промптом или дообучением.
  • Не уместен: точные расчёты и агрегаты по таблицам — там нужен SQL, а не поиск по тексту.

Архитектура: две независимые части

Индексация выполняется офлайн: документы разбиваются на фрагменты, для каждого считается эмбеддинг, векторы складываются в хранилище вместе с метаданными. Ответ на вопрос выполняется онлайн: запрос превращается в вектор, находятся ближайшие фрагменты, они переранжируются и передаются модели вместе с инструкцией отвечать только по контексту.

  • Индексация: загрузка → очистка → чанкование → эмбеддинги → векторное хранилище.
  • Ответ: вопрос → поиск top-k → reranking → сборка промпта → генерация → ссылки на источники.

Чанкование решает больше, чем выбор модели

Самая частая причина плохих ответов — неудачное разбиение. Слишком мелкие фрагменты теряют контекст, слишком крупные размывают смысл и забивают окно модели. На практике хорошо работают фрагменты по 500–1000 токенов с перекрытием 10–15% и обязательным сохранением заголовка раздела в тексте фрагмента.

  • Разбивайте по структуре документа (разделы, пункты), а не по фиксированному числу символов.
  • Храните метаданные: документ, раздел, дата, версия — они нужны и для фильтрации, и для ссылок.
  • Таблицы выносите отдельно и сопровождайте текстовым описанием.

Русский язык: отдельная проверка

Не все популярные модели эмбеддингов одинаково работают с русским. Перед выбором соберите небольшой набор из 30–50 реальных вопросов с эталонными ответами и сравните модели на нём. Это занимает день и экономит недели догадок.

Гибридный поиск и reranking

Чистый векторный поиск плохо справляется с точными терминами, артикулами и номерами документов. Гибрид векторного и полнотекстового поиска решает это. Следующий шаг — reranking: модель-переранжировщик оценивает 20–50 найденных фрагментов и оставляет 3–5 действительно релевантных. На моей практике reranking даёт самый заметный прирост качества после исправления чанкования.

СимптомПричинаРешение
Ответ не по темеСлишком мелкие фрагментыУвеличить чанки, добавить перекрытие и заголовки
Не находит по артикулуТолько векторный поискГибридный поиск с полнотекстовым индексом
Много «воды» в ответеПередаётся 10+ фрагментовReranking и жёсткий лимит контекста
Выдумывает фактыНет инструкции и источниковТребовать ответ только по контексту и «не знаю» по умолчанию
Типичные проблемы RAG и что помогает

Как измерять качество

Без метрик улучшение RAG превращается в спор о вкусах. Минимальный набор: доля вопросов, где нужный фрагмент попал в выдачу, доля ответов, полностью подтверждённых источниками, и доля корректных отказов на вопросы вне базы. Замеряйте их на фиксированном наборе вопросов после каждого изменения.

Хороший RAG чаще отличается от плохого не моделью, а дисциплиной: качеством данных, разбиением и честной оценкой.

Читайте также

Понравилась статья?

Подпишитесь на блог или обсудите ваш проект.

Обсудить проект