这是”小白讲 AI”系列的第 05 篇。前几篇我们聊了大模型是什么、怎么训练、Token 怎么算。今天我们来聊一个你每天都在做、但可能从没认真想过的事情——怎么跟 AI 说话。这件事有个听起来很高大上的名字:Prompt Engineering,翻译过来就是”提示词工程”。别被名字吓到,它的核心其实很简单:你说得越清楚,AI 干得越好。

1. 开场类比:给实习生写工作交接文档

想象一下,你公司来了个新实习生,聪明、学东西快,但对你的业务一无所知。你让他帮你写一份周报,如果你只说”帮我写个周报”,他大概率会交上来一份格式奇怪、内容空洞的东西。但如果你说”帮我写一份上周的周报,包含三个部分:本周完成的任务、遇到的问题、下周计划。每个部分用三到五个要点概括,语气正式但不要太生硬,参考这份样例……”他交上来的东西就会靠谱得多。

跟 AI 对话也是一模一样的道理。AI 本质上就是那个”超级实习生”——它读过海量的书、看过无数的代码,能力很强,但它不知道你此刻的上下文、你的偏好、你想要什么样的结果。Prompt 就是你给这个实习生写的”工作交接文档”。文档写得越清楚,产出质量越高。

这就是 Prompt Engineering 的本质:不是什么黑魔法,而是把你脑子里模糊的想法,变成 AI 能准确理解的文字指令。

2. 基础技巧:四个关键要素

好的 Prompt 通常包含四个要素,我把它们叫做”角色、任务、格式、示例”。

角色设定:告诉 AI 它是谁。比如”你是一位资深的 Python 开发者”或者”你是一位面向小学生的科普作家”。角色不同,AI 的用词、深度、风格都会随之改变。就像你跟医生和跟朋友描述同一个症状,说法完全不一样。

任务描述:清楚地说明你要它做什么。”帮我写一段代码”太模糊了,”用 Python 写一个函数,输入一个列表,返回其中所有偶数的平方和”就清楚多了。任务描述要回答三个问题:做什么、输入是什么、输出是什么。

输出格式:指定你希望结果长什么样。要 JSON 还是 Markdown?要表格还是分段文字?要中文还是英文?很多时候 AI 给出的答案”内容没问题但格式不对”,就是因为你没告诉它你要什么格式。

示例(Few-shot):给一两个示例,效果立竿见影。比如你想让 AI 把英文产品名翻译成中文,与其长篇大论描述翻译风格,不如直接给几个例子:

1
2
3
4
5
iPhone → 苹果手机
AirPods → 苹果无线耳机
MacBook Pro → MacBook Pro 专业版

现在请翻译:Apple Vision Pro →

AI 一看就明白你的翻译风格和命名习惯了。这种”给几个例子让 AI 学样”的方法就叫 Few-shot Prompting,是最实用的技巧之一。

3. 思维链(Chain of Thought):让 AI “一步一步想”

这里介绍一个听起来简单、效果却非常显著的技巧:Chain of Thought,翻译过来就是”思维链”。

做法很简单:在 Prompt 里加上一句 “请一步一步思考” 或者 “Let’s think step by step”

为什么这么一句话就能提升效果?回忆一下你自己做数学题的经历:如果让你心算 17 × 24,你可能会卡住或者算错;但如果你拿张纸写下来,先算 17 × 20 = 340,再算 17 × 4 = 68,最后 340 + 68 = 408,就准确多了。

AI 也是一样。大模型生成文本的时候是一个 Token 接一个 Token 往外蹦的,如果你让它直接给最终答案,它就必须在”一步之内”完成所有推理,很容易出错。但如果你让它先输出中间推理步骤,每个 Token 都在为下一步做铺垫,整体准确率就大幅提升。

举个例子,你问 AI:”一个教室有 25 个学生,其中 40% 是男生,男生中有一半戴眼镜,戴眼镜的男生有几个?”如果直接问,AI 偶尔会给错答案。但如果加上”请一步一步推理”,AI 就会写出:

  1. 总人数 25,男生占 40%,所以男生 = 25 × 0.4 = 10 人
  2. 男生中一半戴眼镜,所以戴眼镜的男生 = 10 ÷ 2 = 5 人

答案正确、过程清晰。一句话的成本,换来的是可靠性的飞跃。

4. 常见反模式:这些坑你一定踩过

知道怎么写好 Prompt 很重要,知道不该怎么写同样重要。以下是三个最常见的”反模式”。

模糊指令:这是最普遍的问题。”帮我优化一下这段代码”——优化什么?是提升性能、增强可读性、还是减少内存占用?”帮我写篇文章”——什么主题、多长、给谁看?模糊的指令就像跟出租车司机说”去个好地方”,你不满意结果只能怪自己。

过度约束:有些人走向另一个极端,写了几百字的约束条件,结果 AI 在满足 A 条件的时候违反了 B 条件,左右为难。Prompt 太长、规则太多的时候,AI 很容易”顾头不顾尾”。好的做法是保持约束精简,把最重要的规则放在最前面和最后面(因为 AI 对开头和结尾的注意力更强)。

自相矛盾的要求:比如”用通俗易懂的语言详细解释量子力学的数学推导”——通俗易懂和数学推导本身就很难兼得。再比如”写一段简短的、涵盖所有细节的产品介绍”——简短和涵盖所有细节互相矛盾。遇到这种情况,你需要先想清楚自己到底要什么,做出取舍,而不是把矛盾甩给 AI。

5. System Prompt vs User Prompt:不同角色各司其职

如果你用过 ChatGPT 的 API 或者搭建过自己的 AI 应用,你会发现 Prompt 其实有两种角色:System PromptUser Prompt

打个比方:System Prompt 就像公司的”员工手册”,定义了 AI 的身份、行为准则和全局规则。比如”你是一个客服助手,只回答和产品相关的问题,语气友好专业,不讨论政治话题”。这些规则在整个对话过程中始终生效。

User Prompt 就是用户的具体提问,”我的订单什么时候到?””这款产品支持退货吗?”每次都不一样。

两者的分工很清楚:

System Prompt User Prompt
谁写 开发者/产品经理 最终用户
什么时候设定 部署前,一次性 每次对话
管什么 身份、规则、边界 具体任务、具体问题
可见性 用户通常看不到 用户自己写的

如果你只是在网页上跟 ChatGPT 聊天,你写的每一条消息都是 User Prompt。但如果你在开发 AI 应用,合理设计 System Prompt 是非常关键的一环——它决定了你的 AI 助手的”人设”和”边界”。

6. 实际案例对比:差 Prompt vs 好 Prompt

光说不练假把式,我们来看一个真实的对比。

任务:让 AI 帮你写一封邮件,跟客户解释项目延期。

差 Prompt

帮我写封邮件说项目延期了。

AI 可能会给出一封泛泛而谈的邮件,语气不确定、细节缺失、格式随缘。

好 Prompt

你是一位项目经理,需要给客户王总写一封邮件。背景:我们的电商平台改版项目原定 6 月 30 日上线,因为第三方支付接口联调出了问题,需要延期两周到 7 月 14 日。请写一封邮件,要求:

  1. 语气诚恳、专业,不卑不亢
  2. 简要说明延期原因(不要过度暴露技术细节)
  3. 给出新的时间节点
  4. 提出一个补偿措施(比如加送一个月免费运维)
  5. 邮件控制在 200 字以内

这封 Prompt 包含了角色、背景、具体要求、语气、格式和长度限制,AI 给出的结果通常一次就能用。

两者的差距不在 AI 的能力,而在你”交代任务”的能力。好的 Prompt 不是在讨好 AI,而是在帮你自己想清楚需求。

7. Prompt 不是万能的:什么时候该用别的方案

Prompt Engineering 很强大,但它不是银弹。以下几种情况,光靠 Prompt 是不够的:

需要私有知识时 → 用 RAG。大模型的知识来自训练数据,它不知道你公司的内部文档、产品手册、客户数据。这时候你需要 RAG(检索增强生成)——简单说就是先从你的知识库里搜出相关内容,再把它塞进 Prompt 里让 AI 参考。这样 AI 就能基于你的私有数据回答问题。

需要稳定、特定风格时 → 用 Fine-tuning。如果你希望 AI 始终用某种特定格式输出(比如你公司独有的法律文书模板),或者你需要它在某个狭窄领域表现得特别好,微调(Fine-tuning)是更好的选择。相当于给 AI 做了一次”专项培训”。

需要 100% 准确时 → 不该单独用 AI。AI 会犯错,这是由它的工作原理决定的(概率模型嘛)。如果你的场景容错率为零——比如金融交易、医疗诊断——你应该让 AI 作为辅助,最终决策由人来把关。

一个实用的判断标准:如果你反复调 Prompt 超过五六次还达不到满意的效果,大概率说明这个问题已经超出了 Prompt Engineering 的能力范围,该考虑 RAG 或 Fine-tuning 了。

延伸阅读

如果你想更深入地学习 Prompt Engineering,推荐以下资源:

  1. Prompt Engineering Guide:目前最全面的 Prompt 技巧汇总,有中文版,覆盖了从基础到高级的各种方法。
  2. OpenAI 官方 Prompt 最佳实践:来自 OpenAI 官方的指南,简洁实用,适合快速上手。
  3. Anthropic Prompt Engineering 文档:Anthropic(Claude 的开发商)整理的提示词工程指南,对复杂任务的 Prompt 设计讲得尤为透彻。

小白讲 AI 系列第 05 篇完。下一篇我们聊聊 AI 的”幻觉”问题——为什么 AI 有时候会一本正经地胡说八道。