Least-to-Most — от простого к сложному
От простого к сложному
Проблема: Сложные задачи пугают. Как разбить их на управляемые части и решать шаг за шагом?
Решение: Ешь слона по кусочкам
Least-to-Most промптинг разбивает сложную задачу на простые подзадачи, решает их от простой к сложной и передаёт каждое решение в следующий шаг. Название говорит само за себя: ты идёшь от «least» (самой простой) подзадачи к «most» (самой сложной). Каждый ответ становится контекстом для следующего вопроса — как подъём по лестнице, ступенька за ступенькой. Метод предложили исследователи Google в 2022 году, чтобы обойти известную слабость Chain-of-Thought: обычный CoT часто ломается, когда задача сложнее тех примеров, что ему показали.
Как это работает
Метод состоит из двух явных фаз. Сначала идёт декомпозиция: модель просят перечислить подзадачи, которые нужно решить перед достижением финальной цели, и упорядочить их по зависимостям. Затем — последовательное решение: каждая подзадача решается по очереди, и в промпт каждого следующего шага явно подставляются уже полученные ответы. Именно это отличает метод от чистого CoT, где модель рассуждает за один проход, и от few-shot промптинга, где ты даёшь лишь статичные примеры. Поскольку ранние решения переиспользуются как кирпичики, Least-to-Most обобщается на входы длиннее и сложнее всего, что было в промпте — это свойство называют композиционной обобщаемостью.
Когда применять и какие компромиссы
Бери Least-to-Most, когда задача по-настоящему композиционная: поздние шаги зависят от ранних результатов, а модель спотыкается, потому что пытается выдать ответ одним прыжком. Многошаговая математика, символьные преобразования и длинный разбор текста — классические кандидаты. Но компромиссы реальны. Разбиение одного промпта на несколько означает больше токенов и выше задержку, а ошибка в ранней подзадаче распространяется дальше: если шаг 2 неверен, всё, что построено на нём, унаследует ошибку. Метод сильно пересекается с Prompt Chaining; разница в том, что цепочка промптов — это общий инженерный паттерн, а Least-to-Most именно упорядочивает шаги от простого к сложному, чтобы каждый запускал следующий.
Разбор примера. Спросим: «Эми поднимается на 4 ступеньки лестницы, но теряет 1 ступеньку прогресса каждый раз, когда делает паузу, и она делает паузу дважды. Сколько ступенек она прошла, если в лестнице всего 10 — и доберётся ли она до верха?» Вместо угадывания модель сначала декомпозирует: (1) чистый прирост ступенек за один цикл «подъём + пауза», (2) сколько ступенек после двух пауз, (3) сравнить с 10. Она решает (1) = 4 − 1 = 3 за цикл, использует это для (2) = два цикла дают 6 пройденных ступенек, затем подставляет 6 в (3) и делает вывод: до верха она не добралась. Каждый промежуточный ответ переносится дальше дословно, поэтому финальное сравнение опирается на твёрдую основу, а не на удачную догадку.
Представьте это как есть слона по кусочкам:
- 1. Декомпозиция: "Какие подзадачи нужно решить?"
- 2. Упорядочивание: "Какая самая простая? Что от чего зависит?"
- 3. Решаем простейшую: Получаем базовый ответ
- 4. Строим дальше: Используем каждый ответ для решения следующей задачи
Где это используется?
- Длинные математические задачи: Разбиение текстовых задач на шаги вычислений
- Понимание текста: Осмысление сложных текстов по частям
- Программирование: Построение решений из вспомогательных функций
- Исследования: Ответы на сложные вопросы через зависимые подвопросы
Интересный факт: Least-to-Most был специально разработан для задач, требующих "символьного рассуждения" — где каждый шаг зависит от предыдущих. Он значительно превосходит обычный CoT на композиционных задачах!
Попробуйте сами!
Используй интерактивный пример ниже, чтобы увидеть, как разбиение задачи на меньшие части приводит к лучшим решениям.
📈 Least-to-Most — разбиваем сложную задачу на подзадачи, решаем от простых к сложным. Каждое следующее решение использует предыдущие!
Сколько способов подняться по лестнице из 5 ступеней, если можно шагать на 1 или 2 ступени?
⚠️ Ответ верный, но без понимания почему
Задача: Сколько способов подняться по лестнице из 5 ступеней, если можно шагать на 1 или 2 ступени? Разбей эту задачу на подзадачи от простых к сложным. Затем реши каждую подзадачу по очереди, используя решения предыдущих шагов для следующих.
LLM сам определит подзадачи и решит их последовательно.
Задача: Сколько способов подняться по лестнице из 5 ступеней, если можно шагать на 1 или 2 ступени? Реши эту задачу, разбив на следующие подзадачи (от простой к сложной): 1. 1 ступень 2. 2 ступени 3. 3 ступени 4. 4 ступени 5. 5 ступеней Решай каждую по очереди. В каждом следующем шаге используй решения из предыдущих.
Полезно, когда вы лучше знаете структуру задачи и хотите контролировать декомпозицию.
Least-to-Most работает как динамическое программирование: решения простых случаев становятся строительными блоками для сложных. Особенно эффективно для: рекурсивных задач, многошаговых вычислений, педагогики (объяснение концепций).
Частые вопросы
Чем Least-to-Most отличается от Chain-of-Thought?
Chain-of-Thought рассуждает за один проход и часто ломается, когда задача сложнее показанных примеров. Least-to-Most добавляет явную фазу декомпозиции: модель сначала перечисляет подзадачи и упорядочивает их по зависимостям, а потом решает по очереди, подставляя ранние ответы в поздние шаги. Это даёт композиционную обобщаемость — метод работает на входах длиннее и сложнее, чем в промпте.
Когда стоит использовать Least-to-Most промптинг?
Когда задача по-настоящему композиционная: поздние шаги зависят от ранних результатов, а модель спотыкается, пытаясь выдать ответ одним прыжком. Классические кандидаты — многошаговая математика, символьные преобразования, длинный разбор текста и вопросы с зависимыми подвопросами. Если задача решается в один шаг, лишняя декомпозиция только увеличит число токенов и задержку.
В чём разница между Least-to-Most и Prompt Chaining?
Они сильно пересекаются: оба разбивают работу на несколько связанных вызовов. Но Prompt Chaining — это общий инженерный паттерн (любая последовательность шагов, где выход одного идёт на вход другого). Least-to-Most — это частный случай, где шаги специально упорядочены от простого к сложному, чтобы каждое решение служило кирпичиком для следующего.
Какие минусы у Least-to-Most промптинга?
Главных два. Первый — стоимость: разбиение одного промпта на несколько означает больше токенов и выше задержку. Второй — распространение ошибок: если ранняя подзадача решена неверно, всё, что построено на ней, унаследует ошибку. Поэтому метод выигрывает именно на композиционных задачах, где выгода от пошаговости перевешивает накладные расходы.
Попробуй сам
Интерактивное демо этой техники
Сколько способов подняться по лестнице из 5 ступеней, если можно шагать на 1 или 2 ступени за раз?
Это числа Фибоначчи: F(5) = F(4) + F(3) = 5 + 3 = 8 способов.
Решаем от простого к сложному:
📊 Подзадача 1: 1 ступень Способы: только [1] Ответ: 1 способ
📊 Подзадача 2: 2 ступени Способы: [1,1] или [2] Ответ: 2 способа
📊 Подзадача 3: 3 ступени Если первый шаг 1 → осталось 2 ступени → 2 способа Если первый шаг 2 → осталась 1 ступень → 1 способ Ответ: 2 + 1 = 3 способа
📊 Подзадача 4: 4 ступени Первый шаг 1 → 3 ступени → 3 способа Первый шаг 2 → 2 ступени → 2 способа Ответ: 3 + 2 = 5 способов
📊 Подзадача 5: 5 ступеней Первый шаг 1 → 4 ступени → 5 способов Первый шаг 2 → 3 ступени → 3 способа Ответ: 5 + 3 = 8 способов
✅ Финальный ответ: 8 способов
💡 Паттерн: это последовательность Фибоначчи! 1, 2, 3, 5, 8...
Least-to-Most показывает, как решение простых случаев строит фундамент для сложных. Модель также обнаружила общий паттерн (Фибоначчи).
Создайте бесплатный аккаунт для решения челленджей
3 челленджей с AI-проверкой для этого урока
Этот урок — часть структурированного курса по LLM.
Мой путь обучения