企业微信
悟空CRM  >   公司新闻  >  比HuggingFace快24倍!伯克利神级LLM推理系统开源,碾压SOTA,让GPU砍半

比HuggingFace快24倍!伯克利神级LLM推理系统开源,碾压SOTA,让GPU砍半

悟空软件 阅读次数:813 次浏览

过去2个月,来自UC伯克利的研究人员给大语言模型们安排了一个擂台——Chatbot Arena。

GPT-4等大语言模型玩家打起了「排位赛」,通过随机battle,根据Elo得分来排名。

这一过程中,每当一个用户访问并使用网站,就需要同时让两个不同的模型跑起来。

他们是如何做到的?

这不,就在今天,UC伯克利重磅开源了世界最快LLM推理和服务系统vLLM。

简之,vLLM是一个开源的LLM推理和服务引擎。它利用了全新的注意力算法「PagedAttention」,有效地管理注意力键和值。

配备全新算法的vLLM,重新定义了LLM服务的最新技术水平:

与HuggingFace Transformers相比,它提供高达24倍的吞吐量,而无需进行任何模型架构更改。

值得一提的是,「小羊驼」Vicuna在demo中用到的就是FastChat和vLLM的一个集成。

正如研究者所称,vLLM最大的优势在于——提供易用、快速、便宜的LLM服务。

这意味着,未来,即使对于像LMSYS这样计算资源有限的小型研究团队也能轻松部署自己的LLM服务。

项目地址:github.com/vllm-project

现在,所有人可以在GitHub仓库中使用一个命令尝试vLLM了。论文随后也会发布。

性能全面碾压SOTA

今天,这个由UC伯克利创立的开放研究组织LMSYS介绍道:

「一起来见证vLLM:Chatbot Arena背后的秘密武器。FastChat-vLLM的集成使LMSYS使用的GPU数量减少了一半,同时每天平均提供3万次请求。」

vLLM的性能具体如何?

UC伯克利团队将vLLM的吞吐量与最受欢迎的LLM库HuggingFace Transformers(HF),以及HuggingFace文本生成推理(TGI),先前的最新技术水平进行了比较。

团队在两个设置中进行评估:在NVIDIA A10G GPU上运行LLaMA-7B模型,在NVIDIA A100 GPU(40GB)上运行LLaMA-13B模型。

然后,研究人员从ShareGPT数据集中抽样请求的输入/输出长度。

在实验中,vLLM的吞吐量比HF高达24倍,并且比TGI高达3.5倍。

在每个请求只需要一个输出完成时的服务吞吐量。vLLM比HF的吞吐量高出14倍-24倍,比TGI的吞吐量高出2.2倍-2.5倍

在每个请求需要3个并行输出完成时的服务吞吐量。vLLM比HF的吞吐量高出8.5倍-15倍,比TGI的吞吐量高出3.3倍-3.5倍

秘密武器:PagedAttention

在vLLM中,团队发现LLM服务的性能受到内存的限制。

在自回归解码过程中,LLM的所有输入token都会生成注意力键(key)和值(value)张量,并且这些张量被保留在GPU内存中以生成下一个token。

这些缓存的键和值张量通常被称为KV缓存。KV缓存具有以下特点:

1. 内存占用大:在LLaMA-13B中,单个序列的KV缓存占用高达1.7GB的内存。

2. 动态化:其大小取决于序列长度,而序列长度高度易变,且不可预测。

因此,有效管理KV缓存是一个重大挑战。对此,研究团队发现现有系统由于碎片化和过度保留而浪费了60%至80%的内存。

用团队的导师Joey Gonzalez的一句话来讲:GPU内存碎片化=慢。

为了解决这个问题,团队引入了PagedAttention,一种受到操作系统中虚拟内存和分页经典概念启发的注意力算法。

与传统的注意力算法不同,PagedAttention允许在非连续的内存空间中存储连续的键和值。

具体来说,PagedAttention将每个序列的KV缓存分为若干块,每个块包含固定数量token的键和值。在注意力计算过程中,PagedAttention内核能够高效地识别和提取这些块。

动图封面
 

PagedAttention:KV缓存被分割成块,这些块在内存中不需要连续

由于这些块在内存中不需要连续,因此也就可以像操作系统的虚拟内存一样,以更灵活的方式管理键和值——将块看作页,token看作字节,序列看作进程。

序列的连续逻辑块通过块表映射到非连续的物理块。随着生成新的token,物理块会按需进行分配。

动图封面
 

使用PagedAttention的请求生成过程示例

PagedAttention将内存浪费控制在了序列的最后一个块中。

在实践中,这带来了接近最优的内存使用——仅有不到4%的浪费。

而这种内存效率的提升,能让系统将更多的序列进行批处理,提高GPU利用率,从而显著提高吞吐量。

此外,PagedAttention还具有另一个关键优势:高效的内存共享。

比如在并行采样中,就能从相同的提示生成多个输出序列。在这种情况下,提示的计算和内存可以在输出序列之间共享。

动图封面
 

并行采样的示例

PagedAttention通过块表自然地实现了内存共享。

类似于进程共享物理页的方式,PagedAttention中的不同序列可以通过将它们的逻辑块映射到相同的物理块来共享块。

为了确保安全,PagedAttention会跟踪物理块的引用计数,并实现了写时复制机制。

动图封面
 

采样多个输出的请求示例生成过程

PagedAttention的内存共享极大减少了复杂采样算法(如并行采样和束搜索)的内存开销,将它们的内存使用量减少了高达55%。这可以将吞吐量提高多达2.2倍。

总结而言,PagedAttention是vLLM的核心技术,它是LLM推断和服务的引擎,支持各种模型,具有高性能和易于使用的界面。

GitHub上,团队也介绍了vLLM能够无缝支持的HuggingFace模型,包括以下架构:

- GPT-2(gpt2、gpt2-xl等)

- GPTNeoX(EleutherAI/gpt-neox-20b、databricks/dolly-v2-12b、stabilityai/stablelm-tuned-alpha-7b等)

- LLaMA(lmsys/vicuna-13b-v1.3、young-geng/koala、openlm-research/open_llama_13b等)

- OPT(facebook/opt-66b、facebook/opt-iml-max-30b等)

小羊驼和排位赛的「幕后英雄」

4月初,UC伯克利学者联手UCSD、CMU等,最先推出了一个开源全新模型——130亿参数的Vicuna,俗称「小羊驼」。

从那时起,Vicuna已在Chatbot Arena为数百万用户提供服务。

最初,LMSYS的FastChat采用基于HF Transformers的服务后端来提供聊天demo。

但随着demo变得越来越受欢迎,峰值流量猛增了好几倍,而HF后端也因此成了一个重大的瓶颈。

为了解决这一挑战,LMSYS与vLLM团队紧密合作,全力开发出了全新的FastChat-vLLM集成——通过将vLLM作为新的后端,来满足不断增长的需求(最多增加5倍的流量)。

根据LMSYS内部微基准测试的结果,vLLM服务后端可以实现比初始HF后端高出30倍的吞吐量。

4月-5月期间,Chatbot Arena的后端已经部落了FastChat-vLLM的集成。实际上,有超过一半的Chatbot Arena请求都使用FastChat-vLLM集成服务的

自4月中旬以来,最受欢迎的语言模型,如Vicuna、Koala和LLaMA,都已成功使用FastChat-vLLM集成提供服务。

FastChat作为多模型聊天服务前端,vLLM作为推理后端,LMSYS能够利用有限数量的GPU(学校赞助的),以高吞吐量和低延迟为数百万用户提供Vicuna服务。

现在,LMSYS正在将vLLM的使用扩展到更多的模型,包括Databricks Dolly、LAION的OpenAsssiant和Stability AI的StableLM等。

vLLM使用教程

使用以下命令安装vLLM(另可查看安装指南了解更多信息):

$ pip install vllm

vLLM可用于离线推理和在线服务。要使用vLLM进行离线推理,你可以导入vLLM并在Python脚本中使用LLM类:

from vllm import LLMprompts = ["Hello, my name is", "The capital of France is"]  # Sample prompts.

要使用vLLM进行在线服务,你可以通过以下方式启动与OpenAI API兼容的服务器:

$ python -m vllm.entrypoints.openai.api_server --model lmsys/vicuna-7b-v1.3

你可以使用与OpenAI API相同的格式查询服务器:

$ curl http://localhost:8000/v1/completions \-H "Content-Type: application/json" \-d '{

有关使用vLLM的更多方法,请查看快速入门指南:

vllm.readthedocs.io/en/

悟空CRM产品更多介绍:www.5kcrm.com

相关内容

CRM在商业中的使用有哪些?

CRM在商业中的使用有哪些?CRM在商业当中使用得比较广泛,涵盖的领域也比较多,所以,很多人都希望可以知道它在商业当中具体被用在哪些方面,那么,CRM在商业中的使用具体体现在哪些方面呢?接下来和悟空CRM一起来看看答案。1、销售管理。CRM可以被用在收集、分类、评分和分配销售线索,帮助销售人员优先关注最有可能成为成交的潜在客户,同时,它的销售流程也可以实现自动化,还能够预测和进行绩效管理。2、市场
相关文章

客户服务系统是什么?有什么重要性?

客户服务系统相信很多企业管理者都不会觉得陌生,但是,他们往往对这个系统的相关情况也不熟悉,所以,他们会问:客户服务系统是什么?有什么重要性呢?下面就和悟空CRM一起来了解这两个问题的答案。客户服务系统是什么客户服务系统是一种用在管理和优化企业以及客户之间互动的技术解决方案,这类型的解决方案包含有很多工具和程序,作用在于能够让客户体验得到提升,也能够让客户满意度增加,除此以外,它还能够让企业的运营效
相关文章

本地化部署CRM软件有哪些厂家?为什么选择悟空CRM?

本地化部署CRM软件的好处在于它可以在企业自己的服务器上运行和使用,并不需要在云服务提供商的服务器上面使用,这样就能够确保数据安全性,也能够达到企业更好控制数据的效果,所以,很多大型企业都会考虑使用这样的软件满足企业的管理需求。那么,本地化部署CRM软件有哪些厂家呢?为什么选择悟空CRM呢?下面就一起来看看答案。本地化部署CRM软件有哪些厂家1、悟空CRM。悟空CRM相信很多国内企业管理者都听说过
相关文章

解码神器:诉讼案件管理工具的功能与作用探析

当我们面对复杂的法律纠纷和冗长的诉讼流程时,一款高效的诉讼案件管理工具就如同一盏明灯,为我们照亮前行的道路。那么,这样的工具究竟有何神通广大之处呢?让我们一起揭秘其功能与作用。1. 组织与跟踪案件信息就像你的个人助手一样,诉讼案件管理工具能帮你整理所有的案件细节。从起诉状到判决书,从证人名单到法庭日期,所有重要信息都能一目了然地存储和更新,确保你不会错过任何关键步骤。2. 提升效率与准确性传统的手
相关文章

本地化部署CRM软件与SaaS化CRM的优缺点是什么?

很多企业在选择crm系统时候,往往会因为不知道自己应该选择本地化CRM软件还是Saas化CRM而烦恼,所以,他们希望能够知道二者的优缺点是怎样的。通过了解优缺点来判断哪一种系统更适合自己选择。那么,本地化部署CRM软件与SaaS化CRM的优缺点是什么?下面和小编一起来看看答案。本地化部署CRM软件与SaaS化CRM的优缺点本地化部署CRM软件的优缺点优点。本地化部署CRM软件的有点在于它的相关数据
相关文章

主流客户服务系统(可免费试用),腾讯使用的品牌

现在是数字化转型的时代,企业对客户服务系统也比较依赖,他们在选择这类型的系统时候都会考虑一些能够帮助提升客户体验、优化内部管理流程的大型系统,在面对市场上众多的系统时候,他们认为选择可免费试用的系统能够让自己更准确知道所选择的系统如何。那么,主流客户服务系统(可免费试用),腾讯使用的品牌到底是哪个呢?下面来看看答案。在众多的主流客户服务系统(可免费试用)当中,悟空CRM凭借着自身卓越的功能以及优秀
相关文章

客户CRM管理系统选型指南:主流工具哪家好?

对于企业管理者而言,选择到合适的客户CRM管理系统能够帮助优化企业销售、市场营销以及服务流程,它的重要性不言而喻,但是,面对市场上众多的客户CRM管理系统时候,很多企业管理者往往不知道自己到底应该选择什么样的产品才能够满足自己的企业CRM管理需求。那么,客户CRM管理系统选型指南是怎样的?主流工具哪家好呢?下面就一起来做了解。客户CRM管理系统选型指南1、功能需求。选择客户CRM管理系统时候,首先
相关文章

本地化部署CRM软件安全性如何?哪家品牌好?

有很多企业管理者都会结合自己企业的管理需求而选择CRM软件满足自己企业的仓储管理需求,有的人表示:自己在了解本地化部署CRM时候,得知这种部署方式是比较受关注的一种部署方式。但是,他们也会因为担心这种部署方式的安全性而烦恼不已。那么,本地化部署CRM软件安全性如何呢?本地化部署CRM软件哪家品牌好?下面就一起来做了解。本地化部署CRM软件安全性如何本地化部署CRM软件的安全性是值得肯定的,它能够提
相关文章

CRM外呼系统是什么?CRM外呼系统有什么重要性?

可能有的企业管理者听说过CRM外呼系统,但是,他们对这种系统的相关情况并不了解,甚至不知道这类型的系统到底是什么。那么,CRM外呼系统是什么?CRM外呼系统的功能?有什么重要性呢?下面就和悟空CRM一起来看看这两个问题的答案。CRM外呼系统是什么CRM外呼系统是一种集成在客户关系管理系统当中的工具,它专门设计用在管理企业和现有客户以及潜在客户之间的外呼活动,这类型的系统往往具备自动化呼叫、呼叫脚本
相关文章

外贸用哪些CRM外贸管理软件?出口企业专用的

外贸企业选择CRM系统的目的是为了让自己的企业客户管理工作变得更简单,但是,目前市场上的CRM外贸管理软件非常多,很多人都不知道应该选择什么样的CRM外贸管理软件才能够满足自己的企业管理需求。那么,外贸用哪些CRM外贸管理软件?出口企业专用的软件哪个好?外贸用哪些CRM外贸管理软件?1、悟空CRM。悟空CRM是一款专门为出口企业设计的CRM软件,本身有独特的功能和优势,主要体现在有全面的业务管理功
相关文章
最新文章

CRM在商业中的使用有哪些?

CRM在商业中的使用有哪些?CRM在商业当中使用得比较广泛,涵盖的领域也比较多,所以,很多人都希望可以知道它在商业当中具体被用在哪些方面,那么,CRM在商业中的使用具体体现在哪些方面呢?接下来和悟空CRM一起来看看答案。1、销售管理。CRM可以被用在收集、分类、评分和分配销售线索,帮助销售人员优先关注最有可能成为成交的潜在客户,同时,它的销售流程也可以实现自动化,还能够预测和进行绩效管理。2、市场
最新文章

客户服务系统是什么?有什么重要性?

客户服务系统相信很多企业管理者都不会觉得陌生,但是,他们往往对这个系统的相关情况也不熟悉,所以,他们会问:客户服务系统是什么?有什么重要性呢?下面就和悟空CRM一起来了解这两个问题的答案。客户服务系统是什么客户服务系统是一种用在管理和优化企业以及客户之间互动的技术解决方案,这类型的解决方案包含有很多工具和程序,作用在于能够让客户体验得到提升,也能够让客户满意度增加,除此以外,它还能够让企业的运营效
最新文章

本地化部署CRM软件有哪些厂家?为什么选择悟空CRM?

本地化部署CRM软件的好处在于它可以在企业自己的服务器上运行和使用,并不需要在云服务提供商的服务器上面使用,这样就能够确保数据安全性,也能够达到企业更好控制数据的效果,所以,很多大型企业都会考虑使用这样的软件满足企业的管理需求。那么,本地化部署CRM软件有哪些厂家呢?为什么选择悟空CRM呢?下面就一起来看看答案。本地化部署CRM软件有哪些厂家1、悟空CRM。悟空CRM相信很多国内企业管理者都听说过
最新文章

快速注册,立即使用

仅需一分钟,立即注册悟空云。悟空CRM免费试用。
客户端下载