近日,蚂蚁集团开源了一套新算法,可帮助大模型在推理时,提速2至6倍,引起业内关注。
这套新算法名为Lookahead推理加速框架,能做到效果无损,即插即用,该算法已在蚂蚁大量场景进行了落地,大幅降低了推理耗时。
以Llama2-7B-chat模型与Dolly数据集为例,实测token生成速度可由48.2个/秒,升至112.9个/秒,提速2.34倍。而在蚂蚁内部的RAG(检索增强生成)数据集上,百灵大模型AntGLM 10B版本的加速比达到5.36,与此同时,显存增加和内存消耗几乎可以忽略。
当下的大模型基本是基于自回归解码,每一步解码仅生成一个token,这种操作方式既浪费了GPU的并行处理能力,也导致用户体验延迟过高,影响使用流畅度。
举个例子,原来的token生成过程,就像早期中文输入法,只能一个字一个字“敲”出来,采用了蚂蚁的加速算法后,token生成就像联想输入法,有些整句可直接“蹦”出来。
此前业内有少量的优化算法,主要集中在如何生成更好的草稿(即猜测生成token的序列)上,但是实践证明草稿在超过30个token长度后,端到端的推理效率就无法进一步提高,但是这个长度远没有充分利用GPU的运算能力。
为了进一步压榨硬件性能,蚂蚁Lookahead推理加速算法采用了多分支的策略,即草稿序列不再仅仅包含一条分支,而是包含多条并行的分支,多条分支在一次前向过程中进行并行验证。因此可以在耗时基本不变的前提下,提高一次前向过程生成的token个数。
再进一步,蚂蚁Lookahead推理加速算法利用trie树存储和检索token序列,并将多条草稿中相同的父节点进行合并,进一步提高了计算效率。为了提高易用性,trie树的构建不依赖额外的草稿模型,只利用推理过程中的prompt及生成的回答进行动态构建,降低了用户的接入成本。
该算法现已在GitHub上开源(https://github.com/alipay/PainlessInferenceAcceleration),相关论文公布在ARXIV(https://arxiv.org/abs/2312.12728)。
公开信息显示,蚂蚁集团基于丰富的业务场景需求,在人工智能方向持续投入,布局了包括大模型、知识图谱、运筹优化、图学习、可信AI等技术领域。