AI图鉴

AI图鉴首页 › AI 资讯 › Cerebras 部署 Trillion-Paremeter AI模型

Cerebras 部署 Trillion-Paremeter AI模型

来源:Hacker News · 发布时间:10-25 · 由 AI图鉴每小时自动聚合

文章 URL:https://www.cerebras.ai/blog/how-we-dploy-trillion-parameter-frontier-models-on-cerebras 评论 URL:https://news.ycombinator.com/item?id=502273 互联网档案馆的存檔,存档日期2013-07-02.

最常被问到的问题之一是我们是如何在Cerebras wafer比例芯片上部署大型模型的一个单一的Cerebras WSE-3T wafer拥有44 GB的芯片存储器,万亿参数的边框模型需要三字节来单独表示其重量。

以每秒1000-2000+令牌的方式运行。

我们将使用开源模型Kimi K3

到最后,你会明白:

- 我们如何把完整的模型融入芯片记忆中

- 我们如何在多个芯片上映射模型

- 我们如何处理大量的并行请求

用Kimi K3拆开

Kimi K3是一个开源,3T参数模型,具有69个线性关注层和24个密集层。

它在终端-Bench 2.1(vs.GPT-5.6 Sol的88.8%)和浏览孔普(vs.GPT-5.6 Sol的90.4%)上得分惊人的88.3%. 这些结果表明前沿编码和代理能力,甚至在一些基准测试上表现优于领先的专利模型。 详见此处Kimi K3.

举例来说,我们使用:

- 假定平均请求大小256k

- 4位重量量化(如Hugging Face执行)

- 8位 KV 缓存

# 1:每层的大小

为了计算Cerebras WSE-3T wafers的总数,我们需要支持Kimi K3,让我们首先计算每个模型层的大小。

Kimi K3有3兆参数。 如果所有3T参数每个位存储4位,原始参数有效载荷是:

将有效载荷分为93层,然后给出:

#2:瓦费尔数

现在,我们知道每层需要大约16GB,我们可以找出每44GB饼上配有多少层。 答案取决于层类型:

- Dense层需要一个额外的 KV 缓存空间,因为每个密集( 完全注意) 层会存储每个符号的密钥和值。 因此,我们每卷饼放置一个密集层,留下剩下的SRAM作为它的KV缓存。

- 线性观察层不需要为KV缓存增加空间。 线性注意层不是为每个令牌存储密钥和值,而是为每个请求保持一个小的,固定大小的状态,无论上下文长度如何。 这为每卷饼(2×16 GB=32 GB)两个线性层留下了空间。

因此,有了Kimi K3的69个线性层和24个密集层,我们得到:

这让我们能计算出35+24=59个饼

#3:连接饼饼

Cerebras在管道中执行模型。 在Cerebras编译器绘制了跨区域wafers的模型层之后,运行时间绘制了符号在wafers之间流动的路径。 对于超快的潜伏性,只需要在饼饼之间传递激活,这可以通过RDMA通过以太网完成。 这大约是每跳2微秒。

需要强调的是,由于每个Cerebras饼饼有44GB的芯片SRAM,每层只有16GB,所以我们通常能够直接将模型的整个层装在芯片上。

这意味着在多数情况下,模型重量从来不需要移动,层层也不需要被分割成瓦片。 只有从一个饼饼到另一个饼饼的活化物

#4:我们如何满足一个请求

现在,我们把蜡烛连接在一起,并铺设了模型,我们可以把每块蜡烛看作是一个装配线上的一阶段:模型对每个阶段的重量保持不变,请求的中间结果贯穿了各层阶段。

例如,Wafer 1运行了1–2的模型层,并发送其激活到wafer 2. Wafer 2运行了3–4层,并将结果传递给Wafer 3,等等,直到最后一个wafer产生下一个标志。

#5:我们如何满足许多要求

这个融资是一个常见的误解。 每个饼饼在等待轮到的时候,实际上,系统不是以一个批量大小运行吗?

没有!如果我们一次向下发出一个请求,等待它完成然后开始下一个请求,这将是对管道的低效利用。 相反,我们保留整个管道充满不同的要求。 由于模型已经分为管道阶段,每个阶段可以同时处理不同的请求。

第3阶段处理请求A的代号,第2阶段处理请求B的代号,第1阶段处理请求C的代号。 在我们的例子中,每个阶段都是一层。 在生产中,Cerebras使用许多精细的加磨阶段,还有更多的。

每个阶段还可以处理一个微批,一个小组的请求,而不是一个单一的请求。 因此飞行中的请求数量大致是级数乘以微批大小。

为了理解取舍,较小的微管使每个请求更快,而较大的微管则增加总吞吐量。

#6:我们能满足多少请求?

分配给 KV 缓存的芯片内存量决定了同时请求的最大数量。 飞行中的每一个请求都需要自己在每个密集层的瓦片上的KV缓存,因此芯片上存储器的大小为同时提出的请求设定了上限。 如上所述,我们只需要计算密层的KV缓存要求。

对于已经有一个密集层的44GB卷轴,我们可以用:

总圆饼存储器 - 一个密集层的大小。 在这种情况下:

计算同时请求的 #

为了找到任何特定模型映射支持的并行请求数量,我们首先计算一个256k请求要处理多少缓存:

然后计算此配置将支持的并行请求总数,我们除以:

同时提出的申请总数是任何时间通过管道提出的同时提出的申请数目。 这些请求与GPU批次不同

当然,无论是货币还是批量大小,都无法确切地告诉你一个推论系统是如何高效运行的。 在评价一个推论系统的吞吐量时,更有意义的衡量标准是每单位功率的总信使吞吐量(如每兆瓦每秒的信使),当测量输出速度相同时。

如何超越3T参数

同样的方法也扩展到更大的模型:计算重量和请求状态所需的内存,将模型分布在饼饼之间,并将其连接到一条管道中。 每个额外的饼饼都贡献了计算和芯片记忆,使我们能够容纳超过任何单一芯片容量的模型。

谢谢你跟我们学的有兴趣在Cerebras上部署模型还是用我们的推论云建造?

- 开始我们的免费API:云.cerebras.

- 联系我们的销售团队:销售@cerebras.ai

由哈雷·张设计。 感谢阿塔尔瓦·塔尔帕德,高振伟,安吉拉·杨,杰西卡·刘,乔伊斯·埃尔,艾玛·卡爾,以及罗汉·古普塔的审查和反馈。

本文由 AI图鉴自动抓取并翻译,版权归原作者所有;如需查看原文请点下方链接。

相关 AI 工具

相关免费羊毛

同源资讯

阅读原文(cerebras.ai)

标题、摘要与正文均来自该信源的公开页面,版权归原作者所有;本站自动聚合与翻译,仅作出处跳转。

← 返回 AI 资讯列表AI工具图鉴首页

返回 AI图鉴首页 · 提交工具 · 商务合作 · 关于本站 · 591 款 AI 工具分类导航 · 每日 AI 热门项目与动态