LLM сама по себе не знает ваши внутренние документы и не всегда помнит свежие данные. Поэтому перед генерацией ответа ей нужно дать контекст. Retrieval как раз отвечает за этот момент: найти, что относится к вопросу, и передать модели только полезные фрагменты.
В RAG retrieval обычно устроен так: документы индексируют, разбивают на chunks, превращают в embeddings и кладут в vector database. Когда пользователь задает вопрос, система ищет похожие фрагменты через semantic search, выбирает top-k результатов, применяет фильтры и guardrails, а затем передает найденный контекст в модель.
Качество retrieval напрямую влияет на качество ответа. Если система нашла правильные источники, модель отвечает точнее и может дать ссылки. Если поиск нашел старый регламент, чужой документ или нерелевантный chunk, ответ будет слабым, даже если модель очень мощная.
Примеры
- Пользователь спрашивает: "Как подключить Telegram-бота?". Retrieval находит инструкцию по Telegram, фрагменты про webhook и настройки API.
- Агент поддержки получает вопрос клиента о возврате. Система достает актуальный регламент возвратов и FAQ, а модель формирует ответ.
- Юрист ищет пункт про штрафы. Retrieval находит нужные части договора и передает их модели для краткого объяснения.
- Внутренний поиск по базе знаний использует semantic search, чтобы найти смыслово похожие документы, даже если пользователь написал вопрос другими словами.
- Если retrieval не нашел надежных источников, агент не отвечает наугад, а просит уточнить вопрос или передает его человеку.
Где используется
- Подключать LLM к базе знаний компании без дообучения модели.
- Строить RAG-ответы по документам, инструкциям, договорам и FAQ.
- Давать ИИ-агенту доступ к актуальным данным перед генерацией ответа.
- Снижать галлюцинации за счет передачи модели проверенных источников.
- Организовать внутренний поиск по корпоративным документам.
- Добавлять цитаты и ссылки на источники в ответы модели.
- Фильтровать контекст по правам доступа, дате, продукту или клиенту.
- Оптимизировать context budget: передавать модели только нужные chunks.
- Тестировать качество RAG через evals и проверять, нашел ли retrieval правильный источник.
Связанные термины
Частые вопросы
Чем retrieval отличается от retriever?
Retrieval — это сам процесс извлечения информации. Retriever — компонент или инструмент, который этот процесс выполняет: ищет документы, chunks или записи.
Retrieval и RAG — это одно и то же?
Нет. Retrieval — один из этапов RAG. RAG включает retrieval, подготовку контекста и генерацию ответа моделью на основе найденных источников.
Почему retrieval важен для качества ответа?
Модель отвечает на основе контекста, который ей дали. Если retrieval нашел плохие или устаревшие источники, модель может дать неправильный ответ.
Можно ли делать retrieval без embeddings?
Да. Можно использовать полнотекстовый поиск, SQL-фильтры или гибридный подход. Но embeddings и vector database часто лучше работают для смыслового поиска по документам.
Как понять, что retrieval настроен хорошо?
Он стабильно находит правильные источники, не тащит лишнее, соблюдает права доступа, дает свежие документы и позволяет объяснить, откуда взялся ответ.