Prompt 的基本结构:指令、上下文、输入数据、输出格式指示器
写 Prompt 这事儿,说白了跟写代码差不多。
我刚接触 Prompt 工程时,总觉得随便写两句就能让 AI 干活。结果呢?输出乱七八糟,完全没法用。后来我琢磨明白了——你得给 AI 搭好框架。
这个框架,就是 Prompt 的基本结构。我把它拆成四个部分:指令、上下文、输入数据、输出格式指示器。你把这四个东西理清楚,AI 基本不会跑偏。
指令:告诉 AI 做什么
指令是最核心的部分。说白了,就是你要 AI 执行什么任务。
我见过太多人写「帮我写个东西」——这哪是指令?这是废话。好的指令应该像函数名一样清晰。
❌ 模糊指令:「帮我处理一下这段文字」
✅ 清晰指令:「将以下英文技术文档翻译成中文,保持专业术语不变」
我个人习惯把指令放在 Prompt 的开头。为什么?因为很多模型对开头的内容更敏感。你想想看,读文章时是不是也更容易记住第一句话?
小技巧:指令尽量用祈使句开头。比如「总结」、「翻译」、「生成」、「分析」。动词越具体,AI 越明白你要什么。
上下文:给 AI 背景信息
光有指令不够。你得告诉 AI 它现在扮演什么角色、面对什么场景。
我记得有一次让 AI 写一封邮件,只给了指令「写一封催款邮件」。结果它写得太客气了,客户根本没当回事。后来我加了上下文:「你是一家创业公司的财务主管,对方已经拖欠款项 60 天,语气要强硬但保持礼貌」。效果立竿见影。
上下文可以包含:
- 角色设定:「你是一名资深 Python 开发者」
- 场景描述:「这是给非技术背景的老板看的周报」
- 前置条件:「用户已经完成了注册流程,但未激活账号」
- 约束条件:「不要使用专业术语,用大白话解释」
注意:上下文不是越多越好。我见过有人把整个项目背景都塞进去,结果 AI 抓不住重点。上下文控制在 3-5 句话,够用就行。
输入数据:给 AI 处理的对象
输入数据就是你要 AI 加工的材料。可以是文本、代码、表格数据,甚至是一段对话记录。
这里有个坑——输入数据和指令要分开。我曾经把数据和指令混在一起写,结果 AI 把数据里的内容当成了指令的一部分,输出完全跑偏。
正确的做法:
指令:请总结以下文章的核心观点,用 3 个要点列出。
输入数据:
(这里粘贴文章内容)
输出格式:
- 要点1:
- 要点2:
- 要点3:
你看,指令、输入数据、输出格式,清清楚楚。AI 不会搞混。
我的习惯:用「---」或者「===」这样的分隔线把输入数据包起来。尤其是数据量大的时候,分隔线能帮 AI 明确「这是数据,不是指令」。
输出格式指示器:告诉 AI 怎么输出
这个部分很多人会忽略。但说实话,输出格式决定了你能不能直接用结果。
我刚开始做 Prompt 时,让 AI 生成一份报告,结果它给我写了一篇散文。内容没问题,但我需要的是表格数据,还得手动整理。后来我学乖了,每次都会指定输出格式。
常见的输出格式指示器:
| 格式类型 | 示例 | 适用场景 |
|---|---|---|
| 列表 | 「用无序列表输出」 | 要点总结、步骤说明 |
| 表格 | 「用 Markdown 表格输出」 | 对比分析、数据展示 |
| JSON | 「输出为 JSON 格式」 | 程序调用、数据交换 |
| 代码块 | 「用代码块包裹输出」 | 代码生成、配置输出 |
| 纯文本 | 「不要使用 Markdown 格式」 | 复制粘贴到其他系统 |
核心原则:输出格式越具体,AI 越听话。别说「整理一下」,要说「用表格输出,第一列是名称,第二列是说明,第三列是示例」。
四个部分怎么组合?
嗯,到这里你应该明白了。一个完整的 Prompt 就像这样:
【指令】你是一名资深前端工程师,请审查以下代码。
【上下文】这是一个 React 组件,用于展示用户列表。项目使用了 TypeScript 和 Ant Design。
【输入数据】
(这里粘贴代码)
【输出格式】
请按以下格式输出审查结果:
1. 问题列表(按严重程度排序)
2. 改进建议(每个问题对应一条建议)
3. 优化后的代码片段(仅修改有问题的部分)
你看,四个部分各司其职。AI 拿到这样的 Prompt,基本不会出错。
避坑指南:我曾经把上下文和输入数据写反了,结果 AI 把代码当成了角色设定,输出了一堆莫名其妙的东西。所以我的建议是——每个部分都用明确的标签开头,比如「指令:」「上下文:」「输入数据:」「输出格式:」。这样既方便 AI 理解,也方便你自己检查。
什么时候可以省略?
不是每个 Prompt 都需要四个部分。我个人的经验是:
- 简单任务:只需要指令 + 输入数据。比如「翻译这句话:Hello World」
- 复杂任务:四个部分都要。比如写报告、代码审查、数据分析
- 创意任务:重点在上下文 + 输出格式。比如写故事、生成文案
说白了,任务越复杂,结构越要完整。别偷懒,该写的都写上。
最后提醒:这四个部分不是死板的模板。你可以根据实际情况调整顺序。比如有时候把上下文放在指令前面,能让 AI 更快进入角色。多试试,找到最适合你的组合方式。
好了,这就是 Prompt 的基本结构。下一章我们聊聊怎么写好指令——嗯,这部分坑更多,到时候我慢慢跟你说。