最近由马里兰大学、OpenAI、斯坦福大学、微软等12个机构联合发布了一份长达76页的Prompt技术报告,对生成式人工智能(GenAI)系统中的提示技术(Prompting Techniques)进行了系统性的查和分类,提供了33个提示相关的词汇表、58种文本提示技术的分类、40种其他模态的技术、4大类Agents提示技术。

一篇OpenAI、微软等系统性Prompt技术报告_多语言

添加图片注释,不超过 140 字(可选)

1. 引言

介绍了生成式人工智能(GenAI)系统在不同领域的广泛应用,并强调了通过提示(Prompting)或提示工程(Prompt engineering)与这些系统进行交互的重要性以及一些基础性概念知识。

提示的术语:33个术语的全面词汇表

一篇OpenAI、微软等系统性Prompt技术报告_模态_02

添加图片注释,不超过 140 字(可选)

  1. GenAI系统的部署:基于Transformer的大型语言模型(LLMs)被广泛应用于面向消费者、内部使用和研究环境中。
  2. 提示的构成:Prompt的常见组成部分,包括指令、示例、输出格式化、角色和附加信息。
  3. 提示的作用:用户通过提供输入提示来与这些模型交互,模型根据提示生成相应的输出。提示可以是文本形式,也可以是图像、音频、视频或其他媒体形式。
  4. 提示工程的重要性:了解如何有效地构建、评估和执行提示任务对于使用这些模型至关重要。更好的提示可以提高模型在各种任务上的性能。
  5. 提示领域的挑战:尽管提示是一个广泛研究的概念,但由于该领域的新兴性,关于提示构成的术语使用混乱,缺乏统一的本体理解。
  6. 研究范围和目标:论文的目标是创建一个包含提示技术术语和方法的资源库,以促进该领域的理解和发展。研究范围限定在离散前缀提示,不包括基于梯度更新的技术(如微调)。
  7. 系统性回顾:基于PRISMA流程的进行系统性文献回顾,以识别和分类不同的文本基础提示技术。
  8. 术语和定义:论文提供了一个包含33个术语的全面词汇表,并对提示的不同组成部分进行了定义和讨论。

在提示领域内的类别是相互连接的。讨论了7个核心类别,这些类别在研究范围内的论文中有详细的描述。

一篇OpenAI、微软等系统性Prompt技术报告_语言模型_03

添加图片注释,不超过 140 字(可选)

2. Prompting元分析

对现有文献中提示技术(prompting techniques)的全面审视和分类,采用了基于PRISMA流程的系统性回顾方法,以收集和分析与提示技术相关的文献。

PRISMA评审流程。累积了4,247条独特的记录,从中提取了1,565条相关记录。

一篇OpenAI、微软等系统性Prompt技术报告_模态_04

添加图片注释,不超过 140 字(可选)

  1. 文本基础提示技术:详细介绍了58种不同的文本基础提示技术,并将其分为六大类别,包括:
  • 情境学习(In-Context Learning, ICL)
  • 零样本提示(Zero-Shot)
  • 思维生成(Thought Generation)
  • 分解(Decomposition)
  • 集成(Ensembling)
  • 自我批评(Self-Criticism)
  1. 提示技术的使用:分析了在研究和行业中常用的提示技术,并讨论了它们在不同模型和数据集上的基准测试。
  2. 提示工程:探讨了自动优化提示的技术,包括元提示(Meta Prompting)、自动提示工程(Automatic Prompt Engineering)等。
  3. 答案工程:讨论了从大型语言模型(LLM)输出中提取精确答案的过程,包括答案形状、答案空间和答案提取器的设计决策。

58种不同的文本基础提示技术

一篇OpenAI、微软等系统性Prompt技术报告_模态_05

添加图片注释,不超过 140 字(可选)

在设计少量样本提示时强调六个主要的设计决策。*请注意,这里的建议并不适用于所有任务;在某些情况下,每一项都可能损害性能。

一篇OpenAI、微软等系统性Prompt技术报告_语言模型_06

添加图片注释,不超过 140 字(可选)

提示技术的引用次数。数据集中的前25篇论文,按它们在数据集中被其他论文引用的频率来衡量。这里的大多数论文是关于提示技术*的,其余的论文包含了提示建议。

一篇OpenAI、微软等系统性Prompt技术报告_prompt_07

添加图片注释,不超过 140 字(可选)

3. 多语言和多模态提示技术

探讨了超越英语文本提示(prompting)的领域,主要关注多语言(multilingual)和多模态(multimodal)提示技术。

3.1 Multilingual (多语言)

18种多语言提示技术

一篇OpenAI、微软等系统性Prompt技术报告_prompt_08

添加图片注释,不超过 140 字(可选)

  • 3.1.1 Chain-of-Thought (CoT): 这是一种多语言提示技术,通过提供一系列逻辑步骤来引导模型生成特定输出。
  • 3.1.2 In-Context Learning: 利用上下文中的示例来训练模型,使其能够理解和执行特定任务。
  • 3.1.3 In-Context Example Selection: 在上下文中选择与任务相关的示例,以提高模型的性能。
  • 3.1.4 Prompt Template Language Selection: 选择合适的提示模板语言对于多语言模型的性能至关重要。
  • 3.1.5 Prompting for Machine Translation: 讨论了如何使用提示技术来改进机器翻译。

3.2 Multimodal (多模态)

5大类多模态提示技术

一篇OpenAI、微软等系统性Prompt技术报告_prompt_09

添加图片注释,不超过 140 字(可选)

  • 3.2.1 Image Prompting: 使用图像作为提示,引导模型进行图像生成、分类或编辑等任务。
  • 3.2.2 Audio Prompting: 音频提示技术,用于处理与声音相关的任务。
  • 3.2.3 Video Prompting: 视频提示技术,用于视频生成、编辑或理解等任务。
  • 3.2.4 Segmentation Prompting: 用于图像或视频的分割任务,帮助模型理解数据的不同部分。
  • 3.2.5 3D Prompting: 用于3D对象合成、表面纹理化或4D场景生成等任务。

4. Agents提示技术

探讨了提示技术(prompting techniques)的扩展:Agents与Evaluation,这些扩展使得生成式人工智能(GenAI)系统更加强大和灵活。

4.1 Evaluation(评估)

大型语言模型(LLMs)提取信息、进行推理以及理解用户意图的潜力使它们成为强大的评估者候选。例如,可以提示LLM根据提示中定义的一些指标来评估一篇文章的质量,甚至是先前LLM输出的质量。构建强大评估者的四个重要组成部分:提示技术、评估的输出格式、评估流程的框架,以及其他一些方法论设计决策。

Evaluation四大组成部分

一篇OpenAI、微软等系统性Prompt技术报告_多语言_10

添加图片注释,不超过 140 字(可选)

  • 4.1.1 Prompting Techniques:评估过程中使用的提示技术,包括角色扮演、上下文学习等,以确保评估的质量和一致性。
  • 4.1.2 Output Format:评估的输出格式,如线性量表、二元评分或Likert量表,这些格式影响评估的性能和准确性。
  • 4.1.3 Prompting Frameworks:评估框架,如LLM-EVAL、G-EVAL和ChatEval,它们提供了结构化的方式来评估LLM输出的质量。
  • 4.1.4 Other Methodologies:其他评估方法,包括批量提示(batch prompting)和成对评估(pairwise evaluation),这些方法旨在提高评估的效率和效果。

4.2 Agents(智能体)

4大类Agents

一篇OpenAI、微软等系统性Prompt技术报告_多语言_11

添加图片注释,不超过 140 字(可选)

  • 4.2.1 Tool Use Agents:这些智能体使用外部工具来增强GenAI系统的功能,例如使用计算器或代码解释器来执行数学计算或编程任务。
  • 4.2.2 Code-Generation Agents:专注于生成代码的智能体,它们可以将问题直接转化为代码,并由解释器执行以产生答案。
  • 4.2.3 Observation-Based Agents:基于观察的智能体通过与环境交互来解决问题,例如在玩具环境中进行操作和学习。
  • 4.2.4 Retrieval Augmented Generation (RAG):这种智能体结合了检索(retrieval)和生成(generation),通过从外部源检索信息并将其整合到提示中,以提高知识密集型任务的性能。




 https://arxiv.org/abs/2406.06608