AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


提示工程最新技巧:限制模型输出长度能够提高模型准确性
发布日期:2024-08-09 08:54:27 浏览次数: 1721


语言模型(LLMs)在推理领域展现了非凡的能力。随着它们的广泛使用,一个新的应用领域——提示工程(prompt engineering)——也随之兴起。事实上,与这些模型的互动是通过使用提示进行的,因此我们需要提示工程来优化输入给模型的提示

提示工程中最引人注目的技术之一就是思维链(CoT);这种技术提高了推理问题的正确性,并解释了模型是如何得出解决方案的中间过程(或者它在推理中犯了什么错误)。CoT是一种通过中间步骤来提示模型得出解决方案的技术(而不是直接生成结果)。

这项技术一经面世就收到了很多人的欢迎,因为它可以在零样本(zero-shot)场景中使用。仅仅通过在提示中添加“让我们一步一步地思考”,我么就可以迫使模型进行逐步推理,通过这种方式获得的结果就会显著改善。

由于增加了中间过程的输出,所以模型的输出会比较冗长,并且系统延迟会大幅度增加。这是由模型的自回归性质导致的,因为它一次输出一个词。这种额外的计算成本和时间延迟在模型需要与用户互动时可能会降低用户使用的概率。

正如你所见,当今的模型的输出变得越来越冗长。过去的回答通常较短,而新的大语言模型则用于生成越来越长的输出。在某种程度上,我们期望模型生成更详细的结果,因为理论上,这些响应总是更完整,能更好地剖析出问题的本质。但有些冗长的输出会让我们感觉没有必要,尤其是在问题需要简短回答时。对于用户来说,过于冗长的回答可能令人沮丧,尤其是在多轮问题场景中。此外,较长的回答并不总是更好。它往往充满了离题、无关的细节,以及更大的幻觉风险。

正常来说,推理链越长,中间环节出错的风险就越大。错误的中间环节对LLM来说可能难以纠正(也是因为其自回归性质)。

LLM响应的长度取决于什么?

生成响应的长度取决于多个因素。主要因素包括:问题的内容、模型的架构、模型的大小、预处理和后处理步骤、提示工程技术,以及提示中的上下文。

一般而言,生成时间会随着生成词的数量的增加而增加。此外,模型的规模越大,生成相同长度内容所需的时间就越长(一个70B参数的模型生成相同数量的token所需的时间比7B参数的模型要更长)。

CoT增加了模型的生成时间,因为中间推理步骤也必须生成。更多的token数量意味着每个响应的生成时间更长。

到目前为止,大多数研究论文忽略了效率,而是关注准确性,因此我们没有考虑效率的指标。最新的一篇论文(Concise Thoughts: Impact of Output Length on LLM Reasoning and Cost)提出用三个指标来同时评估模型的准确性和简洁性:

硬性-k简洁准确性:它衡量输出正确且不超过某个长度k的比例。

软性-k简洁准确性类似于前一个,但对超过某个长度的正确答案进行惩罚。

一致性简洁准确性前述指标的推广,考虑了所有输出长度的变化。

现在我们有了一种同时测量准确性和简洁性的方法,我们可以尝试在使用CoT时找到限制LLM推理步骤的方法。论文作者建议在CoT中明确提出这个要求,以强制模型压缩其推理。因此,这是在提示中添加“并将答案长度限制在n个词以内”的零样本CoT提示(n为所需的词数)。

一旦你有一个强迫模型更简洁地回应,你可能会想知道这是否会影响模型的准确性。在研究中,他们分析了5个预训练模型(Vicuna-13B,Falcon 7B和40B,Llama2 7B和70B)。然后,他们在GSM8K基准数据集(最广泛使用的推理问题数据集)上测试它们,并尝试不同的n值(15、30、45、60、100)。

结果表明,强迫使用较少的tokens显著减少了生成时间(这当然是预料之中的,因为模型生成的输出tokens要少得多)。如果模型输出不正确,这个结果就毫无意义(我们只能得到一个快速但错误的答案)。令人惊讶的是,对于像Llama2-70B和Vicuna-13B这样的模型,增加长度约束反而提高了准确性(这在Falcon 7B和40B上并非如此)。

作者认为这种变异性取决于模型内在的因素,如模型大小及其训练方式。较小的模型似乎从这种方法中受益较少(事实上它们表现更差)。此外,Llama2-70B(受益最大的那个)是在一个庞大且更为多样的数据集上训练的。

这些结果告诉我们,即使使用受限的CoT,有些正确答案仍然会超过指定的长度上限。这也可能是因为一些答案仍然需要更多的推理步骤才能回答,不能被压缩到某个阈值以下。或者模型在给定其冗长性质的情况下难以满足严格的限制。

LLMs本质上是冗长的,往往会产生不必要的长回答。一方面,现代LLMs写出的答案更丰富和完整。另一方面,感兴趣的答案被埋在不必要的细节中,你必须等到生成结束,并且有相当的延迟。推理链在解决数学问题时非常有用。由于自回归性质,这些链可能非常长,并且LLMs无法纠正错误的中间步骤。此外,一个LLM也可能在一个推理链的生成中陷入困境。因此,强迫模型遵循某个长度具有一定吸引力。

强迫CoT到一定的输出长度不仅不会减少推理能力,反而似乎提高了一些模型的性能。为什么会发生这种情况以及为什么它对更大的模型效果更好,这还不完全清楚。另一方面,是否与幻觉有关(生成的tokens越多,风险当然越大)也是下一步需要进一步深入分析的问题。


53AI,企业落地应用大模型首选服务商

产品:大模型应用平台+智能体定制开发+落地咨询服务

承诺:先做场景POC验证,看到效果再签署服务协议。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

与创始人交个朋友

回到顶部

 
扫码咨询