跳到主要内容

谷歌AI提示工程白皮书 2025:12 个关键技巧详解与最佳实践指南

· 阅读需 10 分钟
小卡
Hi 这里是喜欢研究效率工具和思维方式的小卡~

1. 提供示例

单样本/多样本: 你可以提供单个例子,也可以提供多个例子。

提供例子,通过例子,模型可以分析和抓取与例子相近的结果特征,获得更好的效果。

示例1:诗歌创作(单样本)

提示词:

请模仿示例风格创作一首关于秋天的七言绝句:

例:
枫红稻黄秋意浓,雁阵南飞破长空。
闲坐庭前观叶落,一壶清茶伴金风。

新作:

效果说明: 示例提供了平仄押韵模式和典型意象,模型会继承季节元素使用、对仗结构和古典意境营造方式。

示例2:产品描述生成(多样本)

提示词:

根据示例为新品蓝牙耳机撰写电商描述:

示例产品:智能手表
特点:50米防水/两周续航/血氧检测
文案:挑战深潜50米,伴您探索水下世界。持久续航14天,健康监测昼夜不停...

新产品:无线降噪耳机
特点:40dB主动降噪/30小时续航/空间音频

效果说明: 示例展示了如何将技术参数转化为场景化描述,模型会模仿"技术指标+使用场景+情感共鸣"的三段式结构。

2. 设计简洁

简单,推荐使用动词,避免使用生涩难懂的表达。

尝试使用描述动作的动词。以下是一些例子:

行动,分析,分类,对比,比较,创建,描述,定义, 评估,提取,查找,生成,识别,列出,测量,组织,解析,选择, 预测,提供,排序,推荐,返回,检索,重写,选择,展示,排序, 总结,翻译,写作。

3. 明确输出结果

在与人沟通时,同样需要尽量用明确简洁的方式提问。如果表达过于复杂绕圈子,交流肯定会受阻,你可能得不到想要的回答。

到底要什么?而不是说出最终目的前需要烘托“氛围感”。

DO:

生成一篇三段式的博客文章,介绍五大最受欢迎的游戏主机。 这篇文章应该具有信息量和吸引力,并以一种对话式风格撰写。

DO NOT:

生成一篇关于游戏主机的博客文章。

4. 使用指令而非限制

在提示词中使用指令和限制来指导大语言模型的输出。

  • 指令提供了对期望格式、风格或内容的明确指示。它引导模型该做什么或该产生什么。
  • 限制是对响应的一系列限制或约束。它限制了模型不该做或避免的事情。

这种方法与人类更倾向于正面指令而非“不该做”的清单是一致的。

DO:

生成一段关于五大最受欢迎游戏主机的博客文章。只讨论游戏主机、生产公司、年份和总销量。

DO NOT:

生成一段关于前五名游戏主机的博客文章。不要列出游戏名称。

5. 控制最大token长度

在某些情况下,我们不希望模型输出过多内容,因为有些场景下,例如标题或描述有字数限制。因此,我们需要主动控制模型的输出量。

"请用一条推特解释量子物理。"

"将输出内容限制在80个字以内。"


6. 在提示中使用变量

在提示中引入变量可以增加灵活性和重用性,类似于编程中的变量替换。通过定义变量,我们可以在需要时修改其值以适应不同的需求。

![[2025-02-05-img-3-Reading-TechAI-PromptEngineering-Google-whitepaper_Prompt Engineering_v4-Content-Best Practices-Use variables in prompts.png]]

7. 实验不同的输入格式和写作风格

测试!测试!!测试!!!

不同的模型、模型配置、提示格式、用词选择和提交方式会产生不同的结果。 对提示属性进行实验很重要,比如风格、用词和提示类型(零样本、少样本、系统提示)

一个以生成关于革命性游戏主机世嘉 Dreamcast 文本为目标的提示,可以被表述为问题、陈述或指令的形式,从而产生不同的输出:

  • 问题:世嘉 Dreamcast 是什么,为什么它是一款如此具有革命性的游戏主机?
  • 陈述:世嘉 Dreamcast 是世嘉公司于 1999 年发布的第六代视频游戏主机。它...
  • 指令:写一段话描述世嘉 Dreamcast 游戏主机,并解释为什么它如此具有革命性。

8. 对于少样本提示的分类任务,混合使用不同的类别

使用 few-shot prompting 技巧去处理分类任务时,注意提供的例子最好不要有固定的顺序,而是混合到一起,这样让模型从中学习到模式而不是例子的排列顺序。

示例1: 情感分类

错误提示(固定顺序)

文本: "这部电影的视觉效果太震撼了!" → 情感: 正面
文本: "服务周到,环境也很优雅。" → 情感: 正面
文本: "完全浪费了我的时间。" → 情感: 负面
请分类: "角色塑造非常肤浅。" →

问题: 连续给出同一类别的样本,模型可能学习到「第三个句子永远是负面」的错误模式。

正确提示(混合类别)

文本: "角色塑造非常肤浅。" → 情感: 负面
文本: "镜头语言充满诗意" → 情感: 正面
文本: "剧情漏洞多得离谱" → 情感: 负面
请分类: "配乐完美契合了故事氛围" →

效果: 迫使模型关注语言模式(如负面关键词「肤浅」「漏洞」),而非顺序记忆。

示例2: 主题分类

错误提示

文章标题: "火星探测器发现有机分子" → 类别: 科技
文章标题: "量子计算新突破" → 类别: 科技
文章标题: "金州勇士队获得冠军" → 类别: 体育
请分类: "AI模型以95%的准确率诊断癌症" →

问题: 过于工整的科技/科技/体育循环可能让模型关注数字位置。

正确提示

文章标题: "基因编辑疗法获批进入临床试验" → 类别: 科技
文章标题: "NBA总决赛MVP揭晓" → 类别: 体育
文章标题: "爱沙尼亚测试区块链投票系统" → 类别: 科技
请分类: "世界杯预选赛赛程公布" →

9. 适应模型更新

升级模型,优化提示。使用更新的模型,以获得更好的基础模型效果,持续提示优化。

10. 尝试不同的输出格式

  • JSON 格式方便处理
  • 通过提示要求 JSON 格式,迫使模型遵守结构化要求并限制模型幻觉内容

输入

将电影评论分类为正面、中性或负面。返回有效的 JSON:
评论:"她"是一个令人不安的研究,揭示了如果允许人工智能继续不受控制地发展,人类将走向何方。它太令人不安了,我无法观看。

模式:
"""
电影:
{
"sentiment": 字符串 "POSITIVE" | "NEGATIVE" | "NEUTRAL",
"name": 字符串
}

电影评论:
{
"movie_reviews": [电影]
}
"""

JSON 响应:

输出

{
"movie_reviews": [
{
"sentiment": "NEGATIVE",
"name": "Her"
}
]
}

11. CoT Best practices 思维链

因为思维链一般解决的问题只有一个标准答案,并且有严谨的要求,temperature 应该设置为 0。

12. 记录各种提示尝试

当你正在构建一个检索增强生成(RAG)系统时,你还需要记录下 RAG 系统中具体哪些因素影响了提示中的内容被插入——这包括你的查询、分块的设定、分块输出以及其它相关信息。

资源