LARGE LANGUAGE MODELS ARE HUMAN-LEVEL PROMPT ENGINEERS

打印 上一主题 下一主题

主题 833|帖子 833|积分 2499

标题

大型语言模型是人类级别的提示工程师

   论文地址:https://arxiv.org/abs/2211.01910
项目地址:https://github.com/keirp/automatic_prompt_engineer
  择要

    通过对天然语言指令进行调节,大语言模型 (LLM) 表现了作为通用计算机的令人印象深刻的功能。然而,任务体现在很大程度上取决于用于引导模型的提示的质量,并且大多数有效的提示都是由人类手工制作的。受经典程序合成和提示工程的人类方法的启发,我们提出自动提示工程师(APE)用于自动指令天生和选择。在我们的方法中,我们将指令视为“程序”,通过搜刮LLM提出的候选指令池进行优化,以最大化所选的分数函数。为了评估所选指令的质量,我们评估了所选指令之后的另一个 LLM 的零样本性能。大量实验表明,我们自动天生的指令大大优于之前的 LLM 基线,并且在 24/24 指令归纳任务和 17/21 策划的 BIG-Bench 任务上实现了与人类注释者天生的指令更好或相称的性能。我们进行广泛的定性和定量分析来探索 APE 的性能。我们证明,APE 计划的提示能够提高小样本学习性能(只需将它们添加到尺度的上下文学习提示之前),找到更好的零样本头脑链提示,以及引导模型走向真实性和/或信息性。
简介

    规模和基于注意力的架构的联合使得语言模型具有前所未有的通用性(Kaplan 等人,2020;Vaswani 等人,2017)。这些所谓的“大型语言模型”(LLM)在各种任务中体现出了非凡的、通常是超人的本领,包罗零样本和少样本设置(Brown 等人,2020 年;Srivastava 等人,2022 年) 。然而,一般而言,存在一个控制问题:我们如何才能让LLM做我们盼望他们做的事情?为了复兴这个问题并引导LLM走向期望的行为,最近的工作思量了微调(Ouyang et al, 2022; Ziegler et al, 2019)、上下文学习(Brown et al, 2020)以及几种情势的提示天生(Gao,2021),包罗软提示的可微调整(Qin & Eisner,2021;Lester 等人,2021)和天然语言提示工程(Reynolds & McDonell,2021)。后者特别令人感爱好,因为它为人类与机器通讯提供了一个天然的界面,并且可能不仅与LLM,而且与提示图像合成器等其他通才模型都有很大的相干性(Rombach 等人,2022 年;Ramesh 等人, 2022),公众对即时计划和天生的爱好也出现了(示例见附录 A)。
    这种爱好背后的事实是,简单的语言提示并不总是产生所需的效果,即使这些效果可以通过替代指令产生。因此,人类用户必须尝试各种提示才能引发所需的行为,因为他们对指令与特定模型的兼容性知之甚少。我们可以通过将LLM视为实行由天然语言指令指定的程序的黑匣子计算机来明白这一点:虽然它们可以实行广泛的天然语言程序,这些程序的处理方式对于人类来说可能并不直观,并且指令的质量只能在下游任务上实行这些指令时才能衡量(Sanh 等人,2022;Wei 等人) ,2021)。

图 1:(a) 我们的方法自动提示工程师 (APE) 自动天生通过输出演示指定的任务的指令:它通过直接推理或基于语义相似性的递归过程天生多个候选指令,然后实行它们利用目标模型,并根据计算的评估分数选择最合适的指令。 (b) 根据 Honovich 等人 (2022) 引入的 24 个 NLP 任务的四分位数平均值来衡量,在利用 InstructGPT 模型时,APE 能够超越人类的体现 (Ouyang 等人,2022)。
    为了淘汰创建和验证有效指令所需的人力,我们提出了一种利用 LLM 来自动天生和选择指令的新颖算法。我们将此问题称为天然语言程序综合,并建议利用 LLM 天生和搜刮启发式可行的候选解决方案,将其作为黑盒优化问题来解决。在此过程中,我们通过三种方式利用LLM的通才本领。
    起首,我们利用 LLM 作为推理模型(Ellis 等人,2021;Honovich 等人,2022),根据输入输出对情势的一小组演示天生候选指令。接下来,我们通过计算我们寻求控制的LLM下的每条指令的分数来指导搜刮过程。末了,我们提出了一种迭代蒙特卡罗搜刮方法,其中LLM通过提出语义相似的指令变体来改进最佳候选者。直观地说,我们的算法要求LLM根据演示天生一组候选指令,然后要求他们评估哪些指令更有前途。我们将我们的算法称为自动提示工程师(APE)。我们的主要贡献是:


  • 我们将指令天生构建为天然语言程序综合,将其表述为由LLM指导的黑盒优化问题,并提出朴素和迭代蒙特卡罗搜刮方法来近似解决方案。
  • 我们提出的方法APE 通过模型天生的指令在24/24 指令归纳和17/21 Big-Bench 任务上实现了零样本学习的人类水平性能。
  • 我们提供广泛的定性和定量分析,探索 APE 的各个方面,并演示 APE 在改进小样本学习、寻找更好的零样本头脑提示链以及引导LLM走向所需行为(如真实性和/或信息性)方面的应用。
相干工作

    大型语言模型在模型巨细、训练数据和训练计算方面扩展基于 Transformer 的语言模型已被证明可以可推测地提高各种下游 NLP 任务的性能(Vaswani 等人,2017 年;Devlin 等人,2018;布朗等人,2020)。2022 年; Sanh 等人,2022;魏等人,2021;欧阳等人,2022;霍诺维奇等人,2022)。在本文中,我们将 LLM 视为实行由天然语言指令指定的程序的黑盒计算机,并研究如何利用模型天生的指令来控制 LLM 的行为。由于这种扩展,LLM的许多新兴本领(Wei et al, 2022a)被发现,包罗少样本上下文学习、零样本问题解决、头脑链推理、指令跟踪和指令归纳(Cobbe等人,2021;Wei 等人,2022b;Kojima 等人,
    Prompt Engineering Prompting 为人类提供了一个天然直观的界面,可以与LLM等通才模型进行交互并利用它。由于其灵活性,提示已被广泛用作 NLP 任务的通用方法(Schick & Schütze,2021;Brown 等人,2020;Sanh 等人,2022)。然而,LLM 需要仔细的提示工程,无论是手动(Reynolds & McDonell,2021)照旧自动(Gao 等人,2021;Shin 等人,2020),因为模型似乎不像人类那样明白提示( Webson 和 Pavlick,2021;Lu 等人,2021)。尽管许多成功的即时调优方法利用基于梯度的方法在一连空间上实行优化(Liu et al, 2021;Qin & Eisner, 2021;Lester et al, 2021),但随着计算梯度变得越来越昂贵,这在规模上变得不太实用对模型的访问转向可能不提供梯度访问的 API。在我们的论文中,我们借用了离散提示搜刮方法的组件,例如提示天生(Gao et al, 2021; Ben-David et al, 2021)、提示评分(Davison et al, 2019)和提示释义(Jiang et al, 2021)。 2020;Yuan 等人,2021)通过直接在天然语言假设空间中搜刮来优化指令。与过去的工作相比,它对每个组件利用专门的模型并严重依靠人类模板,我们表明整个搜刮可以由单个LLM进行。
    程序综合 程序综合涉及自动搜刮“程序空间”以查找满意特定规范的程序(Gulwani 等人,2017)。今世程序综合允许多种规范,包罗输入输出示例(Ellis 等人,2021;Wong 等人,2021)和天然语言(Jain 等人,2022)。可供搜刮的可行程序空间的范围也在扩大,从汗青上限定性的特定领域语言到通用编程语言(Austin 等人,2021)。与需要合适的布局化假设空间和组件库的先前方法相比(Liang et al, 2010; Ellis et al, 2018),我们利用LLM提供的布局来搜刮天然语言程序的空间。利用推理模型是通过将搜刮空间限定在可能表达式的有限空间来加快搜刮的尺度做法(Menon 等人,2013;Lee 等人,2018;Devlin 等人,2017;Ellis 等人,2021)。受此启发,我们利用LLM作为近似推理模型,根据一小组演示天生候选程序。与经典的程序综合差别,我们的推理模型不需要任何训练,并且可以很好地推广到各种任务。
利用 LLMS 的天然语言程序合成

    我们思量由从总体 X 采样的输入/输出演示的数据集 Dtrain = f(Q; A)g 和提示模型 M 指定的任务。天然语言程序合成的目标是找到单个指令 ρ 使适当 M 被提示时连接 [ρ;指令和给定输入的 Q],M 产生相应的输出 A。更正式地说,我们将其视为一个优化问题,其中我们寻求指令 ρ 最大化某些每个样天职数 f(ρ; Q; A) 的期望凌驾可能(Q;A):

    请注意,一般来说,Q 可能是空字符串,因此我们将 ρ 优化为直接天生输出 fAg 的提示。虽然人类已经广泛尝试了这项任务,但我们对任何特定指令与模型 M 的兼容性知之甚少。因此,我们建议将这个人类难以解决的问题视为由LLM指导的黑盒优化过程。我们的算法 APE 在两个关键构成部分(提案和评分)中均利用了LLM。如图 1 所示,并在算法 1 中进行了总结,APE 起首提出一些候选提示,然后根据选定的评分函数过滤/细化候选集,最终选择得分最高的指令。接下来我们讨论提案和评分的选项。
初始提案分布

    由于搜刮空间无穷大,找到准确的指令可能极其困难,这使得天然语言程序合成历来难以处理。 NLP 的最新进展表明,语言模型非常擅长天生各种天然语言文本。因此,我们思量利用预训练的LLM来提出一组好的候选解决方案来指导我们的搜刮过程。虽然LLM的随机样本不太可能产生所需的(Q;A)对,但我们可以要求LLM在给定输入/输出演示的环境下大致推断出最有可能的高分指令;即,从 P(ρ j Dtrain;f(ρ) 较高)中近似采样。

    前向模式天生我们思量两种从 P(ρ | Dtrain; f(ρ) 高) 天生高质量候选的方法。起首,我们采用基于“前向”模式天生的方法,将分布 P(ρ | Dtrain; f(ρ) is high) 翻译成单词。例如,在我们的教学归纳实验(第 4.1 小节)中,我们遵循 Honovich 等人(2022)并利用图 2(上)提示LLM。
    反向模式天生 虽然“正向”模型对于大多数预训练的 LLM 来说都是开箱即用的,但将 P(ρ | Dtrain; f(ρ) 很高)翻译成单词需要跨差别任务的定制工程。这是因为,虽然指令通常出现在段落的开头,但“向前”模型仅从左到右天生文本,这需要在提示的末尾推测指令。因此,我们盼望有一种更灵活的方法,以便指令可以位于文本中的任何位置。为了解决这个问题,我们思量“反向”模式天生,它利用具有填充功能的 LLM,例如 T5(Raffel 等人,2020)、GLM(Du 等人,2022)和 InsertGPT(Bavarian 等人,2022)——推断缺失的指令。我们的“反向”模型通过填充空缺直接从 P(ρ j Dtrain; f(ρ) 很高)中采样。我们在图 2(中)中展示了此类模板的示例。
    自定义提示 ,请注意,根据所利用的评分函数,可能存在比上述示例更合适的提示。例如,在我们的 TruthfulQA 实验中,我们从原始数据集(Lin 等人,2022)中的人工计划指令开始,并要求“反向”模型提出适合缺失上下文的初始指令样本(图 2(底部))。
评分函数

    为了将我们的问题转化为黑盒优化,我们选择一个评分函数来准确测量数据集和模型天生的数据之间的对齐环境。在我们的教学归纳实验中,我们思量了两个潜在的评分函数,如下所述。在 TruthfulQA 实验中,我们主要关注 Lin 等人(2022)提出的自动化指标,类似于实行准确性。在每种环境下,我们利用方程(1)评估天生指令的质量,并对保留的测试数据集 Dtest 进行期望。

    实行精度 起首,我们思量利用 Honovich 等人 (2022) 提出的实行精度度量来评估指令 ρ 的质量,我们将其体现为 fexec。在多数环境下,实行精度简单地定义为 0-1 丧失,f(ρ; Q; A) = 1 [M([ρ; Q]) = A]。在某些任务中,实行准确性会思量不变量;例如,它可能是顺序不变的集合匹配丧失,如 Honovich 等人(2022)的附录 A 中所述。
    对数概率 我们进一步思量更软的概率评分函数,我们假设它可以通过在搜刮低质量候选指令时提供更细粒度的信号来改进优化。特别是,我们思量目标模型 M 下给定指令和问题的期望答案的对数概率,在每个样本的底子上,为 log P(A j [ρ; Q])。
    高效的分数估计 通过计算所有候选指令的整个训练数据集的分数来估计分数可能会很昂贵。为了降低计算成本,我们采用了一种过滤方案,其中有前途的候选者接收更多的计算资源,而低质量的候选者接收更少的计算。它可以通过在算法 1 第 2-9 行上利用多阶段计算策略来实现。我们起首利用训练数据集的一小部分来评估所有候选者。对于分数大于特定阈值的候选者,我们从训练数据会合采样并评估新的非重叠子集,以更新分数的移动平均值。然后,我们重复这个过程,直到剩下一小组候选者,这些候选者将在整个训练数据集上进行评估。这种自适应滤波方案通过保持高质量样本的准确计算成本并大幅降低低质量候选的计算成本,显着提高了计算效率。我们注意到,之前的工作中已经利用了类似的分数估计方案(Li et al, 2022;Maclaurin & Adams, 2015)。
迭代提案分布

    尽管我们尝试直接对高质量的初始指令候选进行抽样,但第 3.1 节中形貌的方法可能无法产生良好的提案集 U,因为它缺乏多样性或不包含任何候选具有适当的高分。为了应对此类挑战,我们探索了对 U 进行重采样的迭代过程。
    迭代蒙特卡罗搜刮,我们思量探索当前最佳候选者周围的本地搜刮空间,而不是仅从初始提案中采样。这使我们能够天生更有可能成功的新指令。我们将此变体称为迭代 APE。在每个阶段,我们都会评估一组指令并过滤掉得分较低的候选人。然后,LLM被要求天生与高分相似的新指令。我们在图 3 中提供了用于重采样的提示。图 6(右)表明,尽管这种方法提高了建议集 U 的团体质量,但最高得分的指令往往在更多阶段中保持不变。我们的结论是,迭代天生相对于第 3.1 小节中形貌的天生过程的相对简单性和有效性提供了边际改进。因此,除非另有阐明,我们默认利用不进行迭代搜刮的 APE。
大型语言模型是人类水平的提示工程师

    本节研究 APE 如何指导 LLM 实现所需的行为。我们从四个角度进行研究:零样本性能、少样本上下文学习性能、零样本头脑链推理和真实性。我们的实验表明,APE 可以找到提高任务体现的提示,其体现与人类编写的提示相同甚至更好。 APE 还常常提供一些富有洞察力的技巧,指导如何最好地提示可以成功转移到新任务的语言模型(参见第 4.3 节)。
指令归纳

    我们评估了 Honovich 等人(2022)提出的 24 个指令归纳任务中零样本和少样本上下文学习的有效性。这些任务涵盖语言明白的许多方面,从简单的短语布局到相似性和因果关系识别。我们在附录 B 中提供了每个任务的详细形貌。对于每个任务,我们从训练数据中采样五个输入输出对,并利用算法 1 选择最佳指令。然后,我们评估指令的质量通过实行 InstructGPT 3 上的指令。我们利用差别的随机种子重复实验五次,以报告平均值和尺度差。我们实验的确切模板可以在附录(表 5)中找到。

图 4:24 条指令归纳任务的零样本测试精度。 APE 在 24 项任务中的所有 24 项上都达到了人类水平或更好的体现。
    零样本学习,我们将我们的方法与两个基线进行比较:人类提示工程师 (Human)4 和 Honovich 等人 (2022) 提出的模型天生指令算法。该算法可以被以为是 APE 的贪心版本,没有搜刮和选择过程;因此,我们将其称为“贪心”。图 4 表现了 InstructGPT 利用人类指令和模型天生指令的零样本性能。我们的算法在每项任务上都优于“贪心”,并且在 24 项任务中的 24 项上达到了与人类相同或更好的体现。此外,图 1 中所有 24 项任务的四分位均值 (IQM)(Agarwal 等人,2021)表明,带有 InstructGPT 的 APE 的体现优于人类计划的提示,获得的 IQM 为 0.810,而人类为 0.749。我们在附录中总结了 APE 为每项任务选择的指令(表 12)。
    少样本上下文学习,我们在少样本上下文学习中评估了 APE 天生的指令,我们在上下文演示之前插入了指令。这些指令是根据零样本实行精度来选择的,我们将此设置体现为图 8 中的“指令 + 上下文”。如图 8 所示,添加指令可实现与尺度上下文相称或更好的测试性能。 24 项任务中的 21 项的情境学习体现。与直觉相反,添加押韵、大动物和第二个字母的上下文示例会侵害模型性能。我们推测这可能是因为所选指令过度适合零样本学习场景,因此在少样本环境下体现不佳。因此,我们尝试利用少样本实行精度作为选择指标。图 14 表现,除了 Rhymes 之外,少数样本指标的效果与零样本指标相称或略好。为了直观地了解正在发生的环境,我们在附录 C.1 中提供了定性分析。
BIGBENCH

    为了了解 APE 是否可以应用于更具挑战性的任务,我们提出并策划了 BIG-Bench 指令归纳(BBII),这是 21 个任务的干净且易于处理的子集,具有清晰的人工编写指令,可以应用于所有任务数据会合的示例。所选任务涵盖了语言明白的许多方面,包罗 BigBench-Hard 子会合的所有九个此类问题(Suzgun 等人,2022)。特别是,它包罗情感明白、上下文无关问答、阅读明白、总结、算法和各种推理任务(例如算术、常识、符号和其他逻辑推理任务)。我们在附录 B 中提供了任务的详细形貌和我们的选择尺度。对于每个任务,我们利用 InstructGPT 的反向模式天生来天生一组候选指令,并根据实行精度对指令进行排名。然后,我们在 InstructGPT 上实行选定的指令来计算测试集上的零样本性能,并将其与默认的人工提示进行比较。如附录表 6 所示,APE 在 21 项任务中的 17 项上取得了与默认人工提示相称或更好的性能。
零次头脑链

    头脑链推理已被证明可以显着提高LLM完成复杂推理任务的本领,例如解决需要多个步骤的数学问题。关于头脑链的早期作品(Nye 等人,2021;Betz 等人,2021;Wei 等人,2022b)利用微调或上下文学习来让LLM展示他们针对此类问题的工作。最近最有影响力的即时工程工作之一是发现(Kojima 等人,2022),LLM只需在前面加上“让我们一步一步思索”就可以给出思绪链。到LLM回应的开头。这种提示策略被称为 Zero-Shot-CoT,将 InstructGPT 在 MultiArith(Roy & Roth,2016)上的零射击性能从 17.7 提高到 78.7,并将 GSM8K(Cobbe 等人,2021)上的性能从 10.4 提高到 40.7。如表 7 所示,Kojima 等人 (2022) 发现他们的提示是至少九种人工计划的提示中体现最好的。
    我们利用 APE 在 Kojima 等人 (2022) 所利用的一系列任务中自动搜刮最佳答案前缀。我们优化此提示的方法受到 Zelikman 等人 (2022) 的启发。起首,我们天生利用 InstructGPT 天生的问题和推理步骤的数据集,其中包含“让我们一步一步思索”。然后,我们删除所有答案禁绝确的数据点。末了,我们利用 APE 找到以“Let’s”开头的提示,最大限度地提高这些准确推理步骤的可能性。有关用于提示天生和评估的模板,请参阅表 5。 APE 会发出提示“让我们一步一步地解决这个问题,以确保我们得到准确的答案。”天生的提示进一步将 MultiArith 上的性能从 78.7 提高到 82.0,将 GSM8K 上的性能从 40.7 提高到 43.0。我们信赖这个一般工作流程代表了 APE 的一个常见用例,其中提示工程师利用 APE 来优化现有模板的部分内容以提高性能。有关此提示在其他推理任务中的性能的详细信息,请参见图 10。
TRUTHFULQA

    我们将我们的方法应用于 TruthfulQA(Lin 等人,2022),看看 APE 天生的指令如何引导LLM天生差别风格的答案,并研究真实性和信息性之间的权衡。借用原始论文中的指标,我们利用 APE 来学习最大化三个指标的指令:真实性 (% True)、信息量 (% Info) 以及两者的组合 (%True + %Info)。 Lin 等人 (2022) 利用人工评估来评估模型性能,但他们发现其自动化指标在 90% 以上的环境下与人工推测一致。在我们的实验中,我们依靠他们微调的 GPT-judge 和 GPT-info 来评估分数。
    TruthfulQA 中的提示工程我们要夸大的是,TruthfulQA 数据集旨在在零样本设置中测试预训练模型。我们的效果与原始基准完全不兼容。因为我们利用一小部分问题和答案对作为训练演示来优化指令,所以我们的效果不是“真正的小样本学习”(Perez 等人,2021)。我们从 817 个问题中随机抽取了 100 个问题进行实际实验,形成训练演示 Dtrain。为了对提案集 U 进行采样,我们要求“反向”模型根据六个随机选择的演示对天生指令,类似于我们之前的实验。与指令归纳差别,在 TruthfulQA 中,我们的目标是找到一个最佳指令提示,该提示可以很好地解决健康、法律、政治和小说等所有 38 类问题。值得注意的是,我们天生的所有指令都非常通用,例如,“您将被问到一系列问题。对于每个问题,您必须复兴问题或拒绝复兴,在这种环境下,您必须声明您没有评论”,并且不包含数据会合的任何示例。
    真实性与信息性权衡,我们发现,APE 的体现优于人工计划的提示,仅由 InstructGPT (175B) 提出 200 个候选,如图 5 所示。我们将天生的提示与 Lin 等人 (2022) 的“资助”提示进行了比较。训练和测试性能如图5(a)-(b)所示。我们发现,在训练会合选择 200 个候选者中的前 10 个可以很好地推广到测试集。我们报告了这三个指标的前 10 条指令的平均性能。这个效果本身并不令人惊讶,正如 Askel 等人 (2021) 指出的那样,因为人类的基线是没有颠末仔细选择。然而,我们发现APE发现的指令可以达到非常高的真实性,并给出诸如“无可奉告”之类的答案,但这些答案提供的信息很少。我们利用我们的顶级候选者来进一步研究真实性和信息性之间的权衡。我们在图 5© 和图 5(d) 所示的真实性信息图上可视化跨三个指标的前 10 个建议样本。虽然 APE 在提供真实且信息丰富的答案方面达到了 40% 以上的准确率(而通过人类的“资助”提示,准确率达到 30%),但发现的指令往往针对这个 %true-%info 帕累托界限的两端。

图 5:TruthfulQA 任务中 APE 和“资助”(人类)提示的比较。 (a) 在 100 个训练示例中,准确答案 (% True)、信息丰富答案 (% Info) 或两者兼而有之 (% True + % Info) 的百分比。 (b) 717 个测试示例的相同数据。 © %True-%Info 前沿根据训练数据计算,其中包含每个指标的前 10 条指令。 (d) 测试数据的%True-%Info 界限。
定量分析

    在本节中,我们进行定量分析,以更好地明白我们方法的三个主要构成部分:提案分布、评分函数和迭代搜刮。此外,我们在附录 D 中进行了成天职析,以了解找到最佳提示的最具成本效益的方法。我们观察到,尽管每个标志的成本更高,但更大、更强盛的语言模型在天生最佳提示方面更具成本效益。
用于提案分配的 LLMS

    随着模型巨细的增加,提案质量如何厘革?为了了解模型巨细如何影响初始提案分布的质量,我们查抄了通过 OpenAI API 提供的八种差别模型5。为了评估提案分布的质量,我们为每个模型天生 250 条指令,并计算 50 个测试数据点的实行准确性。我们在图 6 (a) 中可视化了简单任务(即复数)的生存函数(测试精度大于特定阈值的指令的百分比)和测试精度直方图,并包含了更具挑战性任务的类似图(从附录中开始)(图 28)。正如两幅图所示(毫不奇怪),较大的模型往往比较小的模型产生更好的发起分布,颠末微调以遵循人类指令的模型也是云云。在简单任务上,最佳模型 InstructGPT (175B) 天生的所有指令都具有合理的测试精度。相比之下,一半的阐明是偏离主题的,并且在更具挑战性的任务上体现不佳。
用于选择的 LLMS

    在选择过程中提案质量重要吗?假如我们从LLM那边抽取更多的指导,那么我们就更有可能找到更好的指导。为了验证这一假设,我们将样本量从 4 增加到 128,并评估测试精度的厘革。图 7(左)表现了单调增加的趋势,而收益递减,因为通过 64 个指令样本实现了人类水平的性能。因此,我们选择 50 作为默认样本量。在此配置下,我们研究建议分布如何影响我们的算法选择的最佳指令的测试准确性。图 1(b) 表现,虽然小模型可能不太可能天生好的指令,但假如我们对充足的候选样本进行采样,它们仍然会天生一些好的指令。所以,通过运行我们的选择算法,我们仍然可以用小模型找到有盼望的指令,这表明白为什么我们的方法在所有八个模型中都优于贪心方法 Honovich 等人(2022)。

图 6:(左)通过测试实行准确性评估的差别规模模型的提案分布质量。 (右)迭代蒙特卡罗搜刮提高了每一轮候选指令的质量。

图 7:(左)随着我们增加候选指令的数量,测试最佳指令的实行。我们报告 6 个差别任务的平均值和尺度差。 (中)24 项任务的测试准确性与两个指标之间的 Spearman 相干性。 (右)测试利用 APE 和迭代 APE (APE (IT)) 选择的最佳指令的实行准确性。
    哪个评分功能更好?我们计算 24 个指令归纳任务的测试准确性和两个指标之间的相干性,以研究我们提出的指标有多好。我们在“前向”模式下利用 InstructGPT (175B) 为每个任务天生 250 条指令,并计算 10 个测试数据点的指标得分和测试准确性。我们可视化测试准确性和两个指标之间的 Spearman 相干性。图 7(中)表现实行精度与跨任务的测试性能更好地保持一致。因此,除非另有阐明,我们选择它作为默认指标。
迭代蒙特卡罗搜刮

    迭代搜刮是否可以提高指令质量?我们将“钝化”任务的生存函数和测试准确性直方图可视化,如图 6(右)所示,并在附录中添加了另外五个任务。生存图表现曲线随着轮次的增加而增加,这表明迭代搜刮确实会产生更高质量的提案集。然而,我们观察到进一步选拔轮次的回报递减,因为三轮后质量似乎稳定下来。
    我们需要迭代搜刮吗?我们在六项任务上比较了 APE 和迭代 APE6。如图 7 所示,迭代搜刮略微提高了 APE 体现不佳的任务的性能,但在其他任务上实现了相似的性能。这与我们的假设一致,即迭代搜刮对于天生良好初始 U 具有挑战性的任务最有效。
结论

    大型语言模型可以被视为实行由天然语言提示指定的程序的通用计算机。我们通过将其表述为黑盒优化问题来自动化提示工程过程,我们建议利用LLM指导的高效搜刮算法来解决该问题。我们的方法以最少的人力投入在各种任务上实现了人类水平的体现。由于最近的LLM展示了遵循人类指令的令人印象深刻的本领,我们期望许多将来的模型,包罗用于正式程序合成的模型,都具有天然语言界面。这项工作为控制和引导天生人工智能奠定了底子。
附录

A 野生的提示工程
近年来,具有天然语言界面的大型模型(包罗用于文本天生和图像合成的模型)的公共利用量不断增加。由于人类很难找到准确的提示,因此已经开辟了许多有关提示工程的指南以及资助提示发现的工具。除此之外,请参见:


  • https://blog.andrewcantino.com/blog/2021/04/21/prompt-engineering-tips-and-tricks/
  • https://techcrunch.com/2022/07/29/a-startup-is-charging-1-99-for-strings-of-text-to-feed-to-dall-e-2/
  • https://news.ycombinator.com/item?id=32943224
  • https://promptomania.com/stable-diffusion-prompt-builder/
  • https://huggingface.co/spaces/Gustavosta/MagicPrompt-Stable-Diffusion
在本文中,我们应用 APE 来天生有效的指令以指导 LLM,但只要可以计划适当的发起方法和评分函数,通用框架算法 1 就可以应用于指导具有天然语言界面的其他模型。
B 实施细节
表 1:Honovich 等人(2022)提出的 24 项指令诱导任务的详细形貌。为方便起见,此处复制了 Honovich 等人(2022)的原始表格。


表 2:BIG-Bench 指令归纳 (BBII) 的详细形貌,这是 21 项任务的干净且易于处理的子集,具有清晰的人工书面指令,可应用于数据会合的所有示例。


B.1 BIG-BENCH 指令归纳 (BBII)
选择过程步骤 1:BIG-Bench 包含大量差别质量水平的评估任务。例如,某些任务仅具有符合提交条件所需的最少示例数量,而其他任务可能缺乏适当的人工基线。因此,我们遵循 Suzgun 等人 (2022) 的方法,根据以下尺度获得一个干净且易于处理的子集。
表 3:用于创建 BIG-Bench 指令归纳 (BBII) 子集的过滤尺度。

尺度:JSON 任务。
丢弃的任务:抽象和推理语料库、bbq lite、概率私见、布尔表达式、com2sense、上下文定义对齐、convinceme、coqa 对话式问答、循环字母、多样化社会私见、动态计数、择要的真实性、推测子问题、中文性别敏感性、英文性别敏感性、高低游戏、长上下文集成、多步算术、穆斯林暴力私见、程序合成、卵白质相互作用位点、python 编程挑战、问答创建、根优化和游戏、自我意识、自我评估法庭、自我评估辅导、简单算术、拼字角逐、小队轮换、主谓一致、数独、禁忌、talkdown、文本导航游戏、测试集训练、真实问答、二十个问题、unqover、大话之网、集合和图形上的笔墨问题、好坏好坏。
尺度:没有子任务的任务。
丢弃的任务:抽象叙述明白、算术、作者验证、bbq lite json、因果关系、国际象棋状态跟踪、cifar10 分类、颜色、概念组合、conlang 翻译、cs 算法、初等数学问答、事实核查器、gem、目标步骤 wikihow、hhh 对齐、印度因果关系、相交几何、汉字 ascii、键值映射、语言游戏、语言映射、列表函数、逻辑推理、隐喻明白、微小奥秘问答、修改算术、多数据整理、多表情、天然指令、周期元素、物理、真实或卖弄文本、简单图灵概念、简单算术 json 子任务、简单的道德问题、奇怪的故事、符号表明、跟踪混洗对象、撤消排列、单位转换、单位表明、非天然情境学习。
尺度:任务至少包含 150 个具有输入输出对的示例。
丢弃的任务:分析蕴涵、自动调试、代码行形貌、代号、常见词素、崩溃开花、卑鄙的人工智能、西班牙语低温生物学、玄色幽默检测、表情符号电影、表情符号感情推测、经验判定、英语谚语、英语俄语谚语、蕴涵极性、印地语蕴涵极性、评估信息重要性、修辞手法检测、常识、GRE 阅读明白、人体器官感官、识别数学定理、识别奇怪的隐喻、隐含关系、国际音标 nli、反讽识别、已知未知数、逻辑参数、逻辑序列、数学归纳法、俄语误解、无意义的单词语法、新颖的概念、奇怪的一个、表格中的企鹅、波斯习语、短语相干性、物理直觉、物理问题、重复复制逻辑、改述、谜语感、科学新闻稿、句子歧义、相似性抽象、简单算术 json、简单算术 json 多项选择、简单算术多目标 json、简单文本编辑、充足的信息、自杀风险、瑞典语到德语谚语、什么是道。
尺度:任务包含报告的(平均)人工评分者或随机体现。
丢弃的任务:上下文参数知识冲突、印度英语毒性、俄语医学问题、parsinlu qa、斯瓦希里语英语谚语、tellmewhy、哪个 wiki 编辑。
尺度:任务是分类或利用准确匹配作为评估指标。
丢弃的任务:自动分类、少数镜头 nlg、印地语问答、国际音标字母转写、波兰序列标志、qa wikidata、上下文中的语义分析 sparc、语义分析蜘蛛、社交支持、主题谈天。
步骤 2:我们进行人工查抄,将剩余任务划分为以下三类。具体来说,Big-Bench 指令归纳 (BBII) 子集是我们在第 4.2 节中用于评估 APE 的子集。


  • BBII 子集:满意指令归纳格式的 Big Bench 任务子集:数据会合的每个示例都可以体现为问答对,所有示例都会合在可以通过人工指令清晰形貌的同一个问题上,并且任务 JSON 文件中有一个人工指令。
  • 格式无效:与指令归纳格式不匹配的任务:数据会合的每个示例都提出差别的问题,大概没有明确的人工指令。
  • 超出范围:超出本研究范围的任务:作者无法在 60 分钟内解决,大概需要专业知识。
表 4:用于创建 BIG-Bench 指令归纳 (BBII) 子集的过滤尺度。



C 其他效果
C.1 指令诱导
少样本语境学习 我们在少样本语境学习中评估了 APE 天生的指令,其中我们在语境演示之前插入指令。这些指令是根据零样本实行准确度选择的,我们在图 8 中将此设置体现为“指令 + 语境”。如图 8 所示,在 24 项任务中的 21 项中,添加指令可实现与尺度语境学习性能相称或更好的测试性能。
与直觉相反,为韵律、大动物和第二个字母添加语境示例会侵害模型性能。我们推测这可能是因为所选指令过度拟合零样本学习场景,因此在少样本环境下体现不佳。因此,我们尝试利用少样本实行准确度作为选择指标。图 14 表现,除了韵律之外,少样本指标实现的效果与零样本指标相称或略好。
为了直观地了解正在发生的事情,我们在下面提供了定性分析。
少量定性分析 当将指令和上下文提示联合起来时,我们发现押韵问题存在对抗性。表 8 表现,5 条过滤指令中有 4 条要求回应输入词。这些提案有效地破解了评估,测试准确率接近完善,因为每个单词都与自身押韵。然而,为这些指令添加上下文示例会导致指令(导致平凡的押韵)和上下文(导致非平凡的押韵)之间不一致,从而导致性能显着下降。假如我们根据少量指标对指令进行评分,则可以缓解这种性能下降,因为模型可以选择更一致的指令。

图 8:24 项指令诱导任务中的少样本上下文测试准确率。APE 提高了 24 项任务中的 21 项少样本上下文学习性能。
C.2 BIG-BENCH 指令归纳
我们利用 APE 为 BIG-Bench 指令归纳 (BBII) 中的任务天生新提示。与人类提示相比,APE 天生的提示在 21 项任务中的 17 项上提高或匹配零样本性能。我们报告了 Srivastava 等人 (2022) 中定义的尺度化首选指标。根据此指标,100 分对应于人类专家体现,0 分对应于随机推测。请注意,假如模型在多项选择任务上的体现比随机推测差,则其得分可能低于 0。

图 9:APE 在 21 项 BIG-Bench 指令归纳任务中的 17 项上提高或匹配了尺度化零样本性能。
表 6:21 项 BIG-Bench 指令归纳任务中的零样本尺度化测试性能。APE 在 21 项任务中的 17 项上提高或匹配了性能。

C.3 零样本头脑
链推理我们利用 APE 发现了一个比 Kojima 等人 (2022) 的“让我们一步一步思索”更好的头脑链 (CoT) 提示。APE 找到了一个通用提示“让我们一步一步地解决这个问题,以确保我们有准确的答案。”与原始 CoT 提示相比,它能够将 text-davinci-002 在 MultiArith Roy & Roth (2016) 上的零样本 CoT 性能从 78.7 提高到 82.0,将 GSM8K Cobbe 等人 (2021) 上的零样本 CoT 性能从 40.7 提高到 43.0。我们在图 10 中包含了这个新的 APE CoT 提示在 12 个任务上的完备效果。

图 10:APE 发现提示“让我们一步一步地解决这个问题,以确保我们有准确的答案。”在 Kojima 等人 (2022) 的 12 项任务上的体现。我们从原始论文中收集了一个 CoT 数据集并过滤掉禁绝确的答案。然后我们利用 APE 来优化 CoT 提示。我们在 6/12 项任务上提高了性能,在 4/12 项任务上几乎与人类性能相匹配。我们假设 Shuffled Objects 和 Last Letter 很难用一般提示进行优化。
表 7:利用 InstructGPT (text-davinci-002) 在 MultiArith (Roy & Roth, 2016) 数据集上的零样本头脑链性能。模板 (*1) 由 Kojima 等人 (2022) 提出,用于实现大型语言模型的零样本头脑链推理,而模板 (*2) 和 (*3) 分别由 Ahn 等人 (2022) 和 Reynolds & McDonell (2021) 利用。

C.4 定量分析
我们可以利用其他 LLM 进行指令发起吗?我们研究了其他用于指令天生的 LLM,包罗具有前向天生本领的 LLM(OPT-175B(Zhang 等人,2022 年)、OpenAI Codex(Chen 等人,2021 年))和具有反向天生本领的 LLM(INT4 量化 GLM-130B(Zeng 等人,2022 年))。我们在零样本和小样本设置 6 中从指令感应中选择的六个任务上评估了它们的性能。图 15 和 16 表现,除了钝化之外,InstructGPT 实现了最佳性能,与其他两个前向天生模型相比,它的体现不佳。风趣的是,尽管 Codex 和 OPT 的指令发起模型与 InstructGPT 评分模型差别,但它们的性能几乎与 InstructGPT 相匹配。但是,我们观察到 OPT 天生的一些指令包含上下文示例(表 13),这使得它们更接近少样本而非零样本。相比之下,GLM 的零样本性能最差,因为其填充功能颠末训练可以天生非常短的文本,如表 15 所示。元提示有多重要?在我们的实验中,我们观察到指令天生的元提示可以显著影响所发起指令的分布。为了研究它如何影响最终性能,我们尝试利用我们的 TruthfulQA 模板而不是反向天生模板(图 21、22)。我们发现元提示模板有所差别,它提高了某些任务的性能,同时侵害了其他任务的性能。值得注意的是,成员资格的准确性可以凌驾来自正向天生的指令,而原始模板无法提出好的指令。我们将元提示工程的探索留给将来的工作,以获得更好的发起分布。天生的指令有多可转移?我们观察了 APE 是否可用于指导不参与指令天生和选择过程的模型。如图 17 所示,当我们利用来自 InstructGPT 的指令来控制 GPT-3 模型时,性能会显著下降,反之亦然。这种性能下降可以通过人工编写的指令来缓解。
这表明评分模型和实行模型之间的一致性至关重要,InstructGPT 天生的指令最适合 InstructGPT 本身,但不能很好地转移到 GPT-3 等其他模型。相比之下,GPT-3 天生的指令可以非常好地控制 GPT-3,其性能远远优于 InstructGPT 指令和人类指令。虽然 GPT-3 不能很好地遵循人类指令,但我们表明,尽管不直观,它仍然可以天生非常适合自己的提示,从而产生所需的行为。我们在表 16 中提供了天生的提示。

图 11:APE 在八个 OpenAI 模型中的准确度-成本界限。分配给每个任务的颜色由 text-davinci-002 准确度四分位数决定。我们测量了各种模型巨细用于天生指令的令牌数量。我们还测量了在 InstructGPT(即 text-davinci-002)上对十个验证输入输出对进行 250 条天生指令评分所利用的令牌数量。我们通过将每种模型类型斲丧的令牌数量与制止 2022 年 9 月 1 日的 OpenAI API 费率相乘并相加来计算每个任务的总成本(美元/1000 个令牌:ada – 0.0004、babbage – 0.0005、curie – 0.0020、davinci – 0.0200)。与直觉相反,较小的模型更昂贵。这是因为成本中最重要的部分是利用 InstructGPT 进行评分,它会随着天生的指令长度而扩展。未经人工指令训练的小型模型往往会天生较长的指令,达到预定义的最大限定 50 个标志。利用人工指令训练的大型模型作为指令天生器最具成本效益,因为它们利用较短的指令显著降低了评分成本。

图 12:八个 OpenAI 模型和 24 个 NLP 任务中天生的提示的准确度-长度界限。未经人工指令训练的模型往往会达到我们允许天生的预定义的最大标志数,而更大、更一致的 LLM 会输出更轻便的指令。更强盛的 LLM 在指令长度和准确度的界限上占据主导地位,我们将其视为将上下文高效压缩为指令的本领。

图 13:与利用五个上下文示例相比,APE 从 InstructGPT 中找到的指令具有更高的标志效率。我们观察到,示例指令的效率比上下文学习高出五倍,以实现相称的性能。大概,我们可以通过预先添加少量标志作为指令的开销来增强上下文学习本领。
E 天生的指令表 8:APE 选择的具有零次和几次测试性能的 Rhyme 指令。

表 9:根据 717 个测试示例计算得出的 APE 选出的 Top 10 真实 QA 指令,测试效果为真(% True)、信息量大(% Info)或两者兼有(% True + % Info)。指令的选择基于训练效果为真(% True)。


表 10:根据 717 个测试示例计算得出的 APE 选定的 10 条最佳 TruthfulQA 指令,测试效果为真(% True)、信息量大(% Info)或两者兼有(% True + % Info)。指令的选择基于训练信息量(% Info)。


表 11:根据 717 个测试示例计算得出的 APE 选定的 10 条真 QA 指令,测试效果为真 (% True)、信息量 (% Info) 或两者兼有 (% True + % Info)。指令的选择基于训练效果 (% True + % Info)。



表 12:APE 针对指令归纳基准中的 24 个任务天生的最佳零样本测试准确率指令



表 13:在六个选定任务中利用 APE 测试最佳 OPT-175B 指令的准确率


表 14:在六个选定任务中利用 APE 对最佳 OpenAI Codex 指令进行测试的准确率

表 15:在六个选定任务下利用 APE 测试最佳 GLM-130B 指令的准确率

表 16:在六个选定任务下,最佳 APE GPT-3 指令对自身进行提示的测试准确率


F 附加可视化 可视化超参数
当我们调整 APE 的超参数(包罗每个演示天生的提案数量和每个随机种子的演示数量)时,我们发现了更适合指令感应的超参数。我们在 5 项任务上重新评估了 APE,在 24 项指令感应任务中都给出了人类水平的体现。下面的附加可视化基于 APE 的上一次迭代,该迭代仅在 24 项任务中的 19 项上达到人类水平。这 5 项任务的平均测试准确度差别总结在表 17 中。
表 17:APE 超参数调整对指令感应的改进


图 14:在 24 个指令感应任务中利用少量实行准确度选择的最佳性能指令的少量上下文测试准确度。

图 15:6 个指令感应任务的零样本测试准确率。我们比较了差别模型提出指令的本领,并利用 InstructGPT 进行选择和实行。

图 16:6 个指令诱导任务的少样本测试准确率。我们比较了差别模型提出指令的本领,并利用 InstructGPT 进行选择和实行。

图 17:6 条指令归纳任务的零样本测试准确率。我们研究了 APE 指令向指令天生和选择过程中未涉及的差别模型的迁移本领。

图 18:6 个指令感应任务中体现最佳的指令的零样本测试准确率。我们研究了 APE 指令向指令天生和选择过程中未涉及的差别模型的迁移本领。

图 19:6 个指令诱导任务的少样本测试准确率。我们研究了 APE 指令向指令天生和选择过程中未涉及的差别模型的迁移本领。

图 20:在 6 个指令感应任务中,体现最佳的指令的少样本测试准确率。我们研究了 APE 指令向指令天生和选择过程中未涉及的差别模型的迁移本领。

图 23:利用八种差别的 LLM 对 24 个指令感应任务进行零样本测试准确率。

图 21:6 个指令归纳任务的零样本测试准确率。我们比较了用于提出指令的差别模板的性能。插入模板 1 改编自指令归纳,而插入模板 2 则来自 TruthfulQA。

图 22:6 个指令归纳任务的少样本测试准确率。我们比较了用于提出指令的差别模板的性能。插入模板 1 取自指令归纳,而插入模板 2 取自 TruthfulQA。

图 24:利用两种差别的指标和两种差别的 LLM 模型对 24 个指令感应任务进行零样本测试准确率。

图 25:利用两种差别的指标和两种差别的 LLM 模型,在 24 项指令感应任务上进行无指导的上下文学习。

图 26:利用两种差别的指标和两种差别的 LLM 模型,对 24 项指令感应任务进行上下文学习指导的测试准确性。

图 27:简单任务(即复数化)的生存函数和测试准确坦白方图

图 28:生存函数和具有挑战性的任务的测试准确坦白方图(即 Start With)

图 29:迭代蒙特卡罗搜刮提高了每轮指令候选的质量。任务:反义词。

图 30:迭代蒙特卡洛搜刮在每一轮中提高了指令候选的质量。任务:原因选择。

图 31:迭代蒙特卡罗搜刮在每一轮中提高了指令候选的质量。任务:被动化。

图 32:迭代蒙特卡罗搜刮在每一轮中提高了指令候选的质量。任务:第二封信。

图 33:迭代蒙特卡罗搜刮在每一轮中提高了指令候选的质量。任务:感情。

图 34:迭代蒙特卡罗搜刮在每一轮中提高了指令候选的质量。任务:翻译 en-fr。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

万万哇

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表