本文将详细介绍一个LLM驱动型应用程序的成本节约架构FrugalGPT。
大型语言模型为计算机科学开辟了一个新的前沿;然而,它们(截至2024年)的运营成本远远高于计算机科学中的其他任何产品。对于希望将运营成本降至最低的公司来说,这是一个严重的问题。论文《FrugalGPT:如何在降低成本和提高性能的同时使用大型语言模型》(https://arxiv.org/abs/2305.05176)介绍了一种在保持质量的同时显著降低运营成本的框架。
如何衡量LLM的成本
当前,已经存在多种方法可以确定LLM的运营成本(电力使用、计算成本等);但是,如果您使用第三方LLM(LLM-as-a-service),他们通常会根据您使用的词元(token)向您收费。不同的供应商(OpenAI、Anthropic、Cohere等)使用不同的词元计数方式,但为了简单起见,我们将考虑基于LLM处理的词元数量的成本。
这种类型的框架最重要的部分是不同模型的成本不同。这篇论文的作者们构造了一个方便的表格,表格数据可以很容易地展现成本间的差异,而且这些差异是非常显著的。例如,在该表中,AI21的输出词元的成本比GPT-4的高出一个数量级!
本表数据来自上述FrugalGPT论文
作为成本优化的一部分,我们总是需要找到一种方法来优化答案质量,同时还要尽可能将成本降至最低。通常,成本较高的模型往往是性能较高的模型,能够给出比成本较低的模型更高质量的答案。模型间的一般关系如下图所示;其中,FrugalGPT的性能以红色明显展示在图表的顶部位置。
注意,论文中的图1c(即上图)基于HEADLINES数据集创建,其根据LLM准确回答问题的频率对各种LLM进行了比较。
级联LLMS实现质量最优化
利用模型之间的巨大成本差异,研究人员推出的FrugalGPT系统能够依赖于一系列的LLM实现给用户提供答案。简单地说,用户查询从最便宜的LLM开始;如果答案足够好,则查询结束(返回答案)。但是,如果答案不够好,则将查询传递给下一个最便宜的LLM。
研究人员使用了以下逻辑:如果一个价格较低的模型答错了一个问题,那么价格较高的模型很可能会给出正确的答案。因此,假设价格越贵质量就越高,为了最大限度地降低成本,规定模型链的订购顺序是从最便宜到最昂贵。
论文中的图2e展示了LLM级联式示意图。
很明显,图中展示的这种设置架构依赖于确定答案何时足够好,何时不够好。为了解决这个问题,作者创建了一个DistilBERT模型,该模型将接受问题和答案,然后为答案打分。由于DistilBERT模型比序列中的其他模型小得多(指数量级),因此与其他模型相比,运行它的成本几乎可以忽略不计。
比查询最佳LLM更好的平均质量
人们可能会自然而然地问:如果质量是最重要的,那么,为什么不查询最好的LLM并研究如何降低运行最好LLM的成本呢?
当这篇论文发表时,GPT-4是作者们发现的最好的LLM;但是,GPT-4并不总是比FrugalGPT系统给出更好的答案!(眼尖的读者会将其视为本文前面的成本相对于性能图表的一部分)论文作者们推测,正如最有能力的人并不总是给出正确的答案一样,最复杂的模型也不会。因此,通过使用DistilBERT对答案进行过滤,您可以删除任何不符合标准的答案,并增加获得优秀答案的几率。
论文中的图5a显示了FrugalGPT优于GPT-4的情形。
因此,这个系统不仅可以降低成本,而且可以提高质量,而不仅仅是使用最好的LLM!
继续研究节省成本问题
这篇论文的结果令人着迷。对我来说,这提出了一个问题,即我们如何在不必投资于进一步的模型优化的情况下进一步节省成本。
实现这样的可能性的一种办法是将所有模型答案缓存在向量数据库中,然后在开始LLM级联之前进行相似性搜索以确定缓存中的答案是否有效。这将通过用相对较低成本的查询和相似性操作代替昂贵的LLM操作来显著降低成本。
此外,这会让你怀疑过时的模型是否仍然值得进行成本优化,就像你可以降低它们的每个词元的成本一样,它们仍然可以在LLM级联上创造价值。同样,这里的关键问题是,在什么时候通过在链上添加新的LLM来获得递减回报。
有待进一步研究的问题
随着世界创造出更多的LLM,我们也越来越多地构建使用它们的系统,我们希望找到更加节约成本的方法来运行它们。本文讨论的FrugalGPT论文为未来的开发人员创建了一个强大的框架,让我非常想知道这个框架能走多远。
在我看来,这个框架非常适合于基于不同用户的答案统一型的一般查询,例如导师型LLM。然而,对于答案因用户而异的使用场景,例如充当客户服务代理的LLM,评分系统必须知道LLM与谁交谈。
总之,找到一个能为用户特定交互而又节约成本的框架未来将是非常重要的。
主要参考文献
[1] Chen, L.,等人,FrugalGPT: How to Use Large Language Models While Reducing Cost and Improving Performance (2023),arXiv。
译者介绍
朱先忠,51CTO社区编辑,51CTO专家博客、讲师,潍坊一所高校计算机教师,自由编程界老兵一枚。
原文标题:FrugalGPT and Reducing LLM Operating Costs,作者:Matthew Gunton
链接:https://towardsdatascience.com/frugalgpt-and-reducing-llm-operating-costs-ff1a6428bf96。