Вы наверняка замечали: один и тот же вопрос в ChatGPT или Claude иногда даёт отличный ответ, иногда – качество ответа не соответствует ожиданиям. Многие списывают это на «непредсказуемость AI». На самом деле у этого есть и структурная причина.

В апреле 2025 года Anthropic публиковали официальную документацию по промпт-инжинирингу для Claude 4.6 – Prompting Best Practices. Это технический документ для разработчиков API. Массовому пользователю читать его не предполагается.

Однако, там есть пара инсайтов, которые работают и буду полезны всем.

Как модель «смотрит» на текст

Трансформер – архитектура, лежащая в основе современных языковых моделей, – обрабатывает текст через механизм внимания (attention). Упрощённо: каждый токен «смотрит» на все остальные и вычисляет, насколько каждый из них важен для понимания текущего.

Полное внимание vs Sparse attention
Полное внимание vs Sparse attention

Это означает, что модель не читает текст слева направо как человек. Она строит карту взаимных связей между всеми частями входящего текста одновременно.

Из этого следует неочевидный вывод. Человеку кажется логичным давать задачу постепенно: сначала обозначить тему, потом уточнить, потом добавить контекст по ходу диалога. Итерации действительно уточняют – но одновременно накапливают риск. Каждое новое уточнение ложится поверх предыдущего контекста: внимание модели распределяется по всему диалогу, более ранние части получают меньший вес, а интерпретация может наслоиться или сместиться непредсказуемо. Чем полнее и точнее контекст с самого начала – тем меньше этой неопределённости. Это тема для отдельного разговора – но держите в голове.

Проблема обычного промпта в том, что эта карта получается размытой. Где заканчиваются инструкции и начинаются данные? Где пример, а где реальная задача? Модель вынуждена угадывать – и тратит на это часть своего ресурса «внимания» вместо того, чтобы решать задачу.

Что делают XML-теги

Возьмём два промпта с одинаковым содержанием.

Без структуры:

Ты аналитик. Вот данные по продажам за март. Напиши вывод в трёх предложениях.
Данные: 1200 транзакций, средний чек 850 сомов, отток 12%.
Пример хорошего вывода: краткий, с цифрами, без оценочных суждений.

Со структурой:

<role>Ты аналитик данных</role>

<data>
  1200 транзакций, средний чек 850 сомов, отток 12%
</data>

<instructions>
  Напиши вывод в трёх предложениях
</instructions>

<example>
  Краткий, с цифрами, без оценочных суждений
</example>

Содержание идентично. Но во втором случае открывающий и закрывающий теги создают парный якорь. Токены внутри блока <data> получают высокий вес относительно друг друга – и низкий относительно содержимого <instructions>. Модель перестаёт угадывать, где что находится. Мы буквально показываем ей пальцем что важно относительно чего.

Полное внимание: вложенные якоря
Полное внимание: вложенные якоря

При вложенных тегах иерархия весов выстраивается автоматически: внешняя пара охватывает всё содержимое, внутренняя создаёт локальный кластер внутри него. Модель «видит» структуру документа без дополнительных объяснений.

Ничего удивительного, это закономерное следствие того, на чём обучались модели: огромный корпус HTML, XML, кода. Механизм внимания натренирован распознавать парные структуры как семантические границы.

Именно поэтому Anthropic включили XML-теги в официальные рекомендации для Claude 4.6: «XML tags help Claude parse complex prompts unambiguously, especially when your prompt mixes instructions, context, examples, and variable inputs». Это не совет из блога – это позиция разработчиков модели, основанная на том, как она устроена внутри.

Честная оговорка 
Для короткого одноразового промпта XML избыточен – структура угадывается легко. XML даёт ощутимый выигрыш когда промпт длиннее, семантически похожие блоки, семантически. Для простого одиночного запроса – текст вполне работает.

Почему это проявлется на больших контекстах

Полное внимание – когда каждый токен смотрит на все остальные – работает хорошо на коротких текстах. Но это квадратичная сложность: вдвое длиннее контекст – вчетверо больше вычислений. На больших контекстах модели переключаются на sparse attention: каждый токен смотрит только на ближайших соседей плюс небольшое число «глобальных» токенов.

Это означает, что токен в начале длинного промпта может не иметь прямой связи с токеном в конце. Модель не «видит» весь контекст целиком – она видит фрагменты.

XML-теги в этой ситуации работают как структурные маяки. Открывающий и закрывающий тег создают локальный кластер с высоким взаимным вниманием внутри блока. Модель не обязана дотягиваться через весь контекст – граница видна локально.

Полное внимание vs Sparse attention
Полное внимание vs Sparse attention

Контекст (и промт) растёт. Даже если первый запрос короткий – после нескольких обменов контекст уже включает весь диалог: твои сообщения, ответы модели, данные которые ты вставил. К 5-й итерации sparse attention может уже быть активен. Чем компактнее и структурнее каждый блок с самого начала – тем дольше модель «видит» весь контекст целиком, а не только его фрагменты. Структура промпта – это инвестиция не в качество первого ответа, а в качество всей сессии.

Три паттерна, которые работают сразу

Не нужно перестраивать все промпты разом. Не нужно сложных инструкций. Достаточно применять теги там, где в одном тексте смешивается разное:

Задача

Теги

Смешанный контент (инструкции + данные)

<instructions><data>

Примеры в промпте

<examples><example>

Роль + задача + ограничения

<role><task><constraints>

Граница как принцип

Когда начинаешь думать об этом как о принципе – а не как о синтаксическом трюке – область применения расширяется.

Если модель ищет границы, то задача автора промпта – делать эти границы явными. Не объяснять их через смысл, а обозначать структурно. Это работает на уровне одного запроса. Это работает на уровне длинной сессии. Это работает на уровне документа.

Именно на этом принципе построена разметка документов по методологии GRACE, ок которой я писал ранее. Когда модель получает документ без разметки, она угадывает структуру. Когда каждый смысловой блок обёрнут в семантический тег – она знает границы ответственности точно. Тот же механизм, другой масштаб.

Промпт-инжиниринг часто преподносят как набор хитростей. На самом деле большинство работающих техник сводятся к одному: помоги модели не угадывать, не додумывать.

XML-теги – один из самых прямых способов это сделать. И это не теория – Anthropic прямо рекомендуют их в официальной документации к своей последней модели.

Бонус: что ещё почитать по теме на Хабре

Перед публикацией я прошёлся по Хабру и собрал статьи, которые касаются смежных тем. Статьи разного уровня – от практических советов до архитектурных деталей.

Про XML и структуру промптов

Про механизм внимания (технический уровень)

Комментарии (5)


  1. proton-me
    13.04.2026 12:34

    Непонятно по статье. Несет ли для нейросети смысл само имя тега? Или просто нужен факт открытия и закрытия?

    На рисунке "вложенные якоря" - имена тегов сокращенные и произвольные. А в таблице "Три паттерна" - вполне конкретные и осмысленные.

    Вопрос в следующем? Можно ли обернуть смысловые конструкции просто в теги t1, t2, tn или все-таки role, data ... и т.д. несет смысл для нейросети?


    1. Xronofag Автор
      13.04.2026 12:34

      "Можно, но зачем?" :) модель сама найдет смысл, если он не очевиден из названия тегов. В целом имена могут быть любыми и возможно т1,т2,т3 даже лучше для каких-то данных абстрактных где важно показать вложенность в отрыве от семантики (например, когда вы заранее не знаете суть блока). Работает принцип - помогает ли такая нотация модели или создает неопределенность, на которую нужно будет тратить ценное внимание.


  1. barinov274
    13.04.2026 12:34

    После того как стало ясно, что маркетинг Claude Mythos оказался, как и ожидалось, мошенничеством, я захотел составить основной список трюков, используемых для продвижения LLM.
    В основной список входят утверждения непосредственно от руководства компаний или из «органического маркетинга» людей в соцсетях, а также объяснение того, как работает обман. Это моя первая попытка, так что список, скорее всего, неполный.

    Основной список мошеннических маркетинговых приемов LLM v1:
    «Ещё две недели» — модели скоро станут достаточно хорошими, чтобы делать то, что мы заявляем.

    «Они уже достаточно хороши» — модели уже достаточно хороши, чтобы заменить работников, но этого ещё не произошло из-за причин x, y, z.

    «Мы только что создали Бога в подсобке, и нет, вы его не увидите» — модели, которые они разработали в частном порядке, на самом деле способны делать то, чего мы ждали, но они пока не могут показать их по причинам x, y, z.

    «На самом деле они уже заменили рабочие места» — увольнения, которые проводят технологические компании, ссылаясь на ИИ как причину, якобы уже компенсированы текущими LLM, игнорируя рыночные условия и прошлые данные об увольнениях в таких условиях.

    «Ты просто не умеешь пользоваться ими так, как я» — модели достаточно хороши, но для получения этих результатов требуется эзотерический prompt engineering, и нет, я не буду тебя этому учить.

    «Я сделал приложение, зарабатывающее большие деньги с LLM» — утверждают, что уже создали стартапы, почти всегда SaaS, которые приносят им кучу денег, но когда просишь показать, они этого не делают.

    «Ты используешь не ту модель» — утверждения, что ты используешь неправильную модель и должен использовать Open Claude 420b-parameter Gemini Plus Pro 6.9 с включённым агентским режимом 4RealThisTime HomerSimpson. Обратите внимание, что это будет использоваться для атаки на любые исследования эффективности LLM, поскольку исследования требуют времени на проведение и публикацию, а новые модели выходят чаще, чем возможно завершить и опубликовать исследование.

    «Ты отстаёшь» — утверждения, что тебе нужно использовать ботов уже сейчас, хотя они ещё недостаточно хороши для полной автоматизации работы, потому что иначе, когда боты станут достаточно хороши, ты потеряешь свои естественные навыки языка, необходимые для эффективных промптов.

    «Все эти компании используют LLM, так ты думаешь, что знаешь лучше них?» — ссылка на утверждения крупных компаний, сильно инвестировавших в LLM, как на доказательство успеха, без видимых результатов в скорости и/или качестве их продукции.

    «Оценка в бенчмарках выросла» — утверждение об улучшении результатов тестов для их новой модели, несмотря на то, что обучение специально настраивалось под улучшение этих тестов, и затем смешивание лучшего результата в бенчмарках с реальной способностью автоматизировать работу или значительно повысить продуктивность сотрудников.

    «Теперь она может считать буквы в Strawberry / теперь умеет делать то, чего раньше не могла» — заявления о том, что модель теперь может считать буквы в Strawberry или объяснять, как пользоваться чашкой без дна и т. п., часто используются для демонстрации улучшенного «мышления», но нередко это просто жёстко прописанный ответ.

    «Она вышла из-под нашего контроля» — утверждения, что они не могут контролировать LLM, намекающие на её сознательность или «живость», тогда как на деле она просто сгенерировала слова, которые не должна была, или агент использовал приложение не так, как предполагал запрос пользователя при предсказании следующего токена.

    «Она чувствует грусть/страх/радость/злость, значит она сознательная» — у LLM спрашивают, что она чувствует, и она предсказывает ответ, включающий человеческую эмоцию, поскольку обучалась на человеческих диалогах.

    «Затраты снижаются / сервис LLM прибыльный» — игнорируются затраты на обучение и капитальные расходы на оборудование, обычно речь идёт только о прибыльности инференса, что во многих случаях даже не соответствует действительности. Обучение и капитальные расходы составляют более 95% всех затрат на обслуживание моделей.

    Сингулярность AGI (почти всегда сочетается со стилем «ещё две недели», но, вероятно, стоит выделить отдельно).

    «LLM только что впервые в истории человечества решила X» — утверждают, что LLM решила нечто очень сложное, что ни один человек ранее не смог, но при более внимательном рассмотрении это всегда оказывается каким-то обманом. Важно помнить, что LLM — это боты копирования-вставки. Они могут переплетать скопированное и используют предопределённые структуры предложений для формирования ответа, что теоретически может привести к появлению корректного нового утверждения, но, насколько мне известно, этого ещё не происходило. Та одна математическая задача обсуждалась, но твит с объявлением результата содержал около 7 уточняющих прилагательных и скобочных пояснений, а сам ответ на самом деле уже существовал в обучающем наборе, лол.

    Я что-то упустил?


    1. Xronofag Автор
      13.04.2026 12:34

      Я не совсем понял суть комментария. Подразумевается, что моя статья это трюк какой-то?