这两天国内外人工智能圈子都在热议 Groq:这个硅谷公司的产品基于自研芯片可以做到在大模型推理时每秒处理将近 500 个 token。
500 个 token 什么概念,大概就是一句话的响应时间只需要不到 2 秒,如此这般的文字生成速度,甚至比翻译软件还快。当我们习惯了看 GPT 们慢悠悠的吐出答案时,第一次使用它看到那大模型生成的答案突突突的往外喷,或是更短的答案瞬间生成就像打开一个网页一样的快的时候,确实会惊的呆住一下。
这是在 Groq 上运行 Llama 2 的速度:
目前官网(groq.com)提供免费的试用,没有用过的可以感受一下。
你也可以在 Poe 上免费体验 Groq:https://poe.com/Mixtral-8x7b-Groq。
它一时间被冠以 game changer 的地位,被人们形容为即将干翻英伟达的存在。
01
如何实现:专为语言模型设计的张量流处理器
在对 Groq 的讨论里有人把它叫做大模型,有人叫它芯片,它自己叫自己 LPU。这些眼花缭乱的形容让人很好奇,它到底是个啥,这么逆天的速度又是如何实现的?
根据 Groq 此前发布的论文,它的核心技术其实是一个名叫 TSP 的微架构设计,全称叫做张量流处理器,Tensor Streaming Processor,TSP。一句话概括这个微架构,TSP 通过独特的功能切片设计、确定性执行以及软件定义的方法来实现高性能和高效率的张量计算。
所谓微架构,指的是计算机处理器内部的设计和实现细节,微架构决定了处理器如何执行指令集架构(ISA)定义的指令。由微架构组成的产品才叫做处理器。(Groq 成立于好几年前,直到大模型出来的今天它才想出了 LPU,语言处理器单元这么个名字。)
那这个独特的「功能切片」又是怎么回事呢?
其实 TSP 的核心思想是将传统的多核处理器组织结构进行功能切片重组,并围绕张量计算这一抽象概念构建。TSP 的内存单元与向量和矩阵深度学习功能单元是交织在一起的,充分利用深度学习操作的数据局部性。基于此,TSP 的优势就变成了发掘机器学习负载中固有的各种并行性,包括指令级并行、内存并发、数据并行和模型并行,并通过消除硬件中的所有反应式元素来确保确定性执行。
那光有微架构肯定不行,你要把这个微架构做成服务器能用的产品才行。于是 Groq 就想到了把 TSP 变成专用集成电路,也就是 ASIC。ASIC 的特点在于特定的应用或算法进行了高度优化,以实现最佳性能、最低功耗和最小面积等目标。由于它们专门用于执行一种或一组相关任务,因此在完成这些任务时往往比非定制化的芯片更高效。
Groq 公司设计的第一款 TSP ASIC 实现了超过每平方毫米硅片 1 万亿次操作/秒的计算密度,在 900 MHz 的标称时钟频率下,这款 25×29 mm 的 14nm 芯片运行时表现卓越。在 ResNet50 图像分类任务上,TSP 能够在批次大小为 1 的情况下达到每秒处理 20.4K 张图片的速度,相较于现代 GPU 和其他加速器,性能提升了 4 倍。而 Groq 也因此确定了最终的产品形态——LPU(语言处理器单元)。
TSP 的关键创新在于其将传统二维核网格组织形式重新划分为按功能切分的瓦片布局,其中每个瓦片专门执行特定功能,并在垂直方向上堆叠形成「切片」。TSP 使用流处理模型进行张量计算,空间上根据函数排列计算元件以利用张量流动过程中的数据流局部性优势。
估计你读到这里就会发现「好像缺了点啥」。
无论是英伟达的 H200 也好,还是谷歌的 TPU 也好,他们运行大模型的方法绝对不是仅靠一张卡来实现的。而 TSP 也是如此,每个 TSP 提供 220 MB 的本地存储,并且当 TSP 数量增加时,它们共同贡献的全球内存容量也随之扩大,物理上分散但逻辑上共享的 SRAM 芯片内存在整个系统中构成了分布式全局内存。
那么为了将这些个 TSP 组织在一起,Groq 又设计了一个 Dragonfly 网络。这个网络采用多级层次化结构,其核心思想是将整个系统分割成多个子组,并通过几个层次的路由器连接这些子组。这种设计可以提供高的带宽容量,特别是对于跨节点间的全局通信,确保了在整个系统规模扩大时,每个 TSP 仍能保持相当水平的带宽接入。Dragonfly 网络致力于减少网络直径,即从任意一个端点到另一个端点所需经过的最小跳数。较小的网络直径意味着更低的通信延迟,这对于要求实时响应和紧密同步的机器学习任务至关重要。
如果你想更简单粗暴的理解它,有人用了一个比喻,就是在一个交通复杂的城市里,LPU 收集了所有人早上上班的方向,然后用软件来决定红绿灯,关掉了一条路上所有的交通灯让所有同一方向的车子在这条路上只管往前开。那当然快多了。
02
Groq:前谷歌芯片团队成员成立的创业公司
Groq 成立于 2016 年,这家公司的创始团队出自谷歌,曾经设计了谷歌自研 AI 芯片张量处理单元 TPU 系列。据官网介绍,Groq 公司创始人、首席执行官 Jonathan Ross 曾经承担了 TPU 的 20% 工作。
Jonathan Ross
在去年的高性能计算会议 SC23 上,Groq 就展示过在 LPU 上运行 LLM 的全球最佳低延迟性能。当时,Groq 能够以每秒超过 280 个 Token 的速度生成回复,刷新了 Llama-2 70B 推理的性能记录。
今年 1 月,Groq 首次参与公开基准测试,就在 Anyscale 的 LLMPerf 排行榜上取得了突出的成绩,远超其他基于云的推理提供商。
图源:https://github.com/ray-project/llmperf-leaderboard?tab=readme-ov-file
03
可用性:速度惊艳但成本可能有点高
我们也抱着好奇心尝试了一下,我向 Groq 和 ChatGPT 提了同一个问题,关于奥威尔一部著名小说里的一个具体意向的涵义。
对比可以看到,Groq 的回答比较简单,无法挖掘书中所代表的更深的复杂的意味。而 ChatGPT 可以回答出更深层次的宿命意味的解读,而且有意思的是,作为慕名而来体验极速出文的我发现,Groq 的回答其实耗时一共 21.5 秒。并不快。同样的问题给 Chat GPT 3.5,哪怕是用中文问,只需要不到 10 秒就能得到答案。
然后我又找了个问题问他,《黑暗之心》里面的刚果河之旅又象征了怎样的隐喻?
这回确实生成的非常快了,只花费了 2 秒钟就给出了答案!
但答案方面,乍一看是那么回事,但是了解这本小说的人仔细看完会发现,Groq 这回可能依然没答到点子上,跟上个问题给人的感觉差不多。所以,看来有些问题快是真的快,可是大部分给的回复都不太准确。而且我后来又试了试,我发现 Groq 在绝大多数情况下都能保证非常快速地给出结果,偶尔依然会「卡壳」,10 秒,甚至 20 秒才能给出结果。
为什么会这样?
快速是 Groq 的优化带来的,而质量确实和调用的模型相关,但也与 Groq 的优化有关。
快速来自上面提到的 TSP 的优化,除此之外,Groq 上面的模型也是他们自己微调过的,它并没有公开微调过程,所以对于模型本身的看法来源于我的推测:它上面可以选用的所有的模型后面都有「小尾巴」,比如 Llama 2 70B-4K、Mixtral 8x7B-32k。这个小尾巴是内容长度(Content Length)的意思,这个指标用来衡量模型生成的文本的长度,以便评估其生成内容的丰富程度或详细程度,这个数字越大输出的内容就越复杂。
看起来 Groq 应该是没有在输出结果上进行微调,而是对模型处理过程进行微调,缩短了模型推理的时间限制,减少了它充分进行推理的时间,这样再配合 TSP 本身固有的加速,形成了最后的结果。
在社交媒体上,也有很多人在被这闪电般的速度震撼后,开始发现它生成的质量似乎总是不合乎人意。
从技术和性能上来看,Groq 目前还不能撼动英伟达的地位。
原因很简单,英伟达的 GPU 产品是通用的,而 Groq 的产品形态是 ASIC,它不是通用产品,而是一个定制产品。简单点来说,任何一个人工智能算法都可以使用英伟达的 H200,但只有 Mixtral 和 Llama 2 才能使用 Groq 的 LPU。大模型公司想要使用 Groq 的产品,还需要先确定需求和指定规格,再进行功能验证,最后生产出来的产品才能使用。
这还带来了实际使用中的价格问题。
Lepton AI 的贾扬清也做了一个详细的计算,发现如果运行三年的话,Groq 的硬件采购成本是 1144 万美元,运营成本是 76.2 万美元或更高。8 卡 H100 的硬件采购成本是 30 万美元,运营成本是 7.2 万美元或略低。
事实上 Groq 背后的概念也不新鲜了。
2015 年到 2019 年期间,随着人工智能这个概念被炒起来,诞生了很多「加速卡」公司,他们在 PCIe 插槽上制作类似 GPU 的产品,给当时的人工智能算法提供定制的物理加速服务,性质跟 Groq 差不太多。虽然有不少那样的公司在当时沸沸扬扬,然而才过了几年的工夫,你又能回想起几个这样的公司呢?
希望这一次 Groq 的惊艳也不是一时的。
如果你关注大模型领域,欢迎扫码加入我们的大模型交流群,来一起探讨大模型时代的共识和认知,跟上大模型时代的这股浪潮。
更多阅读
GPT、DALL·E、Sora,为什么 OpenAI 可以跑通所有 AGI 技术栈?
7 万亿美元的芯片融资计划,Sam Altman 看到了什么,在害怕什么?
小伙子用ChatGPT找女友:聊了5239个女生,现在订婚了
开发者复盘:首个登上央视春晚的 AI 视频制作过程踩坑&技术分享
Perplexity CEO 专访:拥有十万用户的套壳产品比拥有自有模型却没有用户更有意义
转载原创文章请添加微信:geekparker