Estruturando Prompts com Tags XML
- Por que as tags no estilo XML dão ao Claude limites nítidos entre as partes do prompt
- Como envolver instruções, documentos, exemplos e regras de formato em tags nomeadas
- Como pedir ao Claude uma saída com tags que você possa analisar de forma confiável
- Quando usar tags — e quando não exagerar nas tags
Quando um prompt mistura instruções, um documento, exemplos e uma pergunta, o modelo pode confundir tudo. Tags no estilo XML são uma forma limpa de rotular cada parte — e o Claude responde especialmente bem a elas.
A ideia
Envolva cada seção em uma tag nomeada para que fique inequívoco o que é o quê:
Estrutura de prompt com tags
<instructions>
Summarize the document for a busy executive. Use only the document; if a fact
isn't there, say so.
</instructions>
<document>
{paste the long document here}
</document>
<format>
3 bullet points, then a one-line "decision needed".
</format>As tags são apenas texto que você inventa — <document>, <example>, <context>, <rules> — mas elas dão ao modelo limites bem definidos.
Por que ajuda
- Separa dados de instruções — o modelo tem menos chance de obedecer a texto perdido dentro de um documento colado (uma defesa modesta contra injeção de prompt — veja /docs/security/prompt-injection).
- Reduz o "ele ignorou parte do meu prompt". Cada parte fica claramente delimitada.
- Facilita a análise dos resultados — você pode pedir ao Claude para colocar a resposta dele em tags <answer> e extraí-la de forma confiável.
- Combina com few-shot (/docs/prompting/few-shot) — envolva cada exemplo em <example>.
Os quatro benefícios em detalhe:
- Separa dados de instruções — o modelo tem menos chance de obedecer a texto perdido dentro de um documento colado (uma defesa modesta contra injeção de prompt).
- Reduz o "ele ignorou parte do meu prompt". Cada parte fica claramente delimitada.
- Facilita a análise dos resultados — você pode pedir ao Claude para colocar a resposta dele em tags
<answer>e extraí-la de forma confiável. - Combina com few-shot — envolva cada exemplo em
<example>.
Pedindo saída com tags
Guided walkthrough1 of 3
- Diga ao modelo exatamente quais tags usar para o raciocínio e para a resposta final.
- Seu código pode pegar só o conteúdo de <answer>, ignorando o raciocínio.
- Funciona bem com saída estruturada (/docs/api/structured-output) quando você precisa de resultados legíveis por máquina.
Solicitar saída com tags
Put your reasoning in <thinking> tags and your final answer in <answer> tags.
Aí seu código pode pegar só o conteúdo de <answer>. Combina bem com saída estruturada quando você precisa de resultados legíveis por máquina.
Dicas
- Seja consistente — abra e feche todas as tags; reutilize os mesmos nomes.
- Nomeie as tags de forma significativa (<contract>, não <x>).
- Não use tags demais em prompts triviais — use isto quando houver genuinamente várias partes distintas.
- Seja consistente — abra e feche todas as tags; reutilize os mesmos nomes.
- Nomeie as tags de forma significativa (
<contract>, não<x>). - Não use tags demais em prompts triviais — use isto quando houver genuinamente várias partes distintas.