Chain-of-thought prompting — это техника промпт-инжиниринга, при которой пользователь поручает большой языковой модели решать задачу пошагово, раскрывая промежуточные рассуждения, ведущие к окончательному ответу. Вместо того чтобы сразу переходить к выводу, модель записывает логические шаги на естественном языке, подобно ученику, который показывает ход решения на контрольной по математике. Эта техника получила широкую известность благодаря работе Wei и др. (2022) Chain-of-Thought Prompting Elicits Reasoning in Large Language Models и с тех пор стала основой современного дизайна промптов.
Как работает Chain-of-Thought Prompting
Основная идея обманчиво проста. Когда промпт содержит один или несколько разобранных примеров, в которых модель демонстрирует цепочку рассуждений — «сначала делаю X, затем вычисляю Y, следовательно Z» — модель склонна имитировать эту структуру на новой задаче. Это называется few-shot chain-of-thought prompting и не требует изменения весов модели; меняется только промпт.
Более новый вариант, называемый zero-shot chain-of-thought, был предложен Kojima и др. (2022). Он работает путём добавления к любому вопросу одной волшебной фразы вроде Let's think step by step, которой достаточно, чтобы побудить модель разбить задачу на шаги. Оба варианта опираются на одну и ту же базовую способность: достаточно большие языковые модели выучили внутренние процедуры для арифметики и логики, и извлечение этих процедур в виде текста заметно повышает точность ответов.
Почему это важно
Chain-of-thought prompting важен, потому что он напрямую борется с одной из самых заметных ошибок LLM: уверенно неправильными ответами с одной попытки в многоэтапных задачах. Заставляя модель выносить рассуждения наружу, эта техника снижает количество арифметических ошибок, улучшает результаты на бенчмарках по здравому смыслу и упрощает аудит поведения модели, так как человек может проверить каждый шаг. Сегодня это строительный блок для более продвинутых методов, таких как self-consistency (генерация множества цепочек и голосование за ответ), tree-of-thought поиск и следы рассуждений, создаваемые современными моделями рассуждений.
Ключевые варианты
- Few-shot CoT: Промпт включает несколько написанных вручную примеров, демонстрирующих пошаговые рассуждения перед реальным вопросом. Обычно самый надёжный подход для небольших моделей.
- Zero-shot CoT: Просто добавьте «Let's think step by step» (или аналогичный триггер) к любому промпту. Дешёво и удивительно эффективно на способных моделях.
- Self-consistency: Сгенерируйте множество независимых цепочек рассуждений и выберите наиболее частый окончательный ответ, обменивая вычисления на точность.
- Tree-of-Thought: Позвольте модели ветвиться и исследовать несколько путей рассуждений, а затем возвращаться назад или отсекать слабые — полезно для головоломок и задач планирования.
- Следы моделей рассуждений: Более новые модели, такие как серия o-series и DeepSeek-R1, специально обучены по умолчанию нативно генерировать длинные цепочки рассуждений.
Chain-of-thought prompting превратил «покажи ход решения» из школьного правила в мощный универсальный инструмент для получения более надёжных ответов от больших языковых моделей.