Представьте, что руководство по курсу только что обновили. Вы загрузили в базу знаний обе версии — новую и старую — и спрашиваете ИИ: «Какие материалы нужно подать на этот раз?» Он быстро выдаёт список, да ещё и со ссылками на источники.
Но стоит открыть источник — и появляется проблема: один фрагмент взят из старой версии руководства, другой лишь описывает процедуру подачи и вовсе не перечисляет все материалы. Ответ выглядит полным, но доказательства не подкрепляют его целиком.
Генерация, дополненная поиском (обычно сокращается как RAG), встраивает внешние материалы в процесс формирования ответа языковой моделью. Курс EvoClass AI025 «Практические RAG-системы: от базы знаний к генерации с дополненным поиском» раскрывает этот путь в пяти занятиях. Курс интересует именно то, как информация проходит от исходного документа до ответа, который можно проверить.
Первый разрыв может скрываться ещё до того, как материал попал в систему
В Уроке 1: Основы RAG и построения базы знаний курс сначала разграничивает промптинг, дообучение и RAG, а также включает очистку материалов, метаданные и управление версиями в построение базы знаний.
Этот шаг легко принять за подготовительную работу, но на деле он определяет, что можно будет проверить в дальнейшем. К какой версии относится документ, на кого он распространяется, с какого момента действуют условия — всё это может повлиять на ответ. Если эти сведения теряются при импорте, то даже самый гладкий этап генерации вряд ли вернёт надёжные основания.
Возвращаясь к тому руководству, можно задать очень простой вопрос: способна ли система отличить «это новый файл» от «это действующее в настоящий момент правило»? Дата публикации и период действия — не всегда одно и то же.
Поэтому при построении базы знаний нужно думать не только о том, чтобы сохранить основной текст, но и о сохранении его идентичности и условий применения.
Более мелкое дробление не всегда означает более точный поиск
Длинное руководство часто приходится разбивать на фрагменты, пригодные для поиска. Слишком мелкое деление может сохранить название материала, но потерять указание на то, к кому он относится; слишком крупное — рискует утопить ответ в нерелевантном содержании.
Урок 2: Чанкинг, эмбеддинги и индексирование рассматривает чанкинг в связке с извлечением, ранжированием, контекстом и цитированием. Границы фрагментов одновременно влияют и на то, «можно ли найти», и на то, «можно ли правильно использовать найденное».
Например, если исключительные условия какого-то правила записаны в следующем абзаце, а сохранён только первый, то требование с оговоркой может выглядеть как применимое ко всем. Такие проблемы стоит выявлять на этапе подготовки материалов, а не разыскивать задним числом, когда итоговый ответ уже оказался неверным.
Курс также различает семантическую близость и пригодность для ответа. То, что два текста посвящены одной теме, вовсе не значит, что оба содержат то самое доказательство, которое нужно пользователю.
Найденные релевантные материалы ещё нужно отобрать
Иногда пользователь спрашивает о понятии, а иногда называет точный номер, название продукта или пункт. Эти два типа вопросов предъявляют к поиску разные требования.
В Уроке 3: Гибридный поиск и переранжирование курс обсуждает, для чего служит сопоставление по ключевым словам, а для чего — семантический поиск, и далее вводит переранжирование.
Это можно представить как два отбора: сначала по возможности вернуть все потенциально полезные кандидаты, затем решить, какие фрагменты действительно содержат информацию, необходимую для ответа. Одной лишь оценки по показателю сходства часто недостаточно для второго решения.
Проверяя ответы по руководству, стоит раздельно фиксировать сбои: действующее условие вообще не попало в кандидаты или попало, но оказалось позади остальных? Эти два случая требуют работы с разными звеньями. Только сохраняя промежуточные результаты, можно превратить «ответ неверен» в задачу, которую можно локализовать.
Мало иметь источник — нужно проверить, подкрепляет ли он вывод
Цитата даёт читателю возможность вернуться к материалу, но само её наличие ещё не означает, что ответ надёжен. Нужно продолжать проверку: действует ли этот материал, соответствует ли он данному предложению, охватывает ли он содержащиеся в нём ограничения.
Урок 4: Цитирование, актуальность и оценка рассматривает извлечение доказательств и верность генерации по отдельности; Урок 5: От прототипа к продакшену расширяет фокус на задержки, стоимость, диагностику сбоев и действия при недостатке доказательств.
Одна из полезных учебных задач — подготовить по одному и тому же материалу несколько типов вопросов: те, на которые ответ прямо дан в тексте; те, что требуют объединения сведений из нескольких мест; те, что касаются старой версии; и те, на которые материал вообще не отвечает. Затем по очереди проверить, какие доказательства получила система и что она сказала на их основании.
Эти вопросы — учебные рекомендации, а не уже проведённое в этой статье тестирование системы. Они напоминают, что ценность базы знаний нужно проверять на реальных различиях в информации, а не судить лишь по нескольким удачным демонстрациям.
Начать можно со страницы курса AI025 и проследить каждую передачу от материала к ответу. В следующий раз, столкнувшись с ответом, снабжённым источниками, стоит спросить: какие именно утверждения в этом ответе подкрепляют приведённые источники?
Статья подготовлена на основе текущих материалов курса EvoClass; ссылки на занятия ведут на англоязычные материалы. Пример с вопросами по руководству — учебный сценарий; на его основании не делается заявлений о точности, производительности или возможностях доступа к данным уже развёрнутой системы. Посетители могут просматривать открытый в настоящее время контент; полный доступ к обучению определяется подсказками на странице.