1 基础
1.1 提示方法
(1) 给出指令
请阅读以下销售邮件。删除任何可用于识别个人身份的信息 (PII),并用相应的占位符替换它。例如,用"[姓名]"替换"John Doe"。
你好 John,
我写信给你是因为我注意到你最近买了一辆新车。我是一家当地经销商 (Cheap Dealz) 的销售员,我想让你知道我们有一辆新车的超值优惠。如果你有兴趣,请告诉我。
谢谢,
Jimmy Smith
电话:410-805-2345
电子邮件:jimmysmith@cheapdealz.com
(2)角色提示
你是一个能解决世界上任何问题的杰出数学家。
试着解决下面的问题:
100*100/400*56 是多少?
答案是 1400。
(3)多范例提示
多范例提示的一个关键场景是当我们需要以特定的结构输出结果,但是又很难向模型进行描述的时候。为了理解这一点,让我们看这样一个例子:假设您需要通过分析当地的报纸文章来汇编附近城镇公民的姓名和职业。您希望模型读取每篇文章并以Last, First [OCCUPATION]格式输出姓名和职业列表。为了让模型做到这一点,您可以向它展示一些示例
- 无范例提示(0 shot prompting): 不展示范例
- 单范例提示(1 shot prompting): 只展示 1 条范例
- 多范例提示(few shot prompting): 展示 2 条及以上的范例
(4)组合提示
以下是一个包含上下文、指令以及多示例提示的例子:
Twitter是一个社交媒体平台,用户可以发布称为“推文”的短消息。推文可以是积极的或消极的,我们希望能够将推文分类为积极或消极。以下是一些积极和消极推文的例子。请确保正确分类最后一个推文。
Q: 推文: "今天真是美好的一天!"
这条推文是积极的还是消极的?
A: 积极的
Q: 推文: 我讨厌这个班级"
这条推文是积极的还是消极的?
A: 消极的
Q: 推文: "我喜欢牛仔裤上的口袋"
A:
1.2 规范化提示
提示的组成部分
以下是在一个提示中将时常看到的一些组成部分:
- 角色
- 指令/任务
- 问题
- 上下文
- 示例(few shot)
并不是每个提示都包含所有这些组成部分,并且当某些部分出现时,它们之间也没有标准的顺序。
一份标准的提示
标准提示:
法国首都是什么?
QA 格式的标准提示
Q: 法国首都是什么?
A:
多示例的标准提示
···
西班牙的首都是什么?
马德里
意大利的首都是什么?
罗马
法国的首都是什么?
···
QA的提示类似
1.3 大语言模型的缺陷
引用来源
LLMs 没有连接到网络且无法精确得知他们的信息来源,故大多数情况下不能准确给出引用来源。他们经常会产生一些看起来不错,但完全不准确的资料。
注:目前通过使用腾讯元宝,会提供引用资料
偏见
带有性别歧视等内容
谵妄
当被问到一个不知道答案的问题时,LLMs 时常产生虚假的信息。有时他们会说不知道答案,但很多时候他们会自信地给出一个错误的答案。
注:个人理解就是大模型的幻觉(Hallucination)问题
数学
简单的数学计算都是错误答案
1.4 LLM Settings
LLMs 的输出受超参数配置(configuration hyperparameters)影响,它能控制模型的多个方面,例如有多「随机」。调整超参数能生成更具活泼、多样及有趣的输出。本章将讨论两个重要的超参数以及它们如何影响 LLMs。
temperature和Top p, 这两个参数实际上就是sample 方法
- 热度可以控制语言模型输出的随机度。高热度生成更难预料及富有创造性的结果,低热度则更保守。例如热度为 0.5 时模型生成内容将比 1.0 更容易预测且创造性更少。
- Top p,即核心采样(nucleus sampling),是另一个控制语言模型输出随机性的超参数配置。它设定了一个概率阈值,并选择累积概率超过该阈值的最佳词汇,然后模型从这组词汇中随机抽取以生成输出。与传统方法(在整个词汇表中随机抽样)相比,这种方法可以产生更丰富多样且有趣的输出
超参数如何影响输出结果:
热度和 top p 都可以通过控制生成文本中的随机性和多样性来影响语言模型的输出。较高的热度或 top p 会生成更不可预测且有趣的结果,但同时也增加了错误或无意义文本的可能性。相反较低的热度或 top p 则生成更保守和可预测的结果,但也可能导致重复或乏味。
对于文本生成你可能希望使用较高的热度或 top p。然而,对于精确性重视型场景,如翻译或问答时,则应用较低的热度或 top p 以提高精确性和事实正确性。
PS:有些模型,如 ChatGPT,不允许调整这些超参数配置。