core-ai
Словарь ↗Извлечение (Retrieval)
Retrieval (извлечение, поиск) — это процесс поиска в корпусе документов, данных или знаний фрагментов, наиболее релевантных заданному запросу — это концепция информационного поиска, которой уже несколько десятилетий (та же базовая идея, что лежит в основе классических поисковых систем), ставшая центральной для архитектуры современных AI-продуктов в качестве первого шага пайплайна RAG. Извлечение может происходить через несколько разных механизмов, и выбор имеет значение для качества: лексическое/ключевое извлечение (например, классический BM25 или полнотекстовый поиск Elasticsearch) сопоставляет на основе точного или почти точного совпадения слов между запросом и документами — быстро и точно для запросов со специфической терминологией, но слепо к смыслу (поиск "отменить подписку" не найдёт документ, где написано только "прекратить действие тарифа"); семантическое/векторное извлечение встраивает и запрос, и документы в векторное пространство и находит ближайших соседей по смыслу, улавливая перефразирования и синонимы, которые упускает поиск по ключевым словам, но иногда менее точно на запросах с конкретными точными терминами (коды товаров, сообщения об ошибках), для которых выгоднее буквальное совпадение; а гибридное извлечение сочетает оба подхода (часто через reciprocal rank fusion), обычно давая лучшие результаты в реальном мире за счёт учёта как точного, так и семантического совпадения релевантности. Это важно для разработчиков SaaS, потому что качество извлечения — это потолок качества RAG: никакой промпт-инжиниринг на стороне генерации не исправит систему, которая изначально извлекла не те документы, что делает настройку извлечения (стратегия разбиения на фрагменты, выбор модели эмбеддингов, фильтрация по метаданным, взвешивание гибридного поиска, реранкинг) зачастую наиболее выгодным местом для инвестирования инженерного времени в системе RAG. Конкретный пример: ассистент поиска по документации разработчика получает запрос "почему мой webhook не срабатывает". Чисто ключевое извлечение может пропустить релевантный документ по устранению неполадок под названием "Отладка тихих сбоев доставки событий", потому что он не разделяет ни одного точного слова с запросом; семантическое извлечение находит его, потому что эмбеддинги распознают концептуальное пересечение; гибридная система также правильно приоритизирует документ, буквально содержащий "webhook" в заголовке, когда этот документ действительно является лучшим совпадением. Продакшн-системы извлечения часто добавляют шаг реранкинга после первоначального извлечения — более вычислительно затратную, но более точную модель релевантности, которая заново оценивает начальный набор кандидатов, прежде чем несколько лучших будут отправлены в LLM. На качество извлечения также влияют решения по подготовке документов, принятые задолго до любого запроса: как документы разбиваются на фрагменты (разбиение по границам абзацев обычно сохраняет более связный смысл, чем разбиение по фиксированному числу символов, которое может разрезать предложение или таблицу посередине), какие метаданные прикреплены (источник, дата, права доступа, заголовки разделов), и дедуплицируется ли повторяющийся или почти повторяющийся контент перед индексацией — всё это напрямую влияет на то, что система извлечения может найти и насколько это релевантно, а значит, значительная часть работы над качеством RAG происходит на этапе подготовки данных, а не в самом алгоритме извлечения.
Похожие термины