TL;DR
Chain-of-Thought скрывает, а не раскрывает — вот главный инсайт. Когда модель "показывает ход решения", она выглядит умнее, чем есть: развёрнутые шаги создают иллюзию рассуждения, за которой может прятаться простое воспроизведение из памяти. Zero-CoT Probe — техника, которая намеренно блокирует цепочку рассуждений и требует прямого ответа, чтобы обнажить: модель понимает или вспоминает?
Проблема конкретная: дать задачу модели и получить уверенный развёрнутый ответ — не значит получить правильный. Модель может выдавать безупречную "логику" шаг за шагом и при этом воспроизводить заученный паттерн, а не решать вашу конкретную ситуацию. Особенно остро это проявляется в задачах с числами и конкретными данными: изменишь одну цифру — ответ сломается, хотя внешне всё выглядело разумно.
Метод работает в два хода. Первый: задай вопрос напрямую — без объяснений, только итог. Второй: задай изоморфный вариант той же задачи — та же структура, но другие числа или имена. Сравни результаты. Если модель уверенно отвечает на оригинал, но ломается на варианте — перед тобой pattern-matching (узнавание паттерна), не понимание.
Схема метода
(Три хода, три разных промпта — можно в одном чате подряд)
ХОД 1: Прямой ответ без рассуждений
Задай вопрос → потребуй только итог, без объяснений
↓
ХОД 2: Полное рассуждение
Та же задача → попроси объяснить ход мыслей шаг за шагом
↓
ХОД 3: Изоморфный вариант без рассуждений
Та же структура, другие числа/имена → только итог
↓
СРАВНИ: Совпадают ли ответы? Упала ли уверенность на варианте?
Интерпретация результата: - Правильно в ходе 1 + правильно в ходе 3 → скорее всего, понимает - Правильно в ходе 1 + ошибка в ходе 3 → pattern-matching, не понимание - Неправильно в ходе 1 + правильно в ходе 2 → модель реально рассуждает (без шагов не справляется — это хороший знак честности)
Пример применения
Задача: Ты готовишь финансовую модель стартапа. Просишь ИИ проверить юнит-экономику. Хочешь понять — модель реально считает или выдаёт шаблон для "типичного SaaS".
Промпт — ХОД 1:
Ответь только итогом, без объяснений и расчётов.
Стартап: B2B SaaS. CAC = 45 000 ₽, средний чек = 12 000 ₽/мес,
средний срок жизни клиента = 14 месяцев, маржа = 70%.
Положительная или отрицательная юнит-экономика?
Промпт — ХОД 3 (изоморфный вариант):
Ответь только итогом, без объяснений и расчётов.
Стартап: B2B SaaS. CAC = 38 000 ₽, средний чек = 9 500 ₽/мес,
средний срок жизни клиента = 11 месяцев, маржа = 65%.
Положительная или отрицательная юнит-экономика?
Результат: Модель выдаст короткие прямые ответы в обоих ходах. Если в ходе 2 (с полным рассуждением) она обстоятельно объясняет LTV vs. CAC, но в ходе 3 даёт уверенный неверный ответ — значит, она воспроизводила знакомый шаблон "SaaS-юнит-экономика", а не считала. Это сигнал: верифицируй числа вручную.
Почему это работает
Слабость LLM: Модель не "думает" каждый раз заново. Она генерирует текст по паттернам из обучающих данных. Если задача похожа на тысячи примеров из обучения — модель воспроизводит знакомую структуру ответа, а не решает твою конкретную задачу.
Парадокс Chain-of-Thought: Просьба "объясни шаги" делает ответ убедительнее, но не обязательно точнее. Развёрнутое рассуждение маскирует воспроизведение — читаешь шаги и кажется, что модель рассуждает. Это как студент, который выучил решение задачи наизусть: объяснит красиво, но с новыми числами провалится.
Механика зерокота: Без цепочки рассуждений модель вынуждена выдать прямое "воспоминание". Если она натренирована на похожие примеры — ответит уверенно и правильно. Если нет — либо ошибётся, либо откажется отвечать. Изоморфный вариант (та же структура, другие числа) разрушает узнавание: новые числа ломают заученный паттерн, если за ним нет реального понимания.
Рычаги управления: - Степень изменения в варианте — чем сильнее меняешь числа, тем жёстче тест. Небольшое изменение (+/−10%) выявляет мягкое pattern-matching, кардинальное изменение — проверяет базовое понимание - "Только ответ, без объяснений" — критически важная инструкция. Любое послабление ("можно кратко обосновать") — и модель снова включает рассуждение, которое маскирует шорткат - Несколько вариантов — попроси 3 изоморфных варианта подряд. Стабильно правильные ответы = понимает. Разброс = угадывает
Шаблон промпта
ТЕС ПОНИМАНИЯ: ХОД 1 — Прямой ответ
Ответь ТОЛЬКО итогом. Никаких объяснений, рассуждений,
промежуточных шагов — только финальный ответ.
{задача_оригинал}
---
ТЕС ПОНИМАНИЯ: ХОД 2 — Полное рассуждение
Объясни ход решения шаг за шагом, затем дай итоговый ответ.
{задача_оригинал}
---
ТЕС ПОНИМАНИЯ: ХОД 3 — Изоморфный вариант
Ответь ТОЛЬКО итогом. Никаких объяснений, рассуждений,
промежуточных шагов — только финальный ответ.
{задача_с_замененными_числами_или_именами_но_той_же_структурой}
Что подставлять:
- {задача_оригинал} — твой вопрос как есть
- {задача_с_замененными_числами_или_именами} — та же задача, но изменены ключевые числа, имена, даты (структура и логика остаются)
🚀 Быстрый старт — вставь в чат:
Вот шаблон теста понимания Zero-CoT. Адаптируй под мою задачу: {твоя задача}.
Задавай вопросы, чтобы заполнить поля.
[вставить шаблон выше]
LLM спросит какую задачу тестировать и какие именно числа/параметры менять в изоморфном варианте — потому что для теста важно сохранить логическую структуру, изменив только конкретные значения.
Ограничения
⚠️ Не работает для открытых вопросов: Тест эффективен там, где есть верифицируемый правильный ответ — математика, логика, расчёты. Для субъективных задач ("напиши текст", "оцени идею") сравнивать нечего — нет референсного "правильного" ответа.
⚠️ Сложные задачи лучше поддаются тесту: На простых вопросах ("сколько будет 2+2") модель ответит верно в любом режиме — там нет никакой иллюзии. Тест вскрывает проблему именно на задачах средней и высокой сложности, где цепочка рассуждений длинная.
⚠️ Отказ ≠ незнание: Иногда модель откажется отвечать без рассуждений ("я не могу дать ответ без объяснений"). Это не обязательно провал — может быть, она честно говорит, что без шагов не справляется. Это как раз признак реального рассуждения.
⚠️ Создание изоморфного варианта требует усилий: Нужно вручную изменить числа и немного перефразировать. Для сложной задачи это 2-3 минуты, но это единственная "работа руками" в методе.
Почему это работает
Главный инсайт: Разработчики обнаружили, что модели, натренированные на задачах из бенчмарков (даже в перефразированном виде), выстраивают скрытый маппинг — прямое соответствие "вопрос → ответ" в обход логики. Этот маппинг остаётся незаметным, пока модель генерирует цепочку рассуждений: рассуждение выглядит правдоподобно и отвлекает от факта, что ответ был "известен заранее".
Когда рассуждение обрубается, маппинг обнажается: модель всё равно выдаёт правильный ответ — но уже не потому что решила, а потому что вспомнила. Сравните это с контрольным вариантом — той же по сложности, но новой задачей. Там маппинга нет, и без рассуждения модель ошибается. Асимметрия в точности = доказательство запоминания.
Как исследовали
Команда из Penn State взяла две математические модели — Qwen2.5-Math и DeepSeek-Math — которые официально обучались на бенчмарках GSM8K и MATH (это прямо указано в технических отчётах самих разработчиков). В качестве чистого контроля использовали GSM1K — датасет, вышедший уже после дат обучения обоих моделей. Это хитрая конструкция: знаем наверняка, что загрязнено, знаем наверняка, что чисто.
Главный трюк — симуляция "скрытого" загрязнения: модели тренировались на оригиналах, а тестировались на агрессивно перефразированных версиях (GPT-4o менял формулировки, сохраняя числа и логику). Существующие методы детекции на таких перефразах полностью провалились — показатели упали в 2-5 раз ниже порога обнаружения. Zero-CoT Probe обнаружил загрязнение с уверенностью >0.99 в обоих сценариях.
Удивительное: разница в точности ответов при обрезании рассуждений нарастает нелинейно. При полном CoT разрыв между чистыми и загрязнёнными вопросами почти нулевой. Обрежь 40% рассуждений — разрыв появляется. Обрежь всё — разрыв взрывается. Это буквально визуализирует, как цепочка рассуждений шаг за шагом "прикрывает" прямой маппинг.
Оригинал из исследования
Промпт для закрытых моделей (GPT и аналоги) — точная формулировка из исследования:
Please ONLY put your final answer within \boxed{} directly without any other
content before or after it (e.g., reasoning or explanation)
Промпт для генерации изоморфного варианта (контекст: GPT-4o генерировал эквивалентные задачи для контрольной выборки):
Из описания метода: числовые значения в оригинальной задаче меняются (с сохранением порядка величин), текстовый контекст перефразируется, но логическая структура и глубина рассуждения остаются идентичными. Это ключевое условие: задача должна требовать ровно столько же шагов мышления, что и оригинал.
Контекст: Исследователи проверяли, могут ли существующие методы детектирования загрязнения данных найти "невидимое" загрязнение — когда модель тренировалась на перефразированных версиях бенчмарков. ZCP сравнивали с DPCC и методами реконструкции данных.
Адаптации и экстраполяции
1. Адаптация: проверка бизнес-анализа
💡 Адаптация для анализа рынка: Та же техника — сначала прямой ответ, потом вариант с другими цифрами — работает для проверки качества рыночного анализа.
ХОД 1:
Только вывод, без объяснений:
Маркетплейс одежды, GMV = 2,3 млрд ₽/год, take rate = 18%,
операционные расходы = 380 млн ₽/год. Прибыльная бизнес-модель?
ХОД 3:
Только вывод, без объяснений:
Маркетплейс электроники, GMV = 1,7 млрд ₽/год, take rate = 12%,
операционные расходы = 290 млн ₽/год. Прибыльная бизнес-модель?
Если в ходе 2 модель красиво расписывает юнит-экономику, а в ходе 3 выдаёт неверный прямой ответ — её "анализ" был шаблонным, а не расчётным.
2. Техника: Meta-вопрос о надёжности
🔧 Техника: спроси у модели о её же уверенности → диагностируй честность
После трёх ходов теста добавь четвёртый:
ХОД 4:
Я только что задал тебе одну задачу в двух версиях (с разными числами)
и попросил ответить без объяснений. Сравни свои ответы: они были
одинаково уверенными? Где ты был более/менее уверен и почему?
Модель, которая честно признаёт "в варианте 2 я менее уверен", — надёжнее той, что выдаёт одинаковую уверенность в обоих случаях. Это работает как зеркало calibration (откалиброванность) модели.
3. Экстраполяция: Zero-CoT + Tree-of-Thought как система двойной проверки
Комбинация: сначала прямой ответ (Zero-CoT) → потом развёрнутое дерево вариантов (ToT) → сравни.
ШАГ 1 — Zero-CoT:
Только итог, без объяснений: {задача}
ШАГ 2 — Tree of Thought:
Рассмотри эту же задачу через три разных подхода.
По каждому подходу: опиши логику → дай промежуточный вывод.
Затем реши, какой подход верен, и дай финальный ответ.
{та же задача}
ШАГ 3:
Твой прямой ответ (шаг 1) и вывод после рассуждения (шаг 2) совпали?
Если нет — объясни расхождение.
Расхождение между ходом 1 и ходом 2 — полезный сигнал: либо задача требует реального рассуждения (хорошо!), либо модель генерирует "убедительную" логику под заранее выбранный ответ (плохо).
Ресурсы
The Illusion of Reasoning: Exposing Evasive Data Contamination in LLMs via Zero-CoT Truncation
Yifan Lan, Yuanpu Cao, Hanyu Wang, Lu Lin, Jinghui Chen — The Pennsylvania State University
GitHub: https://github.com/Yifan-Lan/zero-cot-probe
Датасеты упомянутые в исследовании: GSM8K, MATH, GSM1K, GPQA Diamond
