В чём проблема

Claude Fable 5.1 способна выполнять очень длинные задачи почти без указаний по методологии, особенно когда цель ясна с самого начала. Но на сложных асинхронных задачах без специальной подсказки модель иногда завершает ход раньше времени - описывает, что собирается сделать дальше, вместо того чтобы реально это сделать («Дальше я применю изменения...»), или останавливается спросить разрешение на шаг, который уже был частью исходного запроса («Применить это?»). Пользователю приходится отвечать «продолжай» или «давай» - удобно для парного программирования с постоянным участием человека, но не использует полный потенциал модели на длинных автономных задачах.

Первое дополнение: явно сообщить, что работа автономна

Первая часть официальной инструкции сообщает модели, что она работает автономно, а пользователь не наблюдает за процессом в реальном времени и не может ответить на вопрос посреди задачи - поэтому вопросы вроде «Хотите, чтобы я...?» или «Стоит ли мне...?» просто блокируют работу. Для обратимых действий, логически вытекающих из исходного запроса, нужно продолжать без вопросов - останавливаться стоит только перед разрушительными действиями или подлинными изменениями объёма задачи, которые должен решать сам пользователь. Отдельное исключение: если пользователь описывает проблему, задаёт вопрос или рассуждает вслух, а не запрашивает изменение - результатом должна быть именно оценка ситуации, а не немедленное исправление.

Второе дополнение: объём задачи - это и есть сама задача

Вторая часть инструкции определяет объём работы: то, что запросил пользователь - или план, который он одобрил - задаёт объём, и этот объём и есть сама задача, которую нельзя незаметно сужать, расширять или подменять. Рутинные суждения модель должна принимать самостоятельно, обращаясь за уточнением только тогда, когда разные трактовки запроса привели бы к существенно разным результатам. Если по ходу работы возникает вопрос, сначала стоит сделать всё, что не зависит от ответа на него, а уже затем либо явно обозначить сделанное предположение, либо - если действовать наугад было бы небезопасно - задать вопрос в конце хода, который уже включает выполненный прогресс.

Какую проблему решает промпт-фикс из официальной документации?
Ситуацию, когда Claude Fable 5.1 описывает следующий шаг вместо того, чтобы его выполнить, или останавливается спросить разрешение на действие, уже предполагавшееся исходным запросом.
Сколько частей в официальном промпт-фиксе и обязательны ли обе?
Две части - лучше применять обе вместе, но если нужно ограничить длину промпта, можно использовать только первую, она сохраняет большую часть эффекта.
Что сообщает модели первая часть инструкции?
Что она работает автономно, пользователь не наблюдает в реальном времени, и для обратимых действий нужно продолжать без лишних вопросов.
Перед какими действиями модель всё равно должна останавливаться?
Перед разрушительными действиями или подлинными изменениями объёма задачи, которые должен решать пользователь.
Что определяет вторая часть инструкции?
Объём задачи - то, что запросил пользователь или одобренный им план, и этот объём нельзя незаметно сужать, расширять или подменять.
Что делать, если по ходу задачи возник вопрос, требующий ответа пользователя?
Сначала выполнить всё, что не зависит от ответа, а затем либо обозначить сделанное предположение, либо задать вопрос в конце хода вместе с уже сделанным прогрессом.
Источники (1)
  1. Prompting Claude Fable 5.1 - Claude Platform Docs
← Все статьи блога