前言
在现在的软件开发中,“提示工程”(Prompt Engineering)是一项非常关键的技能。你给AI写的提示语,就像是在教它怎么做事:它该怎么理解问题、用什么工具、怎么行动,都会受到提示的影响。
我们在做 AI 编程助手 Augment Code 时,总结出了一些很好用的提示技巧。这些方法不仅适用于编程类AI,很多其他类型的AI也同样适用。用好这些方法,你的AI就能像一个靠谱的队友,而不是一个只会胡说八道的“聊天机器人”。
一、什么是“提示工程”?
提示就是你给AI输入的所有内容,比如:
- 系统角色说明(系统提示)
- 工具说明(告诉AI工具是干什么的)
- 工具的反馈结果
- 用户指令(你发给AI的消息)
- 之前的对话记录
提示工程就是研究如何更聪明地写这些内容,让AI完成任务时表现得更准确、更稳定。
二、理解AI的思维方式
AI不是程序员,不是你写一句代码它就能执行。更像是在跟一个知识渊博但没有常识的人聊天。它不知道现实世界,所有的“知识”都来自你提供的提示内容。
比如,如果AI调用了一个工具但用了错误的参数,与其直接报错,不如返回一条说明错误原因的消息。这样AI能看懂问题,再试一次。
三、如何判断提示好不好?
如果任务很具体,比如让AI做一道数学题,评估很简单。但大多数情况要靠我们设计一些例子去测试它在不同情况下的表现,有没有出错、有没有反应迟钝。
四、让AI更聪明的11条技巧
1. 提供清晰有用的上下文
模型最依赖的是上下文信息。不要吝啬,尽可能提供完整的信息。尤其是执行命令、分析报错等任务时,要重点保留最关键的内容,比如命令输出的头和尾,而不是中间的长段文字。
2. 给AI一个“世界观”
用系统提示告诉AI它是什么角色(比如软件助手)、它拥有什么能力(能访问代码、能运行命令),这样它更容易理解该怎么做。
3. 保持提示内容一致
如果系统提示说“当前目录是 $CWD”,那工具定义里最好也沿用这个目录,避免让AI“猜”。一旦信息不统一,它可能就出错了。
4. 让AI站在用户角度思考
AI并不懂你在做什么,要靠你告诉它当前的“场景”。比如你在用哪个IDE(开发工具),打开了哪个文件,光标在哪,最好都告诉它。这样它才能真正理解你的需求。
5. 不怕长提示,越详细越好
现代模型可以处理很大的文本量。多写一些说明,不仅不会影响,还可能帮助它更好地理解你的意图。
6. 避免让AI死记硬背示例
虽然举例能让AI快速模仿,但它可能只会套模板,到了新情况就不会变通了。可以多做些测试,看它是不是被“训练”得太死板。
7. AI用工具时可能出错
别太相信它能完美调用工具。即使提示得很清楚,它也可能用错参数、忘记必填项。所以要在工具结果中写清楚哪里错了,让它自己调整。
8. 有时可以用“情感语言”激励它
有些模型在你告诉它“这个任务很重要”时,表现会更好。比如你可以说:“这个操作错误可能导致客户流失。”但别太夸张,“骂它”基本没用。
9. 善用提示缓存(Prompt Caching)
如果你频繁改动提示的开头,模型需要每次都重新理解,很浪费资源。可以把变化的信息(比如时间)放到对话后面,让前面的提示尽量保持不变。
10. 重要信息放在开头或结尾
模型通常最关注输入的“开头”和用户消息的“结尾”,所以重要信息最好放在这两个位置,提升被理解的可能性。
11. 当提示优化不再有效时,换种方式
提示不是万能的。你优化到一定程度后,可能再也得不到大提升了。那时就需要考虑新的方法,比如换工具、改设计等。
总结
提示工程的本质,是一种“教AI怎么理解人类话”的艺术。通过清晰、稳定、反复测试的方式,构建出一个可靠的AI助手。你像管理代码一样管理提示内容,它就能成为你真正的工作伙伴,而不是添乱的家伙。