3,583 papers
arXiv:2610.21731 84 15 окт. 2026 г. FREE

Retrieved but Not Read: модели с поиском отвечают по сниппетам и не открывают страницы

КЛЮЧЕВАЯ СУТЬ
Обнаружено: ИИ с веб-поиском часто отвечает по сниппетам и не открывает ни одной страницы. Сниппет — это обрывок текста под заголовком в выдаче. Именно в таких ответах больше всего устаревших фактов и ссылок на источники, которые ответу противоречат. Метод позволяет проверять быстро меняющиеся факты (должность, ставка, клуб игрока) и не получать уверенное «да» по старой памяти модели. Не верь самому факту «модель поискала»: положи текст страницы прямо в запрос или заставь модель открыть страницу и дословно процитировать строку со значением. Со страницей в запросе ошибки упали с 14 из 50 до 0 из 50.
Адаптировать под запрос
⚡

TL;DR

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

Боль выглядит так. Вы спрашиваете: «Правда, что Алекс Крисс — CEO PayPal?» Модель ищет один раз, не открывает ни одной страницы, отвечает «да» и ссылается на старую статью с сайта самой компании. А CEO уже сменился. Причина в том, что модель, которая не прочла страницу, опирается на свою память и на обрывок текста в выдаче. Наличие ответа в результатах поиска не означает, что модель его использовала.

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

🔬

Схема метода

Это не единый метод. Исследование даёт набор проверенных правил, вот что из них следует:

ПРАВИЛО 1: Дай модели текущую дату в запросе
ПРАВИЛО 2: Положи текст источника в сам запрос (вставь страницу) → почти нет устаревших ответов
ПРАВИЛО 3: Если страницу ищет модель → требуй открыть её и дословно процитировать строку со значением
ПРАВИЛО 4: В цикле поиска повторяй исходный вопрос после каждой открытой страницы → возвращает ~четверть провалов
ПРАВИЛО 5: Задай финальную строку ответа с вариантом «НЕ МОГУ ПОДТВЕРДИТЬ»

Всё это можно сделать в одном чате или в инструкции агенту. Правила 1 и 5 были частью промптов в самом исследовании. Правила 2 и 4 проверены отдельными экспериментами. Правило 3 («открой и процитируй») авторы напрямую не проверяли. Оно следует из связи между чтением страницы и качеством ответа, но это вывод по корреляции.

🚀

Пример применения

Задача: Маркетолог финтех-стартапа готовит питч для инвесторов. В слайде стоит фраза «Ключевая ставка ЦБ — 21%». Нужно быстро проверить, не устарела ли она, и не получить уверенное «да» по сниппету.

Промпт:

Сегодня {дата}. Проверь утверждение:
«Ключевая ставка Банка России — 21%».

Правила проверки:
1. Найди первичный источник (сайт cbr.ru или официальное решение Совета директоров).
2. ОБЯЗАТЕЛЬНО открой страницу источника, не отвечай по фрагментам из выдачи.
3. Процитируй дословно строку со значением и датой решения.
4. Если страницу открыть не удалось или дата решения старше последнего заседания — не подтверждай утверждение.
5. Перед выводом вернись к исходному вопросу: «верно ли утверждение на {дата}?» и сверь с цитатой.

Последняя строка ответа строго одна из трёх:
FINAL: ВЕРНО
FINAL: НЕВЕРНО (актуальное значение: ...)
FINAL: НЕ МОГУ ПОДТВЕРДИТЬ

Результат: Модель сначала запустит поиск и откроет страницу источника (если у неё есть такой инструмент). Затем приведёт дословную цитату со значением и датой и сверит её с датой «сегодня». В конце будет одна из трёх строк FINAL. Если страницу открыть не получилось, должен прийти честный отказ «НЕ МОГУ ПОДТВЕРДИТЬ», а не уверенное «верно». Цитату нужно проверить глазами: открыть ссылку и убедиться, что строка там есть.

🧠

Почему это работает

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

Сильная сторона. Если текст источника находится прямо перед глазами, в самом запросе, модель использует его намного надёжнее. Она не тратит усилие на поиск и открытие страницы. В эксперименте две модели подтверждали устаревшее утверждение 14 из 50 и 11 из 47 раз, когда страницу нужно было найти самим. Когда та же страница лежала в запросе, ошибок стало 0 из 50 и 1 из 50.

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

Рычаги управления: - Дата в запросе → модель понимает, что значение могло измениться после обучения. - Вариант «НЕ МОГУ ПОДТВЕРДИТЬ» → даёт модели законный выход вместо угадывания. В проверке авторов формат с фиксированной строкой ответа снизил ложное согласие у проприетарной модели на 17.5 пункта. - Требование дословной цитаты → вы быстро проверяете её вручную. Неверные цитаты почти всегда сопровождали устаревшие ответы (81.8% против 0.9%). - Вставка страницы вручную → самый сильный рычаг, когда факт критичен.

📋

Шаблон промпта

Сегодня {дата}. {Вопрос или утверждение для проверки}.

Источник (если он у меня есть):

{текст страницы или вставка из документа}


Правила:
1. Опирайся на источник выше. Если источника нет, найди первичный источник ({тип источника}) и ОБЯЗАТЕЛЬНО открой страницу. Не отвечай только по фрагментам из выдачи.
2. Процитируй дословно строку, на которой основан ответ, и дату публикации страницы.
3. Если дата источника старше {порог_свежести}, предупреди, что данные могут быть устаревшими.
4. Перед финальным ответом вернись к исходному вопросу: «{короткая формулировка вопроса}» — и сверь ответ с цитатой.
5. Если проверить не удалось, не угадывай.

Последняя строка ответа строго:
FINAL: {вариант_1} / {вариант_2} / НЕ МОГУ ПОДТВЕРДИТЬ

Что подставлять: - {дата} — сегодняшняя дата. - {тип источника} — например, «сайт ЦБ», «официальный сайт компании», «реестр ФНС». - {порог_свежести} — например, «3 месяца». - {вариант_1}/{вариант_2} — например, ВЕРНО / НЕВЕРНО.

Если источника у вас нет, удалите блок . Если он есть, вставляйте текст в запрос.

⚠️

Ограничения

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

⚠️ Вставка страницы не лечит всё: ошибки снижаются, но не исчезают. В механистической части даже при странице в запросе часть моделей продолжала выбирать старое значение. Критичные факты всё равно перепроверяйте глазами.

⚠️ Повтор вопроса — частичное средство: он вернул примерно четверть провальных проверок, разброс по моделям огромный (от единиц процентов до больше половины). Это добавка, а не решение.

⚠️ Узкий класс фактов: проверяли факты вида «значение изменилось после обучения модели» (клуб игрока, должность, ставка, нормы). Самые тяжёлые провалы были в спорте, где ответ лежит в первой строке страницы. Для длинных документов вроде инструкций к лекарствам вывод может быть другим.

⚠️ Одна проприетарная модель: в живом поиске тестировали одну лёгкую модель, остальные модели открытые и работали в контролируемом поиске. У флагманских моделей поведение может отличаться.

⚠️ Часть статьи для практика бесполезна: анализ слоёв (logit lens, J-lens) требует доступа к внутренностям модели. Он объясняет, почему так происходит, но не даёт инструмента.

🔍

Как исследовали

Идея была простой: найти факты, которые изменились после даты обучения модели, чтобы модель не могла знать их из памяти. Авторы собрали 225 таких фактов из спорта, финансов, медицины (FDA), SEC и других областей. У каждого есть старое и новое значение, поэтому устаревший ответ легко отличить от верного.

Сначала они проверили живой поиск у одной проприетарной модели: в 53.6% эпизодов она отвечала по сниппетам без открытия страницы. Затем всем моделям (одна проприетарная и шесть открытых конфигураций) дали одинаковый замороженный список из десяти результатов, где нужная страница всегда была доступна. Так провалы нельзя списать на плохую выдачу. Доля ответов без открытия страницы сильно различалась: от 2.6% у gpt-oss-120b до 76% у qwen3-8b.

Главное сравнение: ответ по сниппету против ответа с открытой и процитированной страницей. Устаревших ответов 6.4% против 1.3%, а неверных цитат 6.4% против 2.3%. В спорте у открытых моделей разрыв составлял 20.2% против 2.1%. Неверные цитаты почти всегда сопровождали устаревший ответ: 81.8% против 0.9%.

Затем проверили вмешательства. Когда страницу положили прямо в запрос, ошибки почти исчезли (у gemma-4-31b с 14/50 до 0/50). Повтор вопроса после каждой страницы вернул 41 из 157 проваленных проверок. Анализ слоёв показал, что модель «узнаёт» новое значение, но старое побеждает на последнем шаге. Удивило именно это: чтение доказательства не гарантирует его использование.

💡

Адаптации и экстраполяции

🔧 Техника: убрать вариант «НЕ МОГУ ПОДТВЕРДИТЬ» → увидеть, где модель угадывает

Если вы тестируете модель на своих фактах (а не доверяете ей), попросите дать ответ без права отказа. Сравните его с ответом, где отказ разрешён. Расхождения покажут факты, где модель уверена без оснований.

🔧 Техника: дословная цитата → второй чат проверяет только цитату

Откройте новый чат и дайте ему только страницу и цитату из первого ответа с вопросом: «Есть ли эта строка на странице и подтверждает ли она значение {X}?» Исследователи показали, что неверные цитаты сильно связаны с устаревшими ответами. Это идея экстраполяции, сама перекрёстная проверка в статье не тестировалась.

Для файла инструкций агента (CLAUDE.md, AGENTS.md, системный промпт):

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

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

🔗

Ресурсы

  • Работа: Retrieved but Not Read: Understanding Why Search-Augmented LLMs Fail to Use Available Evidence
  • Авторы: Owen Walters, Lihu Chen, Francesca Toni, Department of Computing, Imperial College London
  • Код и данные: github.com/ojwwalters/retrieved-but-not-read
  • Связанные работы: Wallat et al. 2025 (корректность цитат и верность источнику), Kale 2026 (внутренний веб-поиск современных LLM), Xie et al. 2024 (конфликт между памятью модели и внешними данными)

📋 Дайджест исследования

Ключевая суть

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

Принцип работы

Это не один трюк, а набор правил. Каждое убирает шаг, на котором модель ленится. 1. Дай текущую дату: модель поймёт, что значение могло измениться после обучения. 2. Вставь текст источника в запрос: искать и открывать ничего не нужно. 3. Если страницу ищет модель, требуй открыть её и процитировать строку со значением. 4. В агентном цикле повторяй исходный вопрос после каждой открытой страницы. 5. Задай финальную строку с честным вариантом «НЕ МОГУ ПОДТВЕРДИТЬ». Принцип: убери у модели возможность отвечать по сниппету и дай ей законный выход вместо угадывания. Повтор вопроса нужен потому, что в длинном цикле вопрос стоит в самом начале. После него идут горы текста страниц, и вопрос тонет. Повтор возвращает его в конец, как стикер на мониторе.

Почему работает

Модель экономит шаги. Сниппет выглядит как готовый ответ, и она останавливается. Если в сниппете или в её памяти лежит старое значение, она его подтверждает. Исследователи заглянули внутрь открытых моделей. Правильный ответ в середине вычислений получает преимущество. Но на последних слоях старый ответ его обгоняет. Новое значение модель замечает, но старое не вытесняет. Жесть: две модели подтверждали устаревшее утверждение 14 из 50 и 11 из 47 раз, когда страницу нужно было найти самим. Когда та же страница лежала в запросе, ошибок стало 0 из 50 и 1 из 50. Ещё цифры: - Фиксированная строка ответа с вариантом «не могу подтвердить» снизила ложное согласие у проприетарной модели на 17.5 пункта. - Неверные цитаты почти всегда шли вместе с устаревшими ответами: 81.8% против 0.9%. Цитата работает как детектор: проверил строку глазами и сразу видишь вранье. - Повтор вопроса вернул около четверти провальных проверок. Разброс по моделям огромный, так что это добавка, а не лекарство. Честно: правило «открой и процитируй» авторы напрямую не проверяли. Оно следует из связи между чтением страницы и качеством ответа. Это вывод по корреляции, проверь на своих задачах.

Когда применять

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

Мини-рецепт

1. Назови дату: начни запрос с «Сегодня {дата}».
2. Положи страницу в запрос: если источник у тебя есть, вставь текст между тегами текст страницы. Это самый сильный рычаг.
3. Если источника нет: потребуй найти первичный источник (сайт ЦБ, сайт компании, реестр) и ОБЯЗАТЕЛЬНО открыть страницу, а не отвечать по выдаче.
4. Проси цитату: дословная строка со значением плюс дата страницы.
5. Верни вопрос: перед выводом пусть модель заново прочтёт исходный вопрос и сверит его с цитатой. В агентном цикле повторяй вопрос после каждой страницы.
6. Дай честный выход: последняя строка строго из набора ИТОГ: ВЕРНО / ИТОГ: НЕВЕРНО (актуальное значение: ...) / ИТОГ: НЕ МОГУ ПОДТВЕРДИТЬ.
7. Проверь глазами: открой ссылку и убедись, что цитата там есть.

Примеры

[ПЛОХО]: `Правда, что ключевая ставка ЦБ сейчас 21%? Погугли.` [ХОРОШО]: `Сегодня {дата}. Проверь утверждение: «Ключевая ставка Банка России — 21%». Найди первичный источник (cbr.ru или решение Совета директоров) и ОБЯЗАТЕЛЬНО открой страницу, не отвечай по фрагментам из выдачи. Процитируй дословно строку со значением и датой решения. Если страницу открыть не удалось или решение старше последнего заседания — не подтверждай. Перед выводом вернись к вопросу «верно ли утверждение на {дата}?» и сверь с цитатой. Последняя строка строго одна из трёх: ИТОГ: ВЕРНО / ИТОГ: НЕВЕРНО (актуальное значение: ...) / ИТОГ: НЕ МОГУ ПОДТВЕРДИТЬ` Маркетолог готовит питч для инвесторов. Вместо уверенного «да» по обрывку из выдачи он получает цитату с датой или честный отказ. [ПЛОХО]: `Алекс Крисс — CEO PayPal?` [ХОРОШО]: `Сегодня {дата}. Вот страница с официального сайта: {вставленный текст}. Кто сейчас CEO PayPal? Процитируй строку, на которой основан ответ, и дату страницы. Если дата старше 3 месяцев — предупреди, что данные могли устареть.`
Источник: Retrieved but Not Read: Understanding Why Search-Augmented LLMs Fail to Use Available Evidence
ArXiv ID: 2610.21731 | Сгенерировано: 2026-10-16 08:20

Проблемы LLM

ПроблемаСутьКак обойти
Модель с поиском отвечает по фрагментам из выдачи и не открывает страницыВключаешь поиск. Модель делает запрос и видит список ссылок с короткими фрагментами текста. Фрагмент выглядит как готовый ответ, и модель останавливается. Она берёт значение из фрагмента или из своей памяти. Если значение устарело, подтверждает старое. При этом ссылается на источник, и ответ выглядит проверенным. Факт «модель поискала» ничего не гарантирует. Особенно страдают факты, которые меняются: должности, ставки, нормы, составы командНе полагайся на сам поиск. Лучший способ: вставь текст страницы прямо в запрос. Модель использует его намного надёжнее, чем найденный самой. Ошибки почти исчезают. Если вставить нельзя: требуй открыть страницу и дословно процитировать строку со значением. Добавь текущую дату в запрос, чтобы модель помнила: значение могло измениться. Критичные факты всё равно проверяй глазами

Методы

МетодСуть
Повтор исходного вопроса после каждой прочитанной страницы — вопрос не теряетсяПрименяй, когда модель сама ходит по страницам в несколько шагов. Вопрос стоит в самом начале. После него идёт много текста страниц. Вопрос «тонет» и теряет вес. Добавь в инструкцию агенту: После каждой открытой страницы вернись к исходному вопросу: «{вопрос}». Сверь, что страница отвечает именно на него. Так вопрос снова оказывается в конце контекста, рядом с местом ответа. Эффект частичный: возвращает примерно четверть провалов. Разброс между моделями большой. Это добавка, а не замена вставки источника. Не нужно: на одношаговых запросах и коротком контексте
Дословная цитата как проверка того, что модель читала источникПопроси: Процитируй дословно строку, на которой основан ответ, и дату страницы. Затем открой ссылку и найди строку. Почему работает: если модель страницу не читала, цитата выходит неточной или выдуманной. Неверная цитата почти всегда идёт вместе с устаревшим ответом. Проверка занимает секунды. Добавь выход: Если страницу открыть не удалось — последняя строка: FINAL: НЕ МОГУ ПОДТВЕРДИТЬ. Без этого варианта модель угадывает. Фиксированная последняя строка ответа заметно снижает ложное согласие. Оговорка: связь цитаты с качеством ответа наблюдаемая. Прямой проверки «требование цитаты улучшает ответ» нет. Проверь на своих задачах. Не работает: если проверять цитату лень. Тогда это декорация

Тезисы

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

Retrieved but Not Read: Understanding Why Search-AugmentedLLMsFail toUseAvailable Evidence

arXiv: 2610.21731

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

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

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

Проблема всплывает везде, где критична актуальность данных: от проверки ставок ЦБ в финтехе до юридических справок и мониторинга цен. Любой AI-поисковый ассистент рискует скормить тебе прошлогоднюю тухлятину с абсолютно невозмутимым видом. Если тащить такие непроверенные цифры в питчи или клиентские отчёты — гарантированно рискуешь сесть в лужу перед инвесторами.

Короче: сам факт того, что бот сходил в интернет, вообще ничего не гарантирует. Заставляй модель цитировать конкретные абзацы текста или перепроверяй цифры руками прямо в первоисточнике. Поиск в LLM не равен чтению, и пока разработчики это не починили, слепо верить сниппетам — верный способ выстрелить себе в ногу.

Работа с исследованием

Адаптируйте исследование под ваши задачи или создайте готовый промпт на основе техник из исследования.

0 / 2000
~0.5-2 N-токенов ~10-30с
~0.3-1 N-токенов ~5-15с