选自微软博客

机器之心编译

机器之心编辑部

大模型有了,下一步便是规划 Prompt 了。

几个月来,ChatGPT、GPT-4 等大模型连续发布。这些模型表现出了强壮的出现才能,但模型生成的结果是随机的,时好时坏,部分原因与 Prompt 的规划密切相关。
很多人将 Prompt 比喻为大模型的咒语,在引导模型生成内容方面影响很大,怎么挑选 Prompt 成了每个 AI 研究者重视的问题。最近微软官方出了一份教程,该教程介绍了 Prompt 规划和工程中的一些高级玩法,涵盖体系音讯、少样本学习、非聊天场景等内容。

微软官方亲自出教程,拿捏「Prompt工程」高级玩法

每部分内容都有技能介绍和示例展示,下面我们看看具体内容有哪些。
关于 Prompt,你应该了解这些
体系音讯
体系音讯包含在 Prompt 的最初,用于为模型供给上下文、阐明或与用例相关的其他信息。用户能够通过体系音讯描述模型应该答复什么、不应该答复什么,以及界说模型回复的格局。
下图示例展示了体系音讯和模型生成的回复:
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

通常,体系音讯还能够是这样的:

  • 上表中 Assistant 是一个由 OpenAI 训练的大言语模型。

  • Assistant 是一个智能聊天机器人,旨在协助用户答复问题。要求模型只能运用给定的上下文来答复问题,假如不确定答案,你能够说「我不知道」。

  • Assistant 是一个智能聊天机器人,例如其能协助用户答复税务相关问题。

  • 又比如你是一个 Assistant,旨在从文本中提取实体。用户将张贴一串文本,你将以 JSON 对象的方式回应你从文本中提取的实体。

这是输出格局的示例:

{"name": "","company": "","phone_number": ""}

上面便是关于体系音讯的介绍,不过一个重要的细节是,即使是规划良好的体系音讯,模型仍有或许生成与体系音讯指令相矛盾的过错回复。
小样本学习
让言语模型适应新使命的一种常见方法是运用小样本学习。小样本学习供给了一组训练样本作为 Prompt 的一部分,以便为模型供给额定的上下文信息。
用户和 Assistant 之间的一系列信息(以新的 Prompt 格局编写)能够作为小样本学习的示例。这些示例可用于引导模型以某种方法做出呼应、模仿特定行为并为常见问题供给种子答案。

微软官方亲自出教程,拿捏「Prompt工程」高级玩法
Prompt 的根本结构。

非对话场景
虽然当前大模型的首要应用场景是对话生成场景,但也能够用在非对话场景。例如,关于情感分析场景,你或许会运用以下 Prompt:

微软官方亲自出教程,拿捏「Prompt工程」高级玩法

运用明确的指令
一般来讲,信息在 Prompt 中出现的顺序很重要。因为 GPT 类模型是以特定方法构建的,该构建进程界说了模型对输入的处理方法。研究标明,在 Prompt 开始时告知模型你希望它履行的使命,然后再同享其他上下文信息或示例,能够协助模型产生更高质量的输出。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

最后重复一遍指令
模型简单遭到最新误差的影响,在这种情况下,结尾 Prompt 信息或许比最初 Prompt 信息对输出的影响更大。因此,在 Prompt 结尾重复指令值得一试。
对输出的操作
这种情况是指在 Prompt 结尾包含几个单词或短语以取得符合所需方式的模型呼应。例如,运用诸如「Here’s a bulleted list of key points:\n- 」之类的 Prompt 能够协助保证输出格局为项目符号列表。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

增加语法
为 Prompt 增加语法,例如标点符号、标题等,这样做使输出更简单解析。
下面示例中,不同的信息源或 step 之间增加了分隔符(在本例中为 —)。这种操作允许运用 — 作为生成的中止条件。此外,部分标题或特别变量以大写方式出现以进行区别。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

把使命分化
假如将使命分化为更小的 step,大型言语模型 (LLM) 通常会表现得更好。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

注意,这儿运用了语法来区别各个部分并对输出进行初始化。在这个简单的比如中,将使命从一个 step 分化为两个 step 结果并不很明显,可是当试图对包含许多现实声明的大块文本进行此操作时,将使命分化会产生明显的差异。
思维链提示
这是分化使命技能的一种变体。在这种方法中,不是将使命拆分为更小的 step,而是指示模型呼应逐渐进行并出现所有触及的 step。这样做能够减少结果不精确,并使评估模型呼应愈加简单。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

供给实在上下文
在该方法下,本文主张供给给模型实在数据。一般来讲,原始数据越挨近最终答案,模型需要做的工作就越少,这意味着模型犯错的机会就越少。在下面示例中,体系音讯供给了最新的文章,然后要求模型给出一些前期客户,模型精确的给出了答案。
微软官方亲自出教程,拿捏「Prompt工程」高级玩法

除此以外,微软在这份指南中还介绍了关于 Prompt 其他技巧,大家能够前去原文检查,获取更多信息。
原文链接:learn.microsoft.com/en-us/azure…