Prompt 提示词的基本结构包括哪些部分?
- 标签:Prompt、提示词结构
🏛 业务架构师
提示词的基本结构,业界共识是六段式(可按需裁剪):
- 角色(Role):"你是一位资深税务顾问"——锚定知识域、语气与视角。价值:缩小模型的"人格空间",输出更聚焦;
- 指令/任务(Instruction):要做什么、判断标准是什么——提示词的核心,要像需求文档一样无歧义(输入是什么、输出要什么、按什么标准);
- 上下文(Context):业务背景、受众、渠道约束——模型不懂你的业务,背景给足才不会"通用化跑偏";
- 示例(Examples/Few-shot):输入-输出样板——锁格式、示范边界行为(含拒答样例),比文字描述更有效;
- 输入数据(Input):本轮要处理的变量内容,用分隔符与指令隔离(防注入+防混淆);
- 输出格式(Output Format):结构要求(JSON Schema、Markdown 结构、长度限制)——下游程序解析的契约。
结构设计的两个原则:稳定部分在前、动态部分在后(配合 Prompt Caching 省钱);每段用分隔符(XML 标签)划界(模型遵循更稳)。
业务视角的认知:提示词结构本质是"给 AI 的工作说明书"——与人打交道中沉淀的"岗位说明书怎么写"(职责清晰、标准明确、有样例参考)经验完全通用。我建议团队维护统一的提示词模板(六段式骨架+分隔符规范),业务变化的只是 2、3、5 段内容——模板化后提示词质量下限大幅抬升,这是提示词工程"组织能力化"的关键一步。
🏗 系统架构师
Prompt 基本结构 = 六个功能分区,顺序有讲究(attention 对首尾敏感):
- 角色定义(Role):设定身份与专业域——"你是资深数据库专家"。作用:激活相关知识与语气,收敛行为边界;
- 任务指令(Task/Instruction):明确做什么——核心动词前置(分析/生成/抽取),量化标准("200 字内"、"输出 JSON")。这是 Prompt 的宪法,放最前;
- 上下文/背景(Context):任务依赖的背景信息、领域知识、对话历史、检索资料——数据类内容用分隔符包裹(安全 + 结构清晰);
- 约束条件(Constraints):禁止事项、边界("不要编造数据"、"仅依据资料回答")——负面约束配合正面指令双保险;
- 输出格式(Output Format):结构契约——JSON Schema、Markdown 模板、示例。格式示例比文字描述有效(模型模仿示例的能力强于理解描述);
- 示例(Few-shot Examples,可选):输入输出对,钉住格式与判断标准——放末尾靠近输出位置(示例与输出相邻,模仿效应最强)。
布局的 attention 逻辑:关键指令放开头(首部高注意力)+ 重要约束在结尾重申(尾部高注意力)——首尾是"注意力高地",中部放资料等可检索内容。
架构提醒:稳定分区放前缀吃 Prompt Cache(角色+格式+示例),动态内容(上下文+用户输入)后置;模板字段化(变量注入)而非手拼——这六个分区就是我团队的标准模板 schema。
💻 全栈开发专家
我按功能把 Prompt 拆成六个标准部分(生产模板结构):
1. 角色定义 —— 你是谁:身份、专业领域、服务对象
2. 任务指令 —— 做什么:明确的动作动词(分析/生成/抽取/改写)
3. 上下文 —— 依据什么:背景资料、数据、检索文档(不可信内容隔离标记)
4. 约束条件 —— 边界在哪:禁止事项、长度限制、安全红线、优先级规则
5. 输出格式 —— 长什么样:结构模板、JSON schema、示例格式
6. 示例 —— 照着谁学:few-shot 1~3 个,覆盖正常+边界情况各部分要点(工程经验):
- 角色不是装饰——角色激活对应的语域和知识分布(「你是资深 DBA」和「你是客服」对同一问题的答法完全不同);
- 指令要单句可执行(「抽取以下字段并输出 JSON」),一 prompt 一任务,多任务拆链;
- 上下文放中后段、指令相关的放靠前/靠后(首尾注意力高,中段易丢);不可信内容强制标签包裹;
- 约束用动词短语可校验(「不得超过3条」),形容词(「简洁」)效果差;
- 格式给「字面模板」比描述强一百倍;结构化需求直接上 JSON Schema 约束解码;
- 示例是最强杠杆:一个边界示例(拒答/异常)胜过三条约束。
裁剪原则:不是每条 prompt 都六件全配——简单任务「指令+格式」即可,要素按需增加;但顺序保持稳定(角色→指令→上下文→约束→格式→示例),稳定结构本身提升服从度,也利于前缀缓存。