Self-Ask — это техника, где модель перед финальным ответом сама формулирует вспомогательные вопросы и отвечает на них по очереди. Вместо одного большого прыжка она строит цепочку из подзадач: "что мне нужно выяснить сначала, чтобы потом ответить на основной вопрос?"
В 2026 Self-Ask полезно понимать как одну из самых практичных форм controlled decomposition. Это не тяжёлый агент и не tree search. Это очень дешёвый способ заставить модель не слипать multi-hop reasoning в один неустойчивый прыжок.
Многие ошибки в reasoning возникают не на финальном шаге, а в середине. Модель знает нужные факты, но:
Self-Ask чинит именно это место. Он заставляет модель формально признать, что ей нужны промежуточные ответы.
Это особенно полезно для вопросов, которые по структуре напоминают:
Chain of Thought чаще описывает ход рассуждения как единый поток.
Self-Ask вводит более явную дискретность:
Это делает reasoning более modular. Для человека и для системы легче понять, где именно произошёл сбой: на каком из промежуточных вопросов модель потеряла нить.
Self-Ask хорошо работает в:
Она слабее там, где задача не decomposable или где промежуточные вопросы только раздувают ответ.
Self-Ask не решает проблему отсутствия фактов. Если модель не знает нужное промежуточное знание или вопрос требует актуальных данных, нужен retrieval или search.
Ещё один anti-pattern — превращать любую задачу в длинную цепочку под-вопросов. Иногда задача простая и self-ask только добавляет шум и latency.
Сегодня Self-Ask полезен не только как prompt format, но и как design pattern для lightweight agents. Во многих системах он работает как дешёвая версия planner:
Это особенно удобно там, где полноценный агент избыточен, а one-shot reasoning уже ненадёжен.