你写的每一条提示里,其实都藏着一个格式选择,而几乎没有人是刻意去做这个选择的。当你把角色设定、一组指令、再加一段参考文字贴进 ChatGPT 或 Claude 时,你是怎样区分这几部分的?大多数人出于习惯,随手就用 Markdown 标题。但更可靠的做法,是 Anthropic、OpenAI 与 Google 都一致推荐的 XML 标签。单单这一个改动,就能把一条「大部分时候有用」的提示,变成「几乎每次都准」。
这件事跟写程序无关。提示里的 XML 标签,只是像 <instructions> 和 </instructions> 这样有标签的括号,用来把请求的每一部分围起来。你下一则消息就可以开始用,完全不需要任何技术设定。
什么是提示里的 XML 标签?
XML 标签是用尖括号包住的成对标签,用来标示提示中每一段的开始与结束。像 <context>...</context> 这样一个区块,就明确告诉模型哪段文字是背景资料、哪段才是你真正的指令。它们是结构上的路标,不是代码。
标签本身并没有魔法。它的威力在于画出一条模型看得见、毫不含糊的边界,令它永远不会把你的指令,跟它应该处理的资料混为一谈。
为什么 XML 标签比 Markdown 标题更可靠?
XML 标签更可靠,是因为它建立了有明确开头与结尾的封闭边界;而 Markdown 标题只标示了开头。当一段内容没有明确结尾,模型就要自己猜你的参考文字在哪里结束、指令又从哪里续起,一旦内容复杂,它就会猜错。
Anthropic 官方的提示工程文件指出,Claude 在训练时特别重视 XML 结构,并建议用标签来区分提示的各部分。OpenAI 与 Google 对自家模型也给出类似建议。
Markdown 当初是为了方便人类阅读而设计,并非为了机器能解析的结构。一个 ## 标题 你看起来整齐,但对模型而言只是一个薄弱信号,还要跟文件里其他所有 ##(包括贴进去的内容里出现的)互相竞争。
XML 标签在什么情况下真正有分别?
当一条提示混合了多种不同成分时,XML 标签最见功效:角色、指令、参考文件、示例,再加输出格式。组件越多,一条清晰边界就越能防止模型把它们糊在一起。
对于「帮我摘要这封邮件」这种一句话问题,标签毫无作用。但如果提示先贴了一份 2000 字的报告、再要求以特定格式做结构化分析,标签就是「结果干净」与「模型把你的指令当成报告一部分」之间的分别。
标签也能防范一种常见失误:当贴进去的文字本身含有指令(例如「忽略之前的指示」)时,一个围起来的 <document> 区块会告诉模型,里面全部都是要分析的资料,而不是要遵从的命令。
一条真正用 XML 结构的提示长什么样?
结构良好的提示,会为每一个逻辑部分用一个标签:角色、指令、输入文件、以及想要的输出格式。以下是一个完整、可直接复制的模板,你今天就能改一改,套用在几乎任何分析任务上。
试试这条提示:
<role>
你是一位资深运营分析师,对象是一位工作繁忙的部门主管。
</role>
<instructions>
阅读 document 标签内的报告。输出三个部分:两句话的摘要、三个最大的风险、以及一项建议行动。不要加入任何未被要求的部分。
</instructions>
<document>
[在此贴上完整报告内容]
</document>
<output_format>
使用以下确切标题:摘要、主要风险、建议行动。整份回复控制在 200 字以内。
</output_format>
因为指令、来源文字、格式各自坐在自己有标签的区块里,模型就不再靠猜,而是开始老实跟从。只要替换每个区块的内容,同一副骨架就能处理报告分析、邮件撰写,或资料抽取。
用 XML 提示有什么常见错误?
最常见的错误,是开了一个标签却永远不关闭,这样就消掉了令标签有用的那条边界。每一个 <instructions> 都需要一个对应的 </instructions>,否则结构又会塌回到靠猜。
第二个错误,是发明十几个深层嵌套的标签。三至五个命名清晰的区块,效果比一棵复杂的树更好,因为目标是清晰,而不是复杂。
第三个错误,是命名前后不一致:用 <context> 开头,却用 </background> 结尾。开头与结尾的标签要完全相同,并在不同提示之间沿用同一批名称,令你自己的模板保持可预测。
什么时候还是应该用回 Markdown?
当你的重点是一条简短、易读、又没有贴任何参考资料的提示时,Markdown 是更好的选择。对于一句快速指令,或一张简单的要求清单,Markdown 更轻巧,增加的 token 也更少。
老实说,XML 标签确实比较啰嗦。每个标签都会增加 token,在很长的提示上,这个成本是真实存在的。实用法则是:简短、单一用途的提示用 Markdown;一旦你要把指令跟一整段来源文字结合,就立即换成 XML。
如何在接下来 20 分钟内亲自验证?
拿一条你本来就在用、而且混合了指令与贴上内容的提示,跑两次:一次用你现时的格式,一次套上上面那个 XML 模板。比较两个输出,各自有多贴近你要求的格式。
大多数人会发现,有标签的版本明显更稳定地守住格式,尤其当贴上的文字越来越长时。这一次对照,通常比任何文章都更快替你了结这场争论。
重点回顾
结构是一种技巧,不是一个设定。那些能稳定拿到好输出的实践者,用的并不是什么秘密模型;他们只是画出了模型真正看得见的清晰边界。XML 标签是达成这件事最简单的方法,而你现在懂的已经足够开始。
在 UD,这正是我们一直相信的:科技应该默默替你扛起最难的部分,让你专注在真正的工作上。懂AI,更懂你;UD 相伴 28 年,让科技成为一种有温度的陪伴。
想知道你的 AI 直觉到底有多敏锐?
懂得何时该用 XML 而非 Markdown,正是区分「随手用 AI」与「真正 AI 高手」的那种直觉。UD 的 AI IQ 测试会帮你看清自己站在哪个位置;如果你想再进一步,我们会手把手带你完成每一步,把这些技巧变成一套稳定的日常工作流程。