WIC 2023 | 卢涛:发展生成式AI要思考效率和能效问题
以下内容根据演讲整理
过去几十年,我们都处于软件1.0的时代。程序员通过编码给定条件,打造软件的特性和功能,形成各种各样的应用软件。软件2.0的时代则是首先构建一个基本的算法模型,然后通过数据进行学习,最后具备一定的功能。软件2.0和今天的人工智能是不同维度的一个提法。
人工智能的提法中,我们知道,人工智能进化,第一步是简单的感知,比如能够识别猫、狗等。后来,我们进入了自然语言时代,谷歌发布了Transformer算法以及BERT模型,我们认为这是一个新的时代的来临,如果我们以人获得知识结构来类比,其实人是先掌握语言,再去学习不同领域的知识,人才会成为一个文科生、理科生、工科生等,自然语言处理(NLP)是人工智能在发展过程中获得智能、获得知识的一个特别重要的过程。热门的GPT等等生成式人工智能也属于是NLP的一个应用。
再往前走,智能要进一步发展,像人一样,在部分数据残缺或未知的情况下,对未来能进行推理,这可能是第三个阶段,高级感知,从经验中学习。
大家都在说ChatGPT,ChatGPT到底是什么?这里边是两个字,一个是Chat,一个是GPT,GPT实际上是这个模型的主体,它是生成式的、预训练的模型。Chat只是一个交互的方式。把谁定位是主语的时候,其实重点发展的聚焦点是不一样的。市场上有很多叫XXX Bot,Bot是主语,是聊天机器人。大家要具体看一看我们做的大模型主语是什么,我们重点发展的方向是什么。
我们怎么看待ChatGPT或者是类似的模型?它们意味着什么?它确实是一个生产力的工具。不过从另外一个维度,我们可以从知识的角度看待这个问题。
在比较远古的时候,书本的制作是非常贵的,基本上是谁拥有书本就是谁拥有知识。比如说古时候一个大将军拜了一个师父,这个师父有一本《孙子兵法》,这个大将军拿到了《孙子兵法》,就对《孙子兵法》的知识进行了垄断。所以,很早的时候,谁拥有了书本,谁就拥有了知识。
后来造纸术和印刷术发明以后,书本的制作成本有所下降,可能更多人就能获得书本,这是第一次的知识平权。接下来进一步的知识和信息的平权其实是互联网,互联网把所有的知识数字化搬到网上,大家可以更轻易地获得。此外,这还加上了信息的平权。以前我们的书刊杂志很多都是机构发布,但在互联网时代,每个人都是信息的生产者,某种意义上信息也平权了。
如今我们进入了以ChatGPT为代表的人工智能时代。之前,比如说在互联网时代,你作为一个个体,对所谓的知识进行搜索,要去理解,要去萃取,形成某一个所谓的知识。以ChatGPT为代表的人工智能在某种意义上能够帮助人们迅速地把知识萃取出来,这是对知识和信息的进一步的平权。
人工智能算力非常重要,它其实代表的是计算范式的转变。以前的软件1.0,在以裸机的软件代码来进行编写的时候,那个时候需要的计算平台其实是一个向量处理器,要非常适合做逻辑判断。人工智能对计算的要求实际上是要求大规模的并行,中间可能稀疏化会是一个比较重要的特点,计算的精度跟科学计算相比它是低精度,科学计算是双精度。人工智能中,模型参数会重复使用,并且算法模型是以计算图的形式结构来表征的。
过往的计算平台,CPU是一个标量处理器,非常适合做逻辑处理,比较适合做应用和做网络方面的处理。GPU是一个向量处理器,原来是基于图形、图像的处理构建出来的,它跟CPU比确实也是并行度更高,比较擅长做向量处理。
我们做IPU主要是面向人工智能构建的处理器,整个处理架构是以计算图作为一个计算抽象的形态构建的。对比一下它和CPU、GPU处理器的结构有什么不同。计算上,CPU以标量计算为特征,GPU比较适合做密集连续的运算,IPU其实是大规模的MIMD,多指令多数据的处理,比较适合做稀疏化的计算。从存储的角度,CPU使用的是DDR,GPU用的是显存,和CPU有数量级的带宽和性能的提升,但是容量可能小一点。IPU采用的是大型的SRAM,把模型和数据紧密耦合在一起。这三个架构面向的应用,有自己的前景和应用领域。
基于IPU,Graphcore构建了Bow-2000和C600。Bow-2000以训练见长,采用了非常方便的模块化设计,可以像搭积木一样进行堆叠,根据模型和数据规模的大小,非常便利地进行横向和纵向扩展。C600以推理见长,它是能效比非常好的产品,在185瓦的功耗情况之下,我们做到了差不多280T的算力,比当前主流的GPU在应用上表现得好一点。值得一提的是,C600支持FP8浮点运算的数据格式,是行业中率先引入FP8的产品之一。软件上,今天的应用可能很多都是基于CUDA做的,我们怎么来迁移呢?我们构建了一个搭配C600的IPU推理工具包PopRT,可以把在GPU上训练的模型能够转换到IPU上进行部署。
IPU支持许多生成式AI模型,例如ChatGLM-6B、Dolly 2.0、GPT-J、GPT-2、Stable Diffusion等等。例如中英双语模型ChatGLM-6B在IPU上可以跑出3.5 ms/token的速度,实现“刷屏式”的用户体验。Dolly 2.0是4月12号发布的一个开源模型,我们4月26号宣布了对这个模型的支持。Stable Diffusion这种生成图片的模型,Graphcore已经上线了一些相应的平台,供客户体验。
我们对于未来模型与计算演化也有一些思考:
第一,模型越来越大,怎么办呢?以前做训练才需要做并行化的处理,今天大模型也需要做推理,如果更大,会么样?显存是一个很好的技术吗?需要多少张卡?密集计算可以持续发展的吗?
第二,效率的问题。今天生成图片的AI模型对算力需求巨大,比如我们以前做图片分类,一张显卡一秒钟可以做一万张图的处理,现在做生成图片的时候,一张卡可能几秒才能生成一张图片,对算力需求巨大。GPT-style的模型,token-by-token的经济性很差,这个模型对计算的利用率非常非常低。
第三,能效问题,我们用1000个处理器训练一个模型,我们的能效、碳排放,最后推理的时候可能是千张万张卡的能效问题。
这些问题今天没有特别明确的答案,我们也在思考这个问题,也想请大家一起来进行思考。
获取更多Graphcore资讯,阅读深度技术文章,并与其他创新者们一起交流,请至中国官网graphcore.cn,以及关注Graphcore微信、微博和知乎创新社区。
Graphcore中国官网
Graphcore官方微信
Graphcore微博创新社区
Graphcore知乎创新社区
微信扫码关注该文公众号作者