Теги и блоки instructions, context, examples без хаоса в промпте.
В базовом промптинге ты описывал задачу сплошным текстом. На продвинутом уровне размечаешь части XML-тегами: роль отдельно, задача отдельно, данные отдельно. Anthropic официально рекомендует этот приём: Claude обучен обращать внимание на XML-структуру, и чёткие границы снижают ошибки интерпретации.
<role>Старший редактор деловой прессы</role> <task>Найди проблемы текста и предложи улучшения</task> <text>{{текст для анализа}}</text> <output_format>Три проблемы + три улучшения, каждое в 1–2 предложения</output_format>.
Без разметки модель угадывает, где инструкция, где пример, а где данные. Когда промпт смешивает несколько типов контента, она может принять кусок документа за команду — классическая prompt injection. Теги убирают двусмысленность. Канонического списка нет: придумывай понятные имена и используй последовательно.
<role> — кто отвечает; <task> — что сделать; <context> — фон; <examples> — few-shot; <constraints> — ограничения; <output_format> — формат ответа; <document> — входные данные. Вложенность: <examples><example>…</example></examples>.
Контекстное окно — лимит input + output. Длинный system prompt с XML-структурой съедает бюджет: меньше места на документ пользователя. Важное содержимое ставь в начало или конец — эффект «lost in the middle»: модель хуже вспоминает середину длинного контекста.
?Проверь себя
Варианты снизу — перетащи в слот или нажми. Нажми на ответ — вернуть вниз.
Твой ответ
Варианты
API ничего не отклоняет без тегов. XML нужен, когда промпт смешивает инструкции, контекст, примеры и данные. Для «переведи слово» разметка избыточна. <thinking> и <answer> — тоже теги, сочетаются с CoT.
?Проверь себя