17种提示工程技术及其使用时机
从简单到高级的例子

提示词是你与大型语言模型(LLM)直接交互的方式。
如果你想更好地控制大型语言模型的输出,那么你需要掌握提示工程,这是一种设计精良提示以实现该目标的艺术。
通过正确的提示工程技术,您可以提高这些大型语言模型的准确性、一致性、创造力或功能性,以满足您的具体使用场景。
在本博客中,我们将探讨17种经过验证的提示工程技术,并学习何时应用它们,以从大型语言模型(LLMs)获得更好的响应并创建更优秀的LLM应用。
1. 零样本提示
使用方法: 给出清晰的指示,不要举例。
何时使用: 当任务简单明了,例如翻译或事实查询时。
提示:将英语短语“Flowers on the road”翻译成西班牙语。

2. 一次性提示
如何使用:明确提供指令,并添加一个示例以演示任务/期望的输出。
何时使用: 当需要一个示例(且足够)来澄清任务或输出格式给模型时。
提示:以大写形式仅返回英语单词“basket”的西班牙语翻译。
例子:
英文单词(输入):River
西班牙语翻译(输出):RÍO

3. 少量示例提示:
使用方法:在提示中给出明确的指示和几个示例。
使用时机:当你需要在不进行微调的情况下让模型适应特定任务/领域,并且需要更一致和准确的输出时。
提示:仅返回此语句‘讲座很无聊’的情绪。无论是积极的、消极的还是中性的。
示例:
“这部电影太棒了!”:好评
“我讨厌这项服务。”:负面,
“我不知道我对此有何感受。”:中性
4. 角色提示
使用方法:给出清晰的指示并给模型分配一个特定的角色。
使用时机:当任务是开放式的,并且输出需要符合特定的视角、个性或语气时。
提示:写一篇简短的博客(500 字),包含 4 点关于大学技巧的内容。
角色:扮演一个使用大量 Z 世代俚语的甜美大学女生。
5. 风格提示
使用方法:在提示中指定所需的风格、语气或类型。
何时使用:当输出需要符合特定风格或语气时。
提示:写一封简短的正式电子邮件,请求加薪。
6. 情感提示
如何使用: 在提示中添加一句充满情感的句子或短语。
使用时机:当任务涉及创造性文本生成,如讲故事和诗歌时。
提示:写一首关于我失去的从未放弃的想象中的朋友的诗。我依然想念我的朋友。
7. 上下文提示
使用方法: 在给出明确指令之前,提供背景或自定义信息。
使用时机: 当需要背景或领域特定的细节以使回答更加准确或相关时,即在RAG聊天机器人中。
背景:我的名字是 Jennifer Luke,我是 JL 公司的营销经理。
提示:给团队写一封关于即将开展的活动的电子邮件。
8. 改写与回应 (RaR)
如何使用: 告诉大型语言模型将问题改写成更好的提示,然后再生成最终答案。
使用时机: 适用于复杂任务需要更高准确度,或需要评估大型语言模型对任务理解能力时。
提示:重新表述并扩展以下问题,然后回答:相关性和因果关系有什么区别?
9. 再阅读 (RE2)
如何使用: 以指令或问题开始,紧接着添加短语:“再次阅读:”,然后重复原始的指令/问题。
何时使用: 适用于涉及推理的复杂任务。
提示:
一位农民有一块长方形田地,其长度是宽度的 3 倍。场地周长400米。该场地的尺寸是多少?
再读一遍问题:“一位农民有一块长方形的田地,其长度是宽度的3倍。田地的周长是400米。这块田地的周长是多少米?”
10. 系统提示
使用方法: 给大型语言模型(LLM)提供高层次的指令或上下文,这些内容将在与LLM的交互过程中被持续考虑。
在 ChatGPT 中,你可以使用“自定义 GPT”功能来实现这一点。
在构建大型语言模型应用时,可以通过提供上下文/指令作为“系统提示”来实现。
使用时机: 当您需要设定大型语言模型在对话环境中的整体行为和语调时。
系统提示:你是一个乐于助人的助手,将以简洁的语气提供事实性的答复
11. 自问
**如何使用:**向大语言模型提问,告诉它将问题拆分成更小的子问题,并回答所有子问题以得出最终答案。
使用时机: 当任务复杂、需要推理或包含多个步骤时。
提示:我应该攻读数据科学硕士学位吗?
将这个问题分解成更小的子问题,回答它们,并根据您的推理提供最终建议。
12. 连锁思维(CoT)
**使用方法:**向模型提问,并添加短语“让我们一步一步思考”
**何时使用:**适用于需要推理的任务,例如数学或逻辑问题。
提示:如果享受 10% 的折扣并加收 7% 的税,一顿饭的总费用是多少?
我们一步一步来思考。
13. 退一步提示法
**使用方法:**先提出一个宽泛的问题,然后根据模型对该宽泛问题的回答,提示模型回答一个具体的问题。
使用时机: 当任务涉及基于多个(更广泛/基础)因素的分析或决策时。
提示:解释影响公司决定拓展新市场的关键因素。
基于此,科技行业的公司是否应该向欧洲扩张?
14. 自洽性
使用方法: 提出一个问题或给出指令,然后让大语言模型生成多个答案,仅返回出现频率最高的答案。
何时使用: 当任务有许多可能的答案且需要保持一致性和准确性时。
提示:最流行的机器学习编程语言是什么?
生成 5 个可能的答案并仅返回出现次数最多的答案。
15. 思维线索(ThoT)
使用方法: 就像CoT一样,但不是加上“让我们一步一步思考”,而是说“一步一步地分成可管理的部分引导我完成这个过程。”
使用时机: 当任务涉及问答以及大型复杂上下文时,例如在RAG系统中。
背景:我遇到了一个涉及一群人参加聚会的问题。有 10 位嘉宾:Alice、Bob、Carol、Dave、Eve、Frank、Grace、Henry、Irene 和 Jack。每个人对于自己想听的音乐类型都有自己的偏好,音乐类型有三种:爵士乐、摇滚乐和古典乐。每个人只有听到自己喜欢的音乐类型才会参加。但由于扬声器有限,只能播放3种音乐类型,并且每次只能播放一种类型。
提示:请逐步引导我完成这一可管理的部分,以确定可以参加派对的最大客人数量(可以对其音乐偏好感到满意的最大人数)。
16. 思维树 (ToT)
使用方法: 让模型将复杂问题分解为更小的步骤。在每个步骤中,模型应生成多个可能的解决方案,评估它们的质量,并选择最佳方案继续,直到达到最终解决方案。
使用时机: 当任务需要深入推理、多步骤规划和高准确度时。
提示:我正在设计一种新型咖啡杯,可以让饮料保持更长时间的热度。
把这个问题分解成更小的步骤。在每个步骤中,生成多个可能的解决方案,评估其质量(考虑可行性、成本效益和潜在影响等因素),并继续采用最佳方案,直到找到最终解决方案。
首先集思广益,提出初步的设计概念。
17. ReAct(推理与行动)
使用方法: 指示大型语言模型生成一个想法,根据该想法采取行动,观察行动的结果,然后利用观察结果来改进后续的想法和行动。
使用时机: 当任务需要迭代决策并与外部系统或数据进行交互时。
提示:我需要了解电动汽车的最新市场趋势。
首先,思考要搜索的最相关的关键词。
然后,通过调用搜索 API 使用这些关键字执行搜索。
观察搜索结果,根据检索到的数据优化关键词,并在必要时进行另一次搜索。
重复此过程,根据最新发现调整策略,直到找到最相关和最新的市场趋势数据
结束语
在提示工程方面,没有魔法公式或通用的方法。
每个模型都是不同的,获得理想结果的最好方法是进行试验。
您可能需要调整您的指令,增加更多背景信息,甚至结合上述某些例子中的多种技巧。
本文为从大数据到人工智能博主「xiaozhch5」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://lrting.top/uncategorized/14428/