Prompt 工程:AGI 时代的「新编程语言」
模型训练者并没想到过会这样,完全是大家「把 AI 当人看」玩出的一个用法,因为实在传得太广,导致现在的大模型训练数据里充满了角色定义,所以更有效了,更有相关论文证实了这一现象,进一步说明为啥「你是一个 xxx」能够有效,同时发现大模型对prompt开头和结尾更敏感。参考文献:https://arxiv.org/abs/2307.03172。
这篇文章不探讨prompt技巧,只探讨prompt技术本身的一些相关概念以及prompt工程,当然也会略微的提及一些prompt技巧。
需要说明的是,里面涉及的很多观点没有经过严格的考证,大多是自己这些年学习AI相关技术的一些浅薄见解。

Prompt Engineering
在 AGI 时代,不会使用 Prompt,就像不会使用操作系统一样——你无法真正驾驭智能系统。
Prompt 不是技巧,而是一种新的“人机接口语言”。
-
Prompt = AGI时代的编程语言
-
Prompt工程 = AGI时代的软件工程
-
提示工程师 = AGI时代的程序员
Prompt 门槛低 天花板高
专门的提示工程师并不会长久,它会逐渐的称为通用能力,因为以后的每个人都会提示词工程,并且随着AI技术的发展,提示词工程会越来越简单。
人人都会,我们可以提升的优势是什么?
- ①懂模型原理 就能知道什么样的指令有效,什么样的无效;为什么同样的指令有时有效,有时无效;怎么提升指令有效的概率。(最重要 只有懂才能明白大模型为什么给出这样的答案)
- ②懂工程落地 就能把 Prompt 写成代码、嵌入系统、对接业务。
- ③懂调优逻辑 能稳定复现好结果,而不是靠运气。
人人都会说话,但不是人人都能当导演、编剧、产品经理。Prompt 也是一样。
一) Prompt
1.1 使用prompt的两个目的
- 获取具体问题的答案 (这类就是我们常用的,通过对话直接得到具体的答案)
- 固化一套Prompt到程序当中,使其成为系统功能的一部份,比如AI客服系统(通过Prompt打造智能客服)
第一种方式主要是通过 Chatgpt 等 AI 的网页界面就可以进行操作,后者的实现就需要通过代码来实现了,后者也是我们程序员独具优势的地方。
1.2 prompt 调优
Prompt 本质上是一种软约束编程,传统代码是强约束(必须执行),而Prompt 是概率约束(引导模型进入某个分布),所以Prompt 本质上也是在控制模型输出的概率分布。
对于找到一个好的 prompt 是一个持续迭代优化的过程,需要不断的调优。如果我们知道训练数据是怎么样的,参考训练数据来构造prompt是最好的。但是其实一般我们不会知道训练数据是什么的,除非是自己训练的模型。
- OpenAI的GPT系列更喜欢Markdown格式的数据
- Claude对XML格式更好
其他就只能自己一个一个尝试了,有时候多一个字和少一个字,对生成结果好坏都会产生影响
但高质量的 prompt 的核心要点:
- 具体
- 丰富
- 少歧义
如果底层大模型换了,prompt 要不要重新调优?
- 同一家公司的模型升级(GPT3.5→4o):大多不用大改
- 换模型厂商(GPT ↔ Claude ↔ 文心 ↔ 通义):必须重新调优
- 格式偏好不同:GPT 爱 Markdown,Claude 爱 XML,国产模型大多兼容自然语言
Prompt 不是一劳永逸,是随模型迭代的轻量级代码。
二)Prompt 的构成
- 角色
- 指示
- 上下文
- 例子 (one-shot learning few-shot learning)
- 输入
- 输出
万能 Prompt 公式
- 你是:【角色】
- 请完成:【任务/指示】
- 背景/限制是:【上下文】
- 参考以下示例:【例子】
- 输入:【用户内容】
- 输出:【格式要求】
2.1 角色定义为什么有效
角色定义之所以有效,并不是因为模型理解身份,而是因为训练数据中大量存在角色式指令表达。模型会匹配到大量相似语境,从而更稳定地进入某种风格模式。模型训练者并没想到过会这样,完全是大家「把 AI 当人看」玩出的一个用法,因为实在传得太广,导致现在的大模型训练数据里充满了角色定义,所以更有效了,更有相关论文证实了这一现象,进一步说明为啥「你是一个 xxx」能够有效,同时发现大模型对prompt开头和结尾更敏感。
参考文献:https://arxiv.org/abs/2307.03172
三)Prompt 工程

一直没弄懂过,Prompt就Prompt,为什么后面要加上工程二字。总结来看最大的疑惑就是为什么叫「工程」,不叫「提示词技巧」?
工程的本质是:可控、可复现、可规模化、可维护。
而由于大模型本身就存在随机性不确定性。对不同的问题,我们在使用大模型去解决的时候,其实就是通过不同的prompt来实现,但是如果只是强调提示词技巧而非工程化,实际项目很难落地,只有通过Prompt 工程把「随机碰运气」变为「稳定出结果」,从「单次对话」→「固化成功能」,从「手工调」→「体系化调优」;我们才能AI能力可控,高效,可维护的嵌入系统。
| 随机聊天 | Prompt 工程 |
|---|---|
| 靠感觉 | 有结构 |
| 靠运气 | 可复现 |
| 一次性 | 可固化 |
| 不稳定 | 可上线 |
所以总的来说,Prompt 工程是在大模型时代,用自然语言作为新的编程语言,通过结构化设计、稳定化调优、系统化落地,让 AI 输出可控、可复用、可规模化的一套工程方法论。
3.1 例子
一个例子看 Prompt 工程:
Prompt 工程 = 把大模型从 “随机聊天机器人”,变成 “稳定、可靠、能上线赚钱的系统功能”。
① 定目标 = 需求工程
不是让AI 帮我写点东西,或者回答问题,而是工程化定义任务:
- 做什么功能?(客服?总结?代码?质检?)
- 输出什么格式?(JSON?表格?纯文本?)
- 不能出现什么?(幻觉、错误、违规)
- 给谁用?(内部工具?用户产品?)
② 搭骨架 写一个 “能稳定工作” 的 Prompt
不是随便写一句话,而是结构化设计(根据prompt的构成部分分别写,并保持清晰 准确 无歧义):
- 给角色
- 给任务
- 给规则
- 给例子
- 给输入输出格式
目标是让 AI 每次输出都差不多,而不是看心情。这一步其实是在干架构和编码。
③ 调优 把 “能用” 变成 “好用、稳定”
真正的「工程」就在这里:
- 试不同写法
- 试不同格式(XML / Markdown / JSON)
- 试少字、多字、换语序
- 试不同模型
- 测坏例子、边界 case
不断迭代,直到输入任何合法内容,输出都可控、不翻车。这一步其实是在测试 + 调试 + 迭代。
④ 固化 把 Prompt 嵌进系统,变成产品
这是普通用户和工程师的最大区别:
- 把 Prompt 写成模板
- 放进代码 / 配置文件
- 对接接口、数据库、业务逻辑
- 做成:AI 客服、AI 写作、AI 审核、AI 插件…
Prompt 不再是聊天,而是系统的一部分。这一步就是在干集成开发和上线。
⑤ 运维 模型变了(升级),Prompt 也要跟着变
大模型会更新、会换、会升级:
- GPT 更新换代 → Prompt 可能飘,或者之前的提示词不适合,得重走Prompt工程。
- 换 Claude / 文心 / 通义 → 几乎要重调。
- 业务变了 → 规则要改,重走Prompt工程。
所以 Prompt 工程还要定期监控效果,定期评估大模型的版本,并进行相应的管理。这一步其实就是运维与迭代。
四)结语
Prompt 工程从头到尾只做一件事,通过结构化设计、反复调优、系统集成和持续维护,让大模型的输出从不可控的随机生成,变成可预期、可复现、可商用的系统能力。
更多推荐


所有评论(0)