提示词的5个构建模块是什么?
每个提示词必需的5个构建模块是:角色与上下文、任务/指令、输入与示例、约束条件和输出格式。 这五个组成部分是将可靠、可重复的提示词与产出不一致结果的模糊问题区分开来的最低结构要求。
每个模块解决一种不同的失效模式。角色与上下文告诉模型它是谁以及所处的情境。任务/指令告诉它确切要做什么。输入与示例为其提供原始材料和教学信号。约束条件设定规则。输出格式指定答案的形态。五者合一,让模型无需再猜测任何内容。
关键要点
- 角色与上下文:告诉模型它是谁,以及它在哪个领域中运作
- 任务/指令:精确说明你希望模型产出什么——具体且可验证
- 输入与示例:提供模型所需的原始数据和示例输入/输出对
- 约束条件:设定规则——模型必须做什么,以及不能做什么
- 输出格式:指定答案的确切形态——JSON、项目符号、表格或散文
为什么这5个模块在2026年依然重要
这五模块模型反映了来自 OpenAI、Google、Anthropic 和独立从业者的提示词工程指南中的汇聚共识。角色、指令、示例、约束和输出格式——在2023年以来发布的每个主要框架中都以不同名称出现。这并非巧合:这是概率模型产出有用、一致结果所需的最少信息量。
商业理由一目了然。缺少角色和上下文会产出需要重写的通用答案。缺少约束条件会增加幻觉风险和偏离品牌的输出。缺少输出格式意味着结果无法被直接解析或复制使用。5模块模型同时解决了这三种失效模式,并同样适用于 GPT-4 级别的模型、Claude、Gemini 和本地运行的大型语言模型。
模块一:角色与上下文
角色告诉模型应采用什么人设或专业身份。上下文告诉它所处的情境、领域和受众。它们被归为一组,因为两者作为一对共同发挥作用——角色是模型的身份,上下文是塑造该任务中"优秀"含义的环境。
当你省略角色和上下文时,模型从通用视角作答——对任何特定情境都没有针对性。有了它们,同一个模型就可以变成回答增值税申报问题的资深税务顾问、为19岁受众撰写文案的初级文案策划,或总结季度报告的数据分析师。输出会根据你的实际情境进行校准。
- 指定领域: "你是一名 B2B SaaS 文案策划"比"你是一名写作者"更有效
- 包含受众: "向非技术背景的 CFO 解释这个问题"会约束词汇和细节程度
- 锚定专业水平: "扮演一名资深安全工程师"与"扮演一名安全工程师"会产出不同的结果
- 在重要时说明情境: "你正在审阅初稿"与"你正在从头写作"会改变模型的处理方式
要了解角色提示如何随着模型遵循指令能力的提升而演变,请参阅 From GPT-2 to Today: How Prompt Engineering Evolved。
模块二:任务/指令
任务/指令模块是对你希望模型执行什么的明确陈述。 这是最重要的模块——其他所有模块都是为它服务的。清晰、具体、可验证的指令将歧义降至近乎为零。模糊的指令是所有模型和使用场景中 AI 输出质量低下的最大单一原因。
当前最佳实践指南强调使任务具有可执行性和可观察性:使用动词、说明交付物,并尽可能描述成功标准。"写一段摘要"是一个任务。"用3个要点总结以下文章,每个要点不超过20个字"是一个具有可验证输出的任务。两者在输出质量上的差异相当显著。
- ❌ 弱:「写一些关于这个话题的内容」
- ✅ 强:「为非技术背景的管理者撰写一篇150字的 LinkedIn 帖子,介绍提示词工程的好处」
- ❌ 弱:「分析这些数据」
- ✅ 强:「找出该数据集中的前3大趋势,并按收入影响从高到低排序」
指令与是否提供示例直接相关——请参阅 Zero-Shot vs. Few-Shot: Which Approach Gets Better Results? 了解每种方法的最佳使用时机。
模块三:输入与示例
输入是模型需要处理的实际数据、文本或材料。示例是展示正确响应形态的示例输入/输出对。两者关注点不同:输入是当前任务的原始材料,示例是塑造模型执行方式的教学信号。
包含1–3个示例(少样本提示)是固定输出格式和语气最可靠的单一技术。当你展示给模型一个好答案的样子时,它会匹配这个模式,而非仅从任务描述中推断。这在需要精确度的专业格式、统一语气和结构化输出中最为重要。
- 何时添加示例: 专业格式、统一语气要求、结构化输出、领域特定词汇
- 何时保持零样本: 简单事实问题、广泛探索,以及你主动希望采用模型默认响应风格时
- 使示例多样化: 相同的示例只能教会一种模式——覆盖你实际预期的真实输入范围
- 使用真实数据: 真实样本优于理想化样本——模型从你实际展示的内容中学习
有关何时使用示例、何时省略的完整分析,请参阅 Zero-Shot vs. Few-Shot: Which Approach Gets Better Results?。
模块四:约束条件
约束条件是模型必须遵守的规则:它必须做什么,以及不能做什么。 它们包括长度限制、禁止的话题或词语、必须引用的来源、品牌声音规范、安全边界和格式限制。约束条件是最常被遗漏的模块——而它的缺失是导致幻觉事实、偏离品牌的语言以及格式错误输出的主要原因。
在现有提示词中添加一个范围明确的约束条件,往往是你能做出的最高杠杆改变。"不要编造统计数据"能大幅降低幻觉风险。"绝不超过100字"强制要求简洁。"仅使用所提供文本中的信息"将输出锚定在源材料中,并彻底消除该任务中的捏造。
- 长度约束: "最多150字"、"不超过5个要点"
- 来源约束: "仅使用附件文档中的事实"、"不要引用无法核实的来源"
- 语气和声音约束: "以正式的第三人称语气写作——不用缩写,不用俚语"
- 禁止内容: "不要提及竞争对手产品"、"不要超出数据所示范围进行推测"
- 安全约束: "如果问题无法从所提供的上下文中得到解答,请如实说明——不要编造答案"
有关使用排除项来塑造输出的技术,请参阅 Negative Prompting: Tell the AI What NOT to Do。有关不受约束的提示词为何更容易产生幻觉,请参阅 AI Hallucinations: Why AI Makes Things Up — and How to Stop Them。
模块五:输出格式
输出格式指定模型应产出的答案的确切形态。 这个模块决定了输出是直接可用,还是在使用前需要重新格式化。对于自动化流水线,未指定输出格式意味着脆弱且不一致的解析。对于 GEO(生成式引擎优化),结构化输出更有可能被 AI 搜索引擎逐字引用,因为结构化答案更易于程序化提取。
输出格式模块可以指定文件格式(JSON、Markdown、CSV)、结构(表格、项目符号列表、编号步骤)、长度以及章节标签。你描述得越精确,输出所需的编辑工作就越少。
- JSON: "以 JSON 对象形式返回结果,包含以下键:title、summary、tags"
- Markdown 项目符号: "将每项发现列为一个要点,以粗体术语开头,后跟一句解释"
- 表格: "将比较结果格式化为 Markdown 表格,列名为:功能、选项A、选项B"
- 结构化散文: "对每个主要观点使用标题,每个章节最多3句话"
有关不同模型中 JSON 模式和结构化输出的完整指南,请参阅 Structured Output & JSON Mode: Get AI to Return Usable Data。
将5个模块组合在一起:一个简单模板
下方模板展示了所有5个模块按顺序组合用于单个领域中立任务的示例。每个部分都有标注,方便你看清每个模块的起止位置。替换各部分的内容即可将其适配到任何领域。
- 角色与上下文** 你是一名资深业务分析师。受众是一个正在审阅季度运营报告的非技术背景高管团队。
- 任务/指令** 总结以下报告的主要发现。重点关注目标完成情况,找出两大风险,并为每项风险提出一个纠正措施建议。
- 输入** 在此粘贴报告文本
- 约束条件** 仅使用报告中的信息。不得推测。总字数不超过200字。使用简明语言——不用专业术语。
- 输出格式** 以三个部分返回响应:"主要发现"(3个要点)、"主要风险"(2个要点)、"建议措施"(2个要点,每项风险各一条)。
该模板适用于 GPT-4o、Claude、Gemini 以及通过 Ollama 或 LM Studio 运行的本地大型语言模型。模块顺序是建议,而非硬性规定——但将角色与上下文置于首位、输出格式置于末位,是在所有主流模型上最通用且可靠的排列方式。
这些模块如何映射到框架和工具
流行的提示词工程框架是以不同名称和顺序排列同一五个构建模块的具体方式。CRAFT、CO-STAR 和 SPECS 都直接映射到这五模块模型。先理解这些模块,意味着你可以应用任何框架,而无需从头记忆其特定术语。
下表展示了每个构建模块如何对应三个广泛使用的框架中的相应字段:
| 构建模块 | CRAFT | CO-STAR | SPECS |
|---|---|---|---|
| 角色与上下文 | 上下文 / 角色 | 上下文 + 受众 | 情境 |
| 任务/指令 | 行动 | 目标 | 问题 / 任务 |
| 输入与示例 | 事实 / 示例 | 示例(可选) | 示例 |
| 约束条件 | 限制 | 语气 + 风格 | 约束 |
| 输出格式 | 格式 | 响应格式 | 风格 |
PromptQuorum 内置了9个框架,根据任务类型以不同配置预填这些模块。有关框架专属指南,请参阅 Which Prompt Framework Should You Use?、CRAFT Framework 和 CO-STAR Framework。
使用5个模块时的常见错误
- 完全缺少角色: 模型从通用视角作答——即使只用一句话,也要指定领域和专业水平
- 上下文模糊: "为我的受众写作"对模型毫无信息量——明确说明受众、他们的知识水平,以及他们将如何使用这份输出
- 无法验证的指令: "让它更好"没有可观察的成功标准——替换为具体、可量化的任务
- 对幻觉没有约束: 没有"仅使用提供的信息",模型会用听起来合理的捏造内容填补空白
- 未指定输出格式: 模型自行选择结构——这会在不同次运行间变化,并破坏下游流程
- 将所有内容混入一个段落: 混为一块的文本更难让模型解析——为每个模块使用换行或明确标签
- 过于相似的示例: 三个完全相同的示例只能教会一种模式——使其多样化,以覆盖真实的输入范围
FAQ:提示词的构建模块
每个提示词真的都需要全部5个模块吗?
不需要。简单、明确的任务通常只需要任务/指令和输出格式。当领域或受众重要时,添加角色与上下文。当失效代价高昂时,添加约束条件。当格式精度至关重要时,添加示例。从最精简开始,只在输出达不到你的标准时才添加模块。
角色比上下文更重要,还是反过来?
两者作为一对共同发挥作用——单独任何一个都不够。没有上下文的角色会产出通用的专家模式输出。没有角色的上下文会产出了解情境但语气不一致的输出。对于大多数任务,将两者结合在一句话中效果很好:"你是一名 角色,正与 受众 合作处理 领域任务。"
提示词能简短同时包含全部5个模块吗?
可以。每个模块都可以用一句话表达。一个完整的五模块提示词可以在100字以内。简短不是问题——模糊才是。一个包含全部五个要素的简短、精确的提示词,始终优于一个冗长、漫无目的且不包含任何要素的提示词。
上下文和示例有什么区别?
上下文描述情境、领域和受众——这是为任务定框架的背景信息。示例是展示给模型正确答案样貌的示例输入/输出对。上下文告诉模型它在哪里;示例向它展示要产出什么。两者都有用,但服务于完全不同的目的。
如果我在使用 CRAFT 或 CO-STAR 这样的框架,约束条件应该放在哪里?
每个主要框架都有一个映射到约束条件的字段——CRAFT 中的"限制"、CO-STAR 中的"语气与风格"、SPECS 中的"约束"。如果你使用的框架没有明确的约束字段,在末尾添加一个单独的"禁止"部分——所有模型都能可靠处理这种方式。
如果只是问一个简单问题,输出格式重要吗?
对于对话性问题,指定格式是可选的。但对于任何将在下游使用的输出——粘贴到文档中、被代码解析、发布,或在团队成员之间复用——指定格式至关重要。这是获得结果和获得可用结果之间的区别。