← Claude на русском
Открыть оригинал
Перевод
Перевёл Claude Opus 4.7 (ИИ). Это не официальный перевод Anthropic — при сомнениях сверяйся с оригиналом.

Как отказаться от префилла ответа

Оригинал: Migrating away from prefilled responses · автор: Anthropic · сверено 2026-04-24

Начиная с моделей Claude 4.6 и Claude Mythos Preview, префилл ответа на последнем ходу ассистента больше не поддерживается. На Mythos Preview запросы с префилл-сообщениями ассистента возвращают ошибку 400. Интеллект моделей и следование инструкциям развились настолько, что большинство сценариев использования больше не нуждаются в префилле. Существующие модели продолжат поддерживать префиллы, и добавление assistant-сообщений в других местах разговора не затронуто.

Вот типичные сценарии префилла и как от них отказаться:

Управление форматированием вывода

Префиллы использовали, чтобы навязать конкретные форматы вывода — JSON/YAML, классификацию и похожие паттерны, когда префилл ограничивает Claude определённой структурой.

Как перейти: функция Structured Outputs специально спроектирована, чтобы ограничивать ответы Claude заданной схемой. Сначала попробуйте просто попросить модель соответствовать вашей структуре вывода — новые модели надёжно укладываются в сложные схемы, когда им об этом говорят, особенно если реализовано с ретраями. Для задач классификации используйте либо tools с enum-полем, содержащим ваши валидные метки, либо structured outputs.

Устранение преамбул

Префиллы вроде Here is the requested summary:\n использовали, чтобы пропустить вводный текст.

Как перейти: используйте прямые инструкции в system prompt: «Respond directly without preamble. Do not start with phrases like „Here is…“, „Based on…“, etc.» Альтернативно — направьте модель выводить ответ внутри XML-тегов, используйте structured outputs или tool calling. Если изредка преамбула всё же проскальзывает — срезайте её в постобработке.

Обход ненужных отказов

Префиллы использовали, чтобы обходить необоснованные отказы.

Как перейти: Claude теперь гораздо лучше справляется с уместными отказами. Ясного промпта в user-сообщении без префилла должно быть достаточно.

Продолжения

Префиллы использовали, чтобы продолжать частичные completion'ы, возобновлять прерванные ответы или подхватывать там, где остановилась предыдущая генерация.

Как перейти: перенесите продолжение в user-сообщение и включите финальный текст прерванного ответа: «Your previous response was interrupted and ended with [previous_response]. Continue from where you left off.» Если это часть обработки ошибок или обработки неполных ответов и нет UX-издержек — повторите запрос.

Context hydration и консистентность роли

Префиллы использовали, чтобы периодически обеспечивать обновлённый или инжектируемый контекст.

Как перейти: для очень длинных разговоров инжектируйте в user-ход то, что раньше было префилл-напоминаниями ассистента. Если context hydration — часть более сложной агентной системы, рассмотрите hydration через tools (выставьте или поощряйте использование tools, содержащих контекст, по эвристикам вроде числа ходов) или во время context compaction.