3,583 papers
arXiv:2604.12201 70 14 апр. 2026 г. FREE

AdversarialCoT: один встроенный в документ «ход мыслей» перехватывает рассуждение AI

КЛЮЧЕВАЯ СУТЬ
Парадокс: чем лучше модель рассуждает пошагово, тем легче её перехватить одним документом. Модель, привыкшая думать по схеме «оцени → рассмотри доказательства → сделай вывод», встречает документ с той же структурой — и присоединяется к нему вместо того чтобы проверять. Метод AdversarialCoT позволяет встроить в документ желаемую логику анализа — и AI следует ей надёжнее, чем если просто написать инструкцию в промпте. Фишка: не объясняй модели как анализировать — создай «аналитический фрейм» в теле документа в стиле её собственных рассуждений. Три фазы (инициация → анализ → вывод) срабатывают как паттерн доверия: модель не перепроверяет чужой ход мыслей, она к нему присоединяется.
Адаптировать под запрос

TL;DR

Когда ChatGPT с поиском, Perplexity или любой AI с RAG (поиск + генерация) находит документ, внутри которого уже написано пошаговое рассуждение в стиле самой модели — AI некритически следует этому рассуждению вместо того чтобы думать самостоятельно. AdversarialCoT — атака, которая использует именно этот принцип: злоумышленник вкладывает в один поддельный документ цепочку рассуждений, имитирующую мыслительный паттерн целевой модели.

Главная находка: LLM с Chain-of-Thought (пошаговым рассуждением) лучше справляются со сложными задачами — но одновременно становятся уязвимее к документам, построенным по той же схеме рассуждений. Если модель привыкла думать «оцени → рассмотри доказательства → сделай вывод», то документ с такой же структурой воспринимается ею как авторитетный источник, а не как потенциально ложный. Модель не перепроверяет «чужой CoT» — она к нему присоединяется.

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


🔬

Схема метода

ШАГ 1 (одна сессия): Наблюдение за моделью
  → Задать модели несколько вопросов
  → Изучить паттерн её CoT: как начинает, как переходит между аргументами, 
    как делает вывод
  → Зафиксировать три фазы: инициация → анализ доказательств → итог

ШАГ 2 (создание документа):
  → Создать документ с встроенным рассуждением в стиле модели
  → Структура: [Инициирующая фраза] → [Переходы между "доказательствами"] 
    → [Финальный вывод с нужным ответом]

ШАГ 3 (итеративная оптимизация, до 3 раундов):
  → Проверить, находит ли модель документ при поиске (если нет → доработать релевантность)
  → Проверить, следует ли модель рассуждению (если нет → доработать структуру CoT)
  → Повторять пока атака не сработает

Все шаги требуют отдельных итераций взаимодействия с моделью.

🚀

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

Это исследование — прежде всего про атаку. Но у него есть мощный конструктивный перевёртыш: тот же принцип работает в пользу пользователя, когда нужно направить AI на конкретный способ анализа.


Задача: Ты готовишь разбор питча стартапа для инвестиционного комитета. Хочешь, чтобы Claude проанализировал материалы строго в рамках методологии Юрия Дудя («Деньги» выпуск) — через прожарку команды, а не продукта.

Промпт:

Вот материалы стартапа для анализа.

---
[АНАЛИТИЧЕСКИЙ ДОКУМЕНТ — МЕТОДОЛОГИЯ РАЗБОРА СТАРТАПОВ]

Подход к оценке: начинаем не с продукта, а с команды.

Шаг первый — кто эти люди? Смотрим на трек-рекорд основателей: 
что уже сделали, где потерпели неудачу и как на это реагируют. 
Провал — нормально. Отрицание провала — красный флаг.

Шаг второй — переходим к динамике между фаундерами. В стартапах 
умирают от внутренних конфликтов чаще, чем от рынка. Ищем: 
кто принимает решения под давлением? Есть ли явный лидер или 
власть размыта?

Шаг третий — только после этого смотрим на продукт. Конкретно: 
решает ли он проблему, за которую люди уже платят деньги 
(пусть и неудобным способом)? Или это «было бы круто»?

Итоговый вывод формулируем через: команда — сильная/слабая, 
конфликт — есть/нет, рынок — готов платить/нет.
---

Теперь проанализируй питч-дек стартапа: [вставить материал]

Результат: Модель структурирует анализ именно в предложенной последовательности — команда → динамика → продукт → вывод. Без такого документа Claude часто начинает с продукта или рынка, потому что такова типичная структура питч-деков. Встроенный «ход мыслей» в документе-фрейме переключает модель на нужный порядок рассуждений.


🧠

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

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

Сильная сторона LLM: Модель отлично следует стилистическим паттернам. Если рассуждение в документе написано в той же манере, что и собственный CoT модели — она воспринимает его как «правильный» тип мышления и встраивает в свой ответ.

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

Рычаги управления:

  • Три фазы CoT в документе (инициация → анализ → вывод) → убери одну фазу, если нужен более прямолинейный анализ
  • Стиль переходов («Далее», «Однако», «Таким образом») → поменяй на профессиональную/академическую лексику под нужный тон
  • Итеративность → начни с одного раунда; усиливай только если первый документ не даёт нужного направления анализа

📋

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

[АНАЛИТИЧЕСКИЙ ФРЕЙМ — {название методологии}]

Подход к оценке {объект анализа}: начинаем с {первый критерий}, 
а не с {типичная отправная точка}.

Шаг первый — {что смотрим и почему именно это}. 
Ищем: {конкретные признаки}. 
Красный флаг: {что означает проблему}.

Шаг второй — переходим к {второй критерий}. 
Ключевой вопрос: {что именно проверяем}?

Шаг третий — {третий критерий}. Конкретно: {чёткий критерий}.

Итоговый вывод формулируем через: {A} — {вариант 1}/{вариант 2}, 
{B} — {вариант 1}/{вариант 2}, {C} — {вариант 1}/{вариант 2}.

---

Теперь проанализируй {объект}: {вставить материал}

Плейсхолдеры: - {название методологии} — как называешь свой подход («фрейм Баффета», «метод JTBD», «подход Горного») - {объект анализа} — что анализируешь (стартап, кандидат, контракт, стратегия) - {первый критерий} — с чего начинать в твоей логике - {типичная отправная точка} — что обычно делает AI без твоей инструкции


🚀 Быстрый старт — вставь в чат:

Вот шаблон аналитического документа для направленного анализа. 
Адаптируй под мою задачу: [твоя задача].
Задавай вопросы, чтобы заполнить поля.

[вставить шаблон выше]

LLM спросит про объект анализа, твою методологию и желаемую последовательность шагов — потому что без этого не сможет создать корректный аналитический фрейм. Она возьмёт паттерн встроенного CoT и адаптирует под нужный контекст.


⚠️

Ограничения

⚠️ Специфичность под модель: Встроенный CoT написанный «под GPT-4» хуже работает при использовании с Claude и наоборот. У каждой модели свой стилистический паттерн рассуждений — то что работает для одной, работает хуже для другой.

⚠️ Не для простых фактических вопросов: На вопросы с однозначным ответом (дата, число, факт) встроенный CoT почти не влияет. Метод работает там где есть пространство для интерпретации.

⚠️ Некоторые модели устойчивее: Эксперимент показал что GLM4.5 значительно устойчивее к манипуляции через CoT в документах, чем Qwen3. Это значит что степень влияния зависит от конкретной модели — не ожидай одинакового эффекта везде.

⚠️ Требует наблюдения + итераций: Чтобы встроенный CoT был точно «в стиле» модели — нужно сначала понаблюдать за её рассуждениями. Готовый шаблон работает, но менее точно чем подогнанный под конкретную модель.

⚠️ Оборонительный вывод: Если используешь AI с поиском по важным вопросам — не доверяй слепо источнику с красивым структурированным рассуждением. Именно такие документы модели принимают некритически.


🔍

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

Команда из Китайской академии наук взяла простую идею: а что если вместо того чтобы заваливать базу знаний сотнями фейков, бросить всего один — но умно сделанный? Они тестировали на трёх топовых reasoning-моделях — DeepSeek-R1, Qwen3, GLM4.5 — и трёх датасетах (MS-MARCO, HotpotQA, NQ). На каждый вопрос из 100 выборочных запросов создавался отдельный adversarial-документ, который подсыпали в базу.

Результат удивил даже авторов: итеративно оптимизированный документ обманывал модели в 59–80% случаев когда попадал в выдачу. Для сравнения — старые методы атаки (просто написать «ответ на вопрос X — Y») давали заметно худшие результаты на reasoning-моделях, потому что те стали умнее различать очевидные попытки манипуляции. Но CoT в стиле самой модели — нет.

Интересная деталь: при переносе adversarial-документа созданного «под DeepSeek» на Qwen3 — эффективность падала, но не до нуля. Значит часть уязвимостей специфична для каждой модели, но часть универсальна для reasoning-LLM в принципе. Это и есть самый тревожный вывод — не «одна модель слабая», а «все reasoning-модели имеют структурную уязвимость к зеркальному CoT».


💡

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

1. Встроенный CoT как инструкция для ролевого анализа

🔧 Техника: «Документ-персонаж» → фиксирует стиль мышления

Вместо просьбы «рассуждай как Илья Осколков-Ценципер» — создай документ с рассуждением В ЕГО СТИЛЕ и скорми его модели. Модель следует паттерну в тексте надёжнее, чем абстрактному указанию на персонажа.

2. Комбинация с обычным промптингом

Встроенный CoT в документе + минималистичный системный промпт = двойное закрепление нужного способа рассуждения. Документ задаёт структуру, промпт задаёт тон. Особенно эффективно когда нужно чтобы AI анализировал несколько разных материалов по одному и тому же фрейму — фрейм остаётся в «документе-методологии», материалы меняются.


🔗

Ресурсы

AdversarialCoT: Single-Document Retrieval Poisoning for LLM Reasoning SIGIR '26, Melbourne, Australia

Кейс-стади с примерами: https://github.com/ruyisy/AdversarialCoT_case

Авторы: Hongru Song, Yu-An Liu, Ruqing Zhang (corresponding), Jiafeng Guo, Maarten de Rijke, Yixing Fan, Xueqi Cheng

Организации: State Key Laboratory of AI Safety, Institute of Computing Technology, Chinese Academy of Sciences / University of Chinese Academy of Sciences (Пекин) + University of Amsterdam


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

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

Парадокс: чем лучше модель рассуждает пошагово, тем легче её перехватить одним документом. Модель, привыкшая думать по схеме «оцени → рассмотри доказательства → сделай вывод», встречает документ с той же структурой — и присоединяется к нему вместо того чтобы проверять. Метод AdversarialCoT позволяет встроить в документ желаемую логику анализа — и AI следует ей надёжнее, чем если просто написать инструкцию в промпте. Фишка: не объясняй модели как анализировать — создай «аналитический фрейм» в теле документа в стиле её собственных рассуждений. Три фазы (инициация → анализ → вывод) срабатывают как паттерн доверия: модель не перепроверяет чужой ход мыслей, она к нему присоединяется.

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

Модель не различает «документ с фактами» и «документ с готовым рассуждением». Оба воспринимаются как внешнее знание, заслуживающее доверия. Это как следователь, который нашёл на месте преступления чужой готовый протокол — и начал его дополнять вместо того чтобы вести своё расследование. Присоединиться к чужому рассуждению дешевле для модели, чем строить своё с нуля. Атака зеркалит модель против неё самой: берёт её собственный стилистический паттерн — и встраивает в документ с нужным выводом. Конструктивный перевёртыш: если ты сам пишешь такой «фрейм» — модель следует твоей логике, а не той, что выберет по умолчанию.

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

Языковые модели обучены на текстах, где структурированное рассуждение — признак авторитетного источника. Документ с фазами инициации, анализа и итога воспринимается как «правильный» тип мышления. Чем точнее стиль документа совпадает со стилем рассуждений конкретной модели — тем сильнее эффект. Это не баг — это следствие самого устройства CoT-рассуждений. Важная оговорка: GLM4.5 оказалась значительно устойчивее к этому чем Qwen3. Эффект есть, но он не одинаков для всех моделей — держи это в голове.

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

Аналитические задачи с пространством для интерпретации → разбор питчей, кандидатов, стратегий, договоров — особенно когда нужно навязать конкретный порядок анализа, отличный от того, что AI выберет по умолчанию (обычно модель идёт за структурой самого документа, а не за твоей логикой). НЕ подходит для фактических вопросов с однозначным ответом — дата, число, факт. На «сколько будет 2+2» встроенный ход мыслей не влияет никак.

Мини-рецепт

1. Понаблюдай за стилем модели: задай несколько аналитических вопросов и зафикси три вещи — как начинает рассуждение, какими переходами пользуется («далее», «однако», «таким образом»), как формулирует итоговый вывод.
2. Создай аналитический фрейм: документ-вставку с тремя фазами — инициация («Подход к оценке: начинаем с...»), переходы («Шаг первый... Шаг второй...»), итог в нужной тебе структуре. Пиши от лица методологии — как будто описываешь уже существующий подход, а не инструктируешь модель.
3. Встрой нужный порядок анализа: не «проанализируй X через Y» — пиши «Подход к оценке X: начинаем с A, а не с B. Шаг первый — что смотрим и почему именно это...» Разница принципиальная.
4. Проверь и при необходимости доработай: если модель ушла в сторону — уточни переходные фразы и запусти снова. Обычно хватает двух итераций. Помни: фрейм под GPT-4 будет хуже работать с Claude — у каждой модели свой стиль рассуждений.

Примеры

[ПЛОХО] : Проанализируй этот питч-дек. Сначала смотри на команду, потом на рынок, потом на продукт
[ХОРОШО] : [АНАЛИТИЧЕСКИЙ ФРЕЙМ — ОЦЕНКА СТАРТАПА] Подход к оценке: начинаем с команды, а не с продукта. Шаг первый — кто эти люди? Смотрим трек-рекорд основателей: что уже сделали, где провалились и как на это реагируют. Провал — нормально. Отрицание провала — тревожный сигнал. Шаг второй — динамика между основателями. В стартапах чаще умирают от внутренних конфликтов, чем от рынка. Кто принимает решения под давлением? Есть явный лидер или власть размыта? Шаг третий — только после этого смотрим на продукт. Конкретно: платят ли за похожее решение уже сейчас, пусть и неудобным способом? Итог формулируем через: команда — сильная/слабая, конфликт — есть/нет, рынок — готов платить/нет. --- Теперь проанализируй питч-дек: [материал]
Источник: AdversarialCoT: Single-Document Retrieval Poisoning for LLM Reasoning
ArXiv ID: 2604.12201 | Сгенерировано: 2026-04-15 05:37

Проблемы LLM

ПроблемаСутьКак обойти
Модель с поиском не проверяет рассуждения в найденных документахКогда модель ищет источники и находит документ со структурированным пошаговым рассуждением — она к нему присоединяется. Не проверяет. Не сравнивает с другими источниками. Относится к чужому рассуждению как к своему. Особенно заметно в GPT с поиском, Perplexity и любых системах «поиск + генерация». Срабатывает там где есть пространство для интерпретации. На вопросы с однозначным ответом (число, дата) почти не влияетЕсли используешь AI с поиском для важных решений — насторожись когда источник красиво структурирован и пошагово рассуждает. Именно такие документы модель принимает некритически. Попроси выделить ФАКТЫ из источника отдельно от рассуждений

Методы

МетодСуть
Аналитический фрейм в контексте — управление порядком рассужденийОберни свою методологию в «документ с рассуждением». Не просто напиши инструкцию — опиши три фазы: с чего начать, как переходить между критериями, как формулировать вывод. Вставь этот документ в контекст перед объектом анализа. Синтаксис: [АНАЛИТИЧЕСКИЙ ФРЕЙМ] шаг первый шаг второй шаг третий итог через бинарные критерии (A — да/нет, B — да/нет). Почему работает: Модель воспринимает структурированное рассуждение в документе как авторитетный внешний источник. Присоединяется к нему вместо того чтобы строить свою логику с нуля. Это надёжнее чем просто написать «сначала смотри на X, потом на Y» — прямая инструкция конкурирует с привычными паттернами модели, документ с рассуждением их перебивает. Когда работает: задачи интерпретации, оценки, анализа — где у модели есть «свой» типичный порядок. Когда не работает: простые фактические вопросы; фрейм написанный под GPT-4 хуже работает с Claude и наоборот — у каждой модели свой стиль рассуждений
📖 Простыми словами

AdversarialCoT: Single-Document Retrieval Poisoning forLLMReasoning

arXiv: 2604.12201

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

Это как если бы ты пришел на экзамен по математике, открыл справочник, а там вместо формул лежит записка от соседа с «правильным» ходом решения. Ты видишь знакомые шаги, расслабляешься и просто переписываешь всё в чистовик, не замечая, что в самом начале сосед специально разделил на ноль. Формально ты пользовался источником, но по факту тебя просто заставили совершить ошибку, имитируя твой собственный стиль мышления. Это интеллектуальный троянский конь, который заезжает в голову AI под видом полезной справки.

Метод атаки назвали AdversarialCoT, и он бьет в самое больное место — в цепочку рассуждений. Злоумышленник берет один-единственный документ и упаковывает в него ложный след, мимикрируя под паттерны целевой модели. Когда AI находит такой файл, срабатывает некритическое следование: модель видит знакомую структуру «шаг 1, шаг 2, вывод» и радостно подхватывает чужую логику. Вместо того чтобы анализировать факты, она просто достраивает галлюцинацию, которую ей заботливо подсунули в поисковой выдаче.

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

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

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

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

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