什么是"输出契约"?
输出契约是指在提示词中,在AI开始写任何内容之前,先明确写清楚成品应有的样子:格式、长度、结构,以及哪些内容绝对不能出现。你不再只是描述主题然后碰运气,而是像下工作单一样,先把交付物的规格写清楚。
这个习惯正好解释了为什么有些人每次用ChatGPT、Claude或Gemini都能拿到清晰可用的初稿,而其他人即使用几乎一样的提示,每次得到的结果却不一样。
为什么你的提示有时管用,有时却不管用?
当提示只描述主题,AI就要自己猜测你想要的格式、长度和语气。它会选一个统计上"平均"的答案,而这个平均值会因为你的措辞每次都有微妙变化。
所以,同一句简短提示输入两次,第一次可能是条列清单,第二次却变成完整段落。这并不是AI不稳定,而是你留下了空隙让它自己填,每次填法都不一样。
输出契约的作用,就是在生成之前把这些空隙全部填满。根据Anthropic官方的提示工程文档,将角色、背景、任务和输出格式分开清楚写明的提示,产出的结果会明显更稳定、更容易解析。
四部分输出契约框架
可靠的提示需要四个部分,按顺序排列:角色设定AI的视角、背景交代你的具体情况、任务说明单一交付物,以及输出格式锁定答案的样子。最后加一句限制条件,就能去掉AI默认的老套用语。
下面是一个完整、可以直接复制使用的模板:
试试这个提示:
<role>你是香港一家市场推广公司的高级内容编辑。</role>
<context>我正在写一篇300字的LinkedIn帖子,宣布一项新的AI功能。目标读者是每天都在使用AI工具的香港中小企市场经理。</context>
<task>写这篇LinkedIn帖子。</task>
<output_format>
- 刚好三段短段落,每段最多四句
- 结尾用一个问题引导读者留言
- 不使用hashtag,不使用表情符号
</output_format>
<constraints>不要使用"颠覆"、"划时代"、"解锁"这类字眼。语气要像朋友聊天,不要太官方。</constraints>
连续跑五次这个完整提示,结构几乎不会变。如果把output_format和constraints删掉再跑五次,你会发现段落数量、语气和长度每次都明显不同。
实战应用:一份真实的市场简报
假设你要把一份粗略的内部笔记,变成一份给客户看的内容简报。一句模糊的"帮我变成content brief",每次得出的结构都不一样:有时是条列式,有时是整段文字,有时甚至漏掉了截止日期或关键词。
加入一个输出契约:角色设定为内容策略师、背景包括客户所在行业和原本的内部笔记、任务是"制作一页纸的内容简报",再指定输出格式必须包含六个固定字段(目标、受众、核心信息、格式、截止日期、成效指标),每个字段限一句话。
结果就是一份你的团队可以立刻使用的简报,而且每次格式完全一致,无论你是在周一早上还是周五晚上执行这个提示。
在Claude、ChatGPT和Gemini上怎么用?
Claude经过训练,特别擅长识别<role>、<output_format>这类XML标签,用标签包裹每个部分,稳定性会明显提升。ChatGPT对同样结构反应良好,换成标题式写法("角色:"、"背景:"、"任务:"、"输出格式:")即可,并可在对话开头设定系统级指令维持效果。Gemini在需要表格或列表等结构化数据时,特别需要明确的输出格式部分,否则往往会写出更长、更松散的段落。
让输出契约失效的常见错误
一次性堆叠太多限制,是最常见的失败原因,AI会满足容易的那几条而悄悄放弃较难的,每次提示保持两三条限制即可。没有参照点的限制是第二种常见失败,"简洁一点"对每个模型的意思都不一样,改用"不超过120字"或"刚好三点"就能消除模糊。对于一次性、无关紧要的问题,不用输出格式部分完全没问题,这个技巧最重要的场合,是任何你会重复使用、发给客户查看的提示。
现在就试试
选一个你每周都会用的提示,重写成完整四部分:角色、背景、任务、输出格式。连续执行三次,对比结果。如果三次结果几乎一样,就说明你的契约已经生效。
结语
AI输出不稳定,很少是模型本身的问题,几乎永远都是指示不完整造成的。输出契约是最快的方法,不需要推翻你整套工作流程,就能填补这个缺口。
在你把这个技巧变成更大规模的自动化流程之前,值得先了解一下你目前的AI设置是否真正准备好。UD的AI体检是一个免费、快速的方法,让你看清团队的AI习惯哪里已经行得通,哪里正在悄悄走样,而这正是这个技巧想填补的缺口。如果想和人设加反目标提示法一起用,两者可以互相配合。
懂AI,更懂你 UD相伴,AI不冷。
准备好打造可靠的AI工作流程?
掌握了这个技术,下一步就是把它整合进你日常的工作流程。UD 团队手把手带你完成每一步,从提示结构到全公司AI准备度,一步都不会遗漏。
由UD AI团队审阅。