TL;DR
Двухступенчатый подход: модель сначала отвечает быстро и оценивает свою уверенность. Если уверенность низкая — запускается развёрнутое рассуждение (CoT). Если высокая — принимается быстрый ответ. Исследователи проверили 4 способа оценки уверенности: попросить модель назвать уверенность от 0 до 1 (verbalised), спросить "правильный ли ответ?" (P(True)), perplexity и margin sampling.
Проблема: Chain-of-Thought полезен не всегда. Пользователи часто включают режим "подумай" для любой задачи — в итоге модель тратит токены на очевидные вопросы, где быстрый ответ и так правилен. На некоторых задачах CoT даёт прирост точности в 20-30%, на других — вообще не помогает или даже вредит. При этом CoT увеличивает расход токенов в 2-5 раз. Но решать вручную "нужен ли тут CoT" — утомительно и ненадёжно.
Решение: Оценка уверенности работает как переключатель. Модель быстро отвечает, смотрит на свою уверенность — если всё чётко, останавливается. Если сомневается — включает глубокий анализ. Лучшие результаты: сокращение CoT на 25-30% при сохранении точности. Для commonsense и knowledge задач экономия до 50%. Для математики почти не работает — там CoT нужен почти всегда.
Схема метода
ШАГ 1: Модель генерирует быстрый ответ
ШАГ 2: Вычисляется confidence score (уровень уверенности)
ШАГ 3: Если score < порог → запускается CoT
Если score ≥ порог → используется быстрый ответ
Исследователи тестировали в offline режиме (доступ ко всем оценкам сразу) и online режиме (решение на лету для каждого вопроса).
Пример применения
⚠️ Важно: В обычном ChatGPT/Claude нет прямого управления CoT-режимом через один промпт. Но принцип можно применить вручную через двухступенчатый workflow.
Задача: Менеджер продукта в EdTech-стартапе оценивает идею новой функции — геймификация через NFT-бейджи для студентов. Нужно быстро понять: копать глубже или идея очевидно плохая?
Промпт (Шаг 1 — быстрый ответ + оценка уверенности):
Идея: добавить в наше приложение для обучения NFT-бейджи —
студенты получают уникальные цифровые награды за прохождение курсов.
Дай быстрый первичный вердикт: стоит ли развивать эту идею?
Затем оцени свою уверенность от 0.0 (совсем не уверен) до 1.0 (абсолютно уверен).
Результат: Модель даст короткий ответ (например, "Идея сомнительна по причинам X, Y") и уверенность (например, 0.4).
Промпт (Шаг 2 — если уверенность < 0.7, запускаем глубокий анализ):
Твоя уверенность низкая (0.4). Проанализируй детально:
- Риски и возможности
- Похожие кейсы в EdTech
- Альтернативные подходы к геймификации
- Финальная рекомендация
Рассуждай пошагово.
Что получишь: В первом запросе — быстрая оценка за 50-100 токенов. Если модель сомневается (низкая уверенность) — второй запрос развернёт анализ на 500-1000 токенов. Если уверена (например, 0.9 — "идея очевидно плохая, NFT уже не хайп") — экономишь токены и время, не запуская второй шаг.
Почему это работает
Модели плохо знают, когда остановиться. LLM обучены генерировать текст, но не обучены самостоятельно решать, нужно ли рассуждать. Они либо всегда думают (тратят токены), либо всегда отвечают быстро (теряют точность на сложных задачах).
Модели умеют оценивать свою уверенность. Большие модели (GPT-OSS-20B, Qwen3-32B) хорошо калиброваны — когда они говорят "уверен на 0.9", они действительно правы в ~90% случаев. Это работает лучше на больших моделях — они точнее чувствуют границу между "знаю точно" и "надо подумать".
Двухступенчатый подход использует сильную сторону. Быстрые ответы модель даёт хорошо. Оценку уверенности — тоже даёт надёжно (на больших моделях). Комбинация двух навыков позволяет фильтровать задачи: простые решаются быстро, сложные идут в глубокий анализ.
Рычаги управления:
- Порог уверенности (0.5? 0.7? 0.8?) — подбирай под свои задачи. Низкий порог (0.5) → больше CoT, выше точность, больше токенов. Высокий (0.8) → экономия токенов, но можешь пропустить сложные случаи.
- Метод оценки уверенности — verbalised (числовая шкала 0-1) работает стабильно на всех моделях. P(True) ("правильный ли ответ? A/B") лучше для Qwen3-32B. Perplexity и margin требуют API.
- Количество шагов — можно добавить третий шаг: если после CoT уверенность всё ещё низкая → попросить альтернативные мнения или дополнительную проверку.
Шаблон промпта
Вариант 1: Verbalised Confidence (работает на всех моделях)
{вопрос_или_задача}
Ответь кратко. Затем оцени свою уверенность от 0.0 до 1.0.
Формат: [Ответ] | Уверенность: [число]
Если уверенность < 0.7:
Твоя уверенность низкая ({значение_уверенности}).
Проанализируй вопрос детально, рассуждая пошагово.
Вариант 2: P(True) (работает лучше на Qwen3-32B, стабильно везде)
{вопрос_или_задача}
Ответь кратко.
Затем отдельным запросом:
Вот ответ: {полученный_ответ}
Правильный ли этот ответ?
A) True
B) False
Выбери A или B.
Если модель выбирает B или колеблется:
Ты не уверен в ответе. Проанализируй вопрос детально, рассуждая пошагово.
Пояснение плейсхолдеров:
{вопрос_или_задача}— твоя задача: вопрос, текст для анализа, проблема для решения{значение_уверенности}— число которое модель назвала (например, 0.4){полученный_ответ}— то что модель ответила на первом шаге
🚀 Быстрый старт — вставь в чат:
Вот шаблон для двухступенчатого подхода с оценкой уверенности.
Адаптируй под мою задачу: [опиши свою задачу].
Используй Вариант 1 (verbalised) или Вариант 2 (P(True)) —
какой лучше подойдёт для этой задачи? Объясни почему.
[вставить шаблон выше]
LLM спросит детали твоей задачи (какой тип вопросов, нужна ли высокая точность или скорость важнее) — потому что для разных задач оптимален разный порог уверенности и метод оценки. Она адаптирует workflow под твой контекст.
Ограничения
⚠️ Маленькие модели плохо калиброваны: На Qwen3-8B методы оценки уверенности не работают — модель не может надёжно отличить правильные ответы от неправильных. Нужны модели от 20B параметров для стабильной калибровки.
⚠️ Математика почти всегда требует CoT: На задачах типа GSM8K быстрый ответ правилен в ~10% случаев. Экономить тут нечего — CoT нужен почти для всех примеров. Метод работает, когда есть микс простых и сложных задач, а не когда всё сложное.
⚠️ Научные вопросы — слабая зона: На GPQA (graduate-level вопросы) модели плохо оценивают свою уверенность — они одинаково уверены в правильных и неправильных ответах. Confidence-gating даёт минимальную экономию.
⚠️ Нет универсального метода: Для GPT-OSS лучше работают margin и perplexity. Для Qwen3-32B — P(True). Для Qwen3-8B — ничего не работает стабильно. Нужно тестировать на своих задачах.
⚠️ Требует несколько запросов: В отличие от "одного волшебного промпта", это workflow — минимум 2 запроса (быстрый ответ + оценка, затем опционально CoT). Не подходит для задач где критична скорость одиночного ответа.
⚠️ Excess CoT — основная проблема: В 25-50% случаев метод включает CoT когда он не нужен (быстрый ответ уже был правилен). Это лучше чем "всегда CoT", но далеко от идеала. Oracle (знает когда CoT реально нужен) экономит в 2 раза больше токенов.
Как исследовали
Команда протестировала 4 способа оценки уверенности на 7 датасетах и 3 моделях (GPT-OSS-20B, Qwen3-32B, Qwen3-8B). Типы задач: commonsense (угадай логику), knowledge (фактические вопросы), математика, научные вопросы, soft reasoning (юридическая логика).
Дизайн: Взяли каждый вопрос, получили быстрый ответ и CoT-ответ. Для каждого метода (verbalised, P(True), perplexity, margin) вычислили confidence score. Затем варьировали порог — от "CoT для всех" до "CoT для 10% самых неуверенных". Для каждого порога измерили точность и расход токенов.
Сравнение с baseline: Random gating (случайно выбирать когда CoT) — честный baseline без волшебства. Oracle (идеальный выбор — знает когда CoT нужен) — потолок производительности.
Главный результат: Verbalised и P(True) стабильно бьют random на больших моделях. Экономия 25-30% токенов при сохранении точности в пределах 1%. Но до oracle далеко — там экономия 50-70% с приростом точности +4-5%.
Почему такая разница? Большие модели (20B+) имеют хорошую калибровку — их оценка уверенности коррелирует с реальной правильностью ответа. AUROC (метрика качества разделения) для GPT-OSS-20B и Qwen3-32B в 1.5-2 раза выше, чем для Qwen3-8B. Это объясняет почему маленькие модели не выигрывают от confidence-gating.
Реалистичный сценарий: Researchers провели Monte Carlo cross-validation — 100 раз случайно делили данные на калибровочный набор (10%) и тестовый (90%). На калибровочном находили Pareto-optimal порог (максимальная экономия при точности не ниже на 1%), применяли к тестовому. Результат: метод работает в реальных условиях, не переобучается на конкретный датасет.
Интересная находка: На задачах типа StrategyQA и MUSR confidence-gating не только экономит токены, но иногда даёт небольшой прирост точности. Почему? CoT на очевидных вопросах может запутать модель — она начинает искать сложность там где её нет, придумывает лишние шаги, сбивается. Быстрый ответ точнее.
Online vs Offline: Offline (видим все confidence scores заранее) vs Online (решаем на лету). Online добавляет вариативность (особенно для Qwen3 с margin/perplexity), но общая картина не меняется — verbalised и P(True) остаются стабильными.
Ресурсы
Can Confidence Estimates Decide When Chain-of-Thought is Necessary for LLMs?
Релевантные ссылки: Qwen3 Technical Report, GPT-OSS Model Card
Samuel Lewis-Lim, Xingwei Tan, Zhixue Zhao, Nikolaos Aletras — University of Sheffield
