Обучение модели LLM с использованием данных из Интернета в режиме реального времени: практическое руководство
Все публикации

Обучение модели LLM с использованием данных из Интернета в режиме реального времени: практическое руководство

Ryan Turner
Ryan Turner · Head of Innovation

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

В данном руководстве подробно описан практический цикл, который инженер проходит для обучения большого языкового модели (LLM) на свежих веб-данных. Сначала необходимо определить, когда требуются свежие данные, затем получить их, добавить к ним информацию о происхождении, сгенерировать результаты с указанием источников и, наконец, провести проверку. Каждый шаг описан конкретно, и для каждого из них приведены типичные сценарии сбоев, с которыми сталкиваются команды в условиях реальной эксплуатации.

Основные выводы
  • Метод «Grounding» заменяет память модели на извлеченные исходные документы, что является наиболее надежным способом снижения частоты появления галлюцинаций.
  • Свежесть информации имеет такое же значение, как и её актуальность: использование устаревших данных приводит к тому, что ответ основывается на старых фактах, которые кажутся достоверными и правильными.
  • Обеспечьте прослеживаемость источников на всех этапах, чтобы в каждом утверждении указывался источник, который пользователь может проверить.
  • По прогнозам компании Gartner, к концу 2026 года 40 % корпоративных приложений, запущенных в 2025 году, будут оснащены ИИ-агентами, предназначенными для выполнения конкретных задач, поэтому внедрение технологии «граундинг» в настоящее время является обязательным условием.
  • Выживают те команды, агенты которых остаются надежными; по прогнозам Gartner, к концу 2027 года будет отменено более 40 % проектов, основанных на использовании агентов.

Что на самом деле означает «основание» модели LLM?

Грунтование ограничивает модель, заставляя её давать ответы на основе предоставленных доказательств, а не на основе параметрической памяти. На практике вы извлекаете документы, имеющие отношение к запросу, помещаете их в контекстное окно и даёте модели указание отвечать исключительно на основе этого материала с указанием источников. Модель становится читателем и составителем резюме, а не оракулом. Именно этот единственный сдвиг в подходе объясняет, почему привязка к контексту, как правило, позволяет сократить количество галлюцинаций в большей степени, чем любые приёмы настройки подсказок.

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

С каждым кварталом это приобретает всё большее значение. По прогнозам компании Gartner, в 2025 году К концу 2026 года 40 % корпоративных приложений будут оснащены ИИ-агентами, предназначенными для выполнения конкретных задач, тогда как в 2025 году этот показатель составлял менее 5 %. Большинство таких агентов будут отвечать на вопросы о текущем состоянии, а агент без привязки к реальности, который с уверенностью выдумывает это состояние, хуже, чем отсутствие агента вообще. Полную архитектуру, связанную с этим, см. в предоставить ИИ-агентам доступ к веб-ресурсам в режиме реального времени.

В каких случаях модели LLM требуются свежие данные из Интернета?

Не каждый запрос требует извлечения информации, а привязка каждого запроса к фактам приводит к ненужной задержке и трате токенов. Решение принимается на этапе обнаружения. Как правило, направляйте запрос на извлечение данных в реальном времени, если ответ зависит от меняющихся фактов, от фактов, не входящих в обучающие данные, или от любой информации, которую пользователь ожидает получить в актуальном виде. Стабильные общие знания могут оставаться непривязанными. Хороший маршрутизатор не требует больших затрат и избавляет вас от необходимости искать в Интернете ответ на вопрос «что такое хеш-карта».

На практике сигналы, указывающие на необходимость «немедленного запроса», легко распознать: запрос содержит слова, обозначающие время («сегодня», «последний», «текущий», «на этой неделе»), именованные сущности, которые, вероятно, связаны с недавними событиями, ценами, версиями или количественными показателями, либо относится к сфере, которая, как вам известно, быстро меняется. С этой задачей хорошо справляется небольшой классификатор или подсказка, работающая по принципу «few-shot». В случае сомнений лучше выполнить запрос: немного более медленный правильный ответ лучше, чем быстрый неправильный.

Единственная веская причина, по которой это необходимо сделать правильно, — это выживание: именно надежность отличает тех агентов, которые добиваются успеха, от тех, кто терпит крах. В 2025 году компания Gartner прогнозировала, что К концу 2027 года более 40 % проектов в области агентного ИИ будут закрыты, причём зачастую при этом ценность таких решений остаётся неясной, а механизмы контроля — недостаточно эффективными. Опора на свежие данные и является одним из таких механизмов контроля. Судя по тому, что мы наблюдаем в рамках рабочих нагрузок агентов, именно таким образом вы делаете ответы агента поддающимися проверке, а не просто правдоподобными.

Как получить актуальные данные для заземления?

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

Для выполнения поиска отправьте запрос на конечную точку поиска, преобразовав запрос пользователя в поисковую формулировку, и получите первые результаты с заголовками и URL-адресами. Для сравнения доступных вариантов см. Web Search API для агентов. В Web Render API от Massive предоставляется конечная точка Search (/search), который возвращает результаты поиска из основных поисковых систем, с возможностью географической таргетизации, с awaiting=ai подождать до одной минуты, пока загрузится обзор ИИ, и awaiting=answers для блоков «Люди также спрашивают».

При выполнении запроса «fetch» загрузите указанные URL-адреса и преобразуйте их в формат Markdown, а не в исходный HTML. Markdown Ниже приведён упрощённый текстовый формат, в котором сохраняются заголовки, списки и ссылки, а разметка, которая расходует токены и сбивает модель с толку, удаляется. Преобразование HTML в Markdown позволяет существенно сократить количество токенов, используемых агентом, зачастую более чем наполовину (dev.to, Инструменты браузера для ИИ-агентов. Часть 4: Как обойтись без браузера). Конечная точка «Просмотр» сервиса Massive (/browser) возвращает format=markdown в качестве результата первого класса, благодаря чему вы получаете текст страницы, готовый для обработки в LLM, за один вызов, вместо того чтобы запускать собственный браузер в режиме без интерфейса и выполнять проверку на читаемость.

Однако следует учесть одно практическое предупреждение: открытый Интернет противодействует автоматизированному сбору данных. В 2025 году компания Cloudflare начала блокировка роботов искусственного интеллекта по умолчанию примерно на 20 % веб-ресурсов 1 июля и запустила торговую площадку с оплатой за сканирование. Неопытный сканер натыкается на препятствия. Прокси-серверы для частного использования — это соединения, которые проходят через реальные IP-адреса потребительских устройств, а не через диапазоны IP-адресов центров обработки данных, благодаря чему они обеспечивают доступ к страницам, недоступным для IP-адресов центров обработки данных. По результатам наших сравнительных тестов поставщиков, показатели успешности подключений с использованием IP-адресов частных пользователей на защищенных сайтах, как правило, значительно превышают показатели IP-адресов центров обработки данных: примерно 85–99 % против 20–40 %. Рассматривайте эти данные как результаты наших собственных испытаний, а не как независимое исследование, однако разница достаточно стабильна, и мы наблюдаем, как команды переходят на использование источников с бытовыми IP-адресами, как только целевой сайт начинает вводить блокировки.

Как вы добавляете информацию о происхождении к извлеченным данным?

Функция «Injection» вставляет извлеченный текст в запрос с достаточной степенью структурированности, чтобы модель могла как использовать его, так и ссылаться на него. Происхождение — это метаданные, которые передаются вместе с каждым документом: URL-адрес источника, заголовок и метка времени получения. Обозначьте каждый документ с помощью блока с соответствующей меткой, содержащего эти метаданные, а затем дайте модели указание формировать ответ исключительно на основе этих блоков и привязывать метку источника к каждому утверждению. Происхождение — это не просто формальность; именно оно обеспечивает возможность проверки достоверности ответа.

Тщательно подбирайте и сокращайте текст. Размещайте наиболее релевантные фрагменты в начале контекста, удаляйте остальное и ни в коем случае не вставляйте текст сайта целиком. Обширный контекст рассеивает внимание и побуждает модель отвлекаться. Например, лаконичный набор из трёх–пяти тщательно отобранных фрагментов обычно обеспечивает лучшую привязку, чем двадцать фрагментов с избыточной информацией. Подробности о фрагментации, ранжировании и индексировании см. в построение конвейера RAG на основе данных из реального веб-трафика.

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

Как сформулировать и проверить обоснованный ответ?

Генерация и проверка представляют собой один цикл, а не два отдельных этапа. Попросите модель давать ответы исключительно на основе предоставленных источников и сопровождать каждое утверждение указанием источника. Затем проверьте результат до того, как он поступит пользователю. Содержится ли в каждом фактическом утверждении ссылка на источник? Подтверждает ли указанный источник данное утверждение? Ответ, в котором отсутствуют ссылки или приведены источники, не подтверждающие утверждение, не проходит проверку обоснованности, даже если он звучит правдоподобно. Это ключевой критерий проверки, и его стоит сформулировать прямо: обоснованный ответ — это тот, в котором каждое утверждение соотносится с найденным источником, который действительно его подтверждает, ссылки присутствуют и доступны для машинного анализа, а рецензент, никогда не видевший исходного запроса, может проследить каждое утверждение до его доказательства. Если какое-либо из этих условий не соблюдается, вам следует переработать ответ или отклонить его, а не публиковать неуверенное предположение.

Проверка может быть недорогой и автоматической. Проанализируйте цитаты, убедитесь, что каждая из них сопоставляется с извлеченным фрагментом, и отклоните или перегенерируйте утверждение, если оно не имеет подтверждения. В случаях, когда ставки выше, запустите повторный проход модели, которая заново прочитает каждый источник и оценит, подтверждает ли он данное утверждение. Это позволяет выявить сложные случаи, когда модель делает неточные выводы, используя реальный источник, но утверждая то, чего в источнике никогда не говорилось.

В то же время, если в качестве эталонного значения выступает самый свежий результат работы модели, вы можете получить его напрямую. Конечная точка чата с ИИ от Massive (/ai) возвращает варианты ответов от ChatGPT, Gemini, Perplexity и Copilot с указанием источников, связанных с устройствами реальных пользователей, в разбивке по географическим регионам, а также sources полезная нагрузка и subqueries массив. Это полезно в тех случаях, когда необходимо опираться на текущее состояние общедоступной модели, а не на информацию, представленную на странице.

Источники

Часто задаваемые вопросы

Является ли заземление тем же, что и RAG?+

RAG — один из распространенных способов реализации «основанности». Цель «основанности» заключается в том, чтобы давать ответы на основе извлеченных данных, а не на основе памяти. RAG (извлечение, дополнение, генерация) — это подход, который используют большинство команд для достижения этой цели. При этом обеспечить «основанность» можно также с помощью прямых вызовов инструментов или оперативного запроса данных через API без использования векторного хранилища.

Почему свежесть имеет столь большое значение для заземления?+

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

Помогает ли «заземление» полностью избавиться от галлюцинаций?+

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

Почему бы просто не воспользоваться встроенной функцией просмотра модели?+

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