提示词的重要
看下面一个简单的示例:
- 提示词
The sky is
- 输出
blue
从上面的提示示例中可以看出,语言模型能够基于我们给出的上下文内容 "The sky is" 完成续写。输出可能是出乎意料的,或者与你想要完成的任务相去甚远。实际上,这个基本示例突出了提供更多上下文或明确指示你想要实现什么的必要性。这正是提示工程的核心所在。
让我们试着改进一下:
提示词:
Complete the sentence:
The sky is
输出:
blue during the day and dark at night.
本例中,我们告知模型去完善句子,因此输出结果看起来要好得多,因为它完全按照你告诉它要做的(“完善句子”)去做。
提示词要素
提示词可以包含以下任意要素:
- **指令:**想要模型执行的特定任务或指令。
- **上下文:**包含外部信息或额外的上下文信息,引导语言模型更好地响应。
- **输入数据:**用户输入的内容或问题。
- **输出指示:**指定输出的类型或格式。
为了更好地演示提示词要素,下面是一个简单的提示,旨在完成文本分类任务:
提示词
请将文本分为中性、否定或肯定
文本:我觉得食物还可以。
情绪:
在上面的提示示例中,指令是“将文本分类为中性、否定或肯定”。输入数据是“我认为食物还可以”部分,使用的输出指示是“情绪:”。请注意,此基本示例不使用上下文,但也可以作为提示的一部分提供.
提示技巧
指令
你可以使用命令来指示模型执行各种简单任务,例如“写入”、“分类”、“总结”、“翻译”、“排序”等,从而为各种简单任务设计有效的提示。
有些人建议将指令放在提示的开头。另有人则建议是使用像“###”这样的清晰分隔符来分隔指令和上下文。
提示:
### 指令 ###
将以下文本翻译成西班牙语:
文本:“hello!”
输出:
¡Hola!
具体性
提示越具描述性和详细,结果越好。特别是当你对生成的结果或风格有要求时,这一点尤为重要。
例如,让我们尝试从一段文本中提取特定信息的简单提示。
提示:
提取以下文本中的地名。
所需格式:
地点:<逗号分隔的公司名称列表>
输入:“虽然这些发展对研究人员来说是令人鼓舞的,但仍有许多谜团。里斯本未知的香帕利莫德中心的神经免疫学家 Henrique Veiga-Fernandes 说:“我们经常在大脑和我们在周围看到的效果之间有一个黑匣子。”“如果我们想在治疗背景下使用它,我们实际上需要了解机制。””
输出:
地点:里斯本,香帕利莫德中心
避免不明确
过多的不明确的限制,可能导致回答不尽人意。
例如,你可能有兴趣了解提示工程的概念。你可以尝试这样做:
解释提示工程的概念。保持解释简短,只有几句话,不要过于描述。
从上面的提示中不清楚要使用多少句子以及什么风格。尽管你可能仍会从上述提示中得到较好的响应,但更好的提示应当是非常具体、简洁并且切中要点的。例如:
使用 2-3 句话向高中学生解释提示工程的概念。
不要用不要
设计提示时的另一个常见技巧是避免说不要做什么,而应该说要做什么。
提示:
以下是向客户推荐电影的代理程序。代理负责从全球热门电影中推荐电影。它应该避免询问用户的偏好并避免询问个人信息。如果代理没有电影推荐,它应该回答“抱歉,今天找不到电影推荐。”。
```顾客:请根据我的兴趣推荐一部电影。
客服:
输出:
抱歉,我没有关于你兴趣的任何信息。不过,这是目前全球热门的电影列表:[电影列表]。希望你能找到喜欢的电影!