首页 > 滚动资讯

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

来源:清一色财经 时间:2023-06-21 19:12:31

打「排位赛」的大模型们背后秘密武器曝光!UC伯克利重磅开源神级LLM推理系统——vLLM,利用PagedAttention,比HuggingFace/Transformers快24倍,GPU数量减半。

过去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服务。

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

现在,所有人可以在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.llm = LLM(model="lmsys/vicuna-7b-v1.3")  # Create an LLM.outputs = llm.generate(prompts)  # Generate texts from the 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 "{        "model": "lmsys/vicuna-7b-v1.3",        "prompt": "San Francisco is a",        "max_tokens": 7,        "temperature": 0    }"

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

https://vllm.readthedocs.io/en/latest/getting_started/quickstart.html

团队介绍

Zhuohan Li

Zhuohan Li是加州大学伯克利分校计算机科学专业的博士生,研究兴趣是机器学习和分布式系统的交叉领域。

在此之前,他在北京大学获得了计算机科学学士学位,指导老师是王立威和贺笛。

Woosuk Kwon

Woosuk Kwon是加州大学伯克利分校的博士生,研究兴趣是为大语言模型等新兴应用建立实用、灵活和高性能的软件系统。

团队其他成员包括庄思远、盛颖、郑怜悯、Cody Yu。团队导师包括Joey Gonzalez,Ion Stoica和张昊。

其中,团队的大部分成员同时也是LMSYS成员。

相关稿件

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

高铁上遇见特别的“艾” 短讯

大满足!这个端午节东湖玩法多

天天热议:恒大地产再被执行8.4亿 恒大地产累计被执行超399亿

夏天也能快乐玩雪!南通夏季文旅消费推广季在森迪冰雪乐园启动

itunes恢复微信记录到手机上(itunes恢复微信聊天记录)_观速讯

男人穿上乳胶皮变女人变身(男生穿乳胶衣脱不下来的故事)

杭州园林(300649.SZ):实际控制人续签《一致行动人协议》

手机微信启动画面修改教程_安卓微信启动画面修改

6月21日涨停复盘:*ST美谷4连板 新时达5天4板

江南mp3下载林俊杰_林俊杰江南mp3下载-播资讯

快来采摘!藁城区500亩蟠桃园开园啦!-天天消息

诡镇梦魇(诡镇)

天天动态:句容税务:送税法进高校 “税”助力向未来

世界快播:停航三年 成都至伊斯坦布尔客运航线复航

读书 | 理解近代日本的一把重要钥匙——《魔都上海:日本知识人的“近代”体验》研究魔都上海、也通过上海阐述日本

瑞浦兰钧 x TÜV莱茵 | 联合发声,共建绿色能源新未来

环球今日讯!郑州今日起发放5000万汽车消费券 新能源车占3000万

茶叶制作一般有哪些步骤

【世界快播报】违规办理虚假保理融资业务等 交行武汉青山支行被罚100万元

全球聚焦:XR行业已进入行业拐点,四方面技术创新值得关注

广南(集团)获授予5.5亿港元的定期贷款融资-全球聚焦

炎亚纶带7人闯记者会,把邱耀乐吓得发抖!网友:别哭,妆会花 焦点滚动

离岸人民币对美元一度跌破7.2关口,去年11月末以来首次_天天微动态

AI板块几乎全军覆没!A股跌上热搜 股民:含泪吃粽子叶 今日看点

硅谷银行亚洲客户遭“双向挤压”:存款被没收,贷款照付!|要闻速递

足协杯端午节开战 主帅陈洋点齐主力做客金陵

拉什福德和贝林厄姆参加时装秀,与演员迈克尔-沃德互动 环球关注

科研人员发现一种蜘蛛新物种 中国马利蛛种类增至26种-环球热头条

柠条锦鸡儿群体NT-6_关于柠条锦鸡儿群体NT-6概略|全球快播