Как структурировать сложные промпты с помощью XML-тегов: официальный гайд Anthropic
Разбор правил теговой разметки, иерархических вложений и извлечения цитат для точной обработки документов от 20 тысяч токенов.
Anthropic обновила официальное руководство по составлению промптов для актуальной линейки моделей Claude, включая Claude Fable 5.1 и Claude Opus 5.5. В документации компания выделила синтаксис XML-тегов как базовый механизм разделения инструкций, контекста и пользовательских данных.
Зачем нужны XML-теги
- Модели Claude обучались распознавать XML-разметку как семантические границы между смысловыми блоками. Если смешать инструкцию и пользовательский текст в сплошной абзац, модель с высокой вероятностью воспримет примеры или цитаты как прямое руководство к действию.
- Теги помогают разграничить системные инструкции, контекст предметной области, правила форматирования и входные документы.
- Anthropic советует использовать осмысленные имена тегов: , , , .
Разделение данных и инструкций
В базовом сценарии весь пользовательский ввод оборачивается в тег данных, а задача размещается отдельно с явным указанием роли содержимого:
Прямое указание на то, что внутри находятся только данные, снижает риск непреднамеренного выполнения команд, которые могут встретиться внутри текста документа.
Длинный контекст от 20 000 токенов
- При работе с большими массивами информации от 20 тысяч токенов действует правило: документы помещаются в начало промпта, а конкретный запрос и инструкции — строго в конец.
- По результатам тестов Anthropic, размещение вопроса в самом конце промпта улучшает точность ответов до 30%, особенно в сценариях с анализом нескольких документов одновременно.
- Для пакета документов используется вложенная иерархическая структура: общий контейнер , внутри которого каждый файл получает тег с метаданными и телом .
Заземление ответов на цитатах
Для предотвращения выдуманных фактов при анализе объёмных текстов Anthropic описывает приём извлечения точных цитат (grounding in quotes). Сначала модель обязуют выписать релевантные фрагменты текста в тег , и лишь затем сформулировать ответ:
Двухэтапная инструкция направляет механизм внимания модели на проверку фактов перед генерацией аналитических суждений.
Оформление примеров и Few-shot
- Примеры для демонстрации формата ответа или тональности оборачиваются в контейнер , а каждый отдельный пример — в .
- Anthropic описывает использование от трёх до пяти разнообразных примеров, отражающих граничные случаи задачи.
- Изоляция примеров в XML-тегах предотвращает восприятие моделью промежуточных вводных данных как части текущего задания.
Форматирование вывода и отказ от prefill
Начиная с моделей Claude 4.6 и Claude Mythos Preview, Anthropic отключила поддержку предварительного заполнения ответов ассистента (prefilled responses) на последнем шаге диалога. Запросы с частичным ответом ассистента к этим моделям возвращают ошибку HTTP 400. Вместо prefill разработчики документации предлагают направлять вывод модели в именованные XML-теги:
Ограничения: уязвимость к закрывающим тегам
XML-теги в теле промпта не создают абсолютного барьера против инъекций. Если во входном документе пользователя встретится буквальная подстрока , модель может воспринять её как закрытие блока данных и исполнить последующий текст как инструкцию.
Для работы в конвейерах обработки непроверенных данных входящие строки перед подстановкой в шаблон экранируют:
Шпаргалка по структуре промпта
- Порядок блоков: системная роль и контекст сверху, документы в середине, примеры следом, конкретная задача и требования к выводу строго снизу.
- Длинный контекст: от 20 000 токенов вопрос в конце повышает точность ответов до 30%.
- Проверка фактов: предварительное извлечение цитат в тег снижает галлюцинации.
- Форматирование: требование поместить ответ в целевые теги (, ) заменяет устаревший prefill.
- Безопасность: закрывающие теги внутри сторонних документов подлежат обязательному экранированию.
Всё самое интересное — в нашем Telegram-канале «Claude без воды».