GPU推理時代終結?世界最大芯片加持推理狂飆20倍

文章轉載於新智元

LLM若想高速推理,現如今,連GPU都無法滿足了?

曾造出世界最大芯片公司Cerebras,剛剛發佈了全球最快的AI推理架構——Cerebras Inference。

運行Llama3.1 8B時,它能以1800 token/s的速率吐出文字。

不論是總結文檔,還是代碼生成等任務,響應幾乎一閃而過,快到讓你不敢相信自己的眼睛。

如下圖右所示,以往,微調版Llama3.1 8B推理速度爲90 token/s,清晰可見每行文字。

而現在,直接從90 token/s躍升到1800 token/s,相當於從撥號上網邁入了帶寬時代。

左邊Cerebras Inference下模型的推理速度,只能用「瞬間」、「瘋狂」兩字形容。

這是什麼概念?

比起英偉達GPU,Cerebras Inference的推理速度快20倍,還要比專用Groq芯片還要快2.4倍。

另外,對於70B參數的Llama3.1,可達到450 token/s及時響應。

值得一提的是,Cerebras並沒有因爲提高LLM的速度,而損失其精度。

測試中,使用的Llama3.1模型皆是採用了Meta原始16位權重,以便確保響應高精度。

最關鍵的是,價格還實惠。

根據官方API定價,Llama 3.1 8B每百萬token僅需10美分,Llama 3 70B每百萬token僅需60美分。

如此之高的性價比,更是打破了業界紀錄——

不僅遠超之前的保持者Groq,而且和其他平臺相比,甚至是隔「座標軸」相望了。

Artificial Analysis

正是因爲Cerebras Inference背後,是由自研的第三代芯片Wafer Scale Engine助力,才得以1/5價格快速推理Llama3.1。

看到自家模型推理如此神速,LeCun、Pytorch之父紛紛動手轉發起來。

還有網友看後表示,我想要!

1

推理很慢,英偉達GPU也不中用?

爲什麼LLM的響應,就像撥號上網加載網頁一樣,一個字一個字慢慢地吐出?

關鍵原因所在,大模型自身的順序特性,以及需要大量的GPU內存和帶寬。

由於GPU的內存帶寬限制,如今推理速度爲每秒幾十個token,而不是數千個。

更進一步說,大模型每個生成的單詞,都必須通過整個模型進行處理,即所有參數必須從內存投入到計算中。

而每生成一個單詞,就需要一次處理,以此循環往復。

也就是,生成100個單詞需要100次處理,因爲「下一詞」的預測,皆需要依賴前一個單詞,而且這個過程無法並行。

那麼,想要每秒生成100個單詞,就需要所有模型參數,每秒投入計算100次。

由此,這對GPU內存帶寬提出了高要求。

以社區流行的Llama3.1-70B模型爲例。

模型有700億參數,每個參數是16位,需要2字節的存儲,那整個模型便需要140GB的內存。

想要模型輸出一個token,那700億參數必須從內存,移動到計算核心,以執行前向推理計算。

由於GPU只有約200MB的片上內存,模型無法存儲在芯片。

因此,每次生成的token輸出時,需將整個佔用140GB內存的模型,完整傳輸到計算中。

再細算下來,爲了實現10 token/s,則需要10*140=1.4 TB/s的內存帶寬。

那麼,一個H100有3.3 TB/s的內存帶寬,足以支持這種緩慢的推理。

而若要實現即時推理,需要達到1000 token/s或140 TB/s,這遠遠超過任何GPU服務器/系統內存帶寬。

或許,你想到了一種「暴力」解決方案,將多個GPU串聯搭建DGX系統。

這完全是大錯特錯,更多的處理器只會增加系統的吞吐量(給出更長響應),並不會加速單個查詢的響應時間。

1

自研世界最大芯片,打破推理想象

那麼,Cerebras如何打破這一困局呢?

一直以來,這家公司就致力於打造世界上最大芯片,希望將整個模型存儲在一個晶片上,以此來解決內存帶寬瓶頸。

憑藉獨特的晶圓設計,WSE-3單個芯片上便集成了44GB SRAM,具備21 PB/s的內存帶寬。

單個芯片擁有如此大內存,便消除了對外部內存的需求,以及將外部內存連接到計算的慢速通道。

總的來說,WSE-3的總內存帶寬爲21PB/s,是H100的7000倍。

它是唯一一款同時具有PB級計算和PB級內存帶寬的AI芯片,使其成爲高速推理的近乎理想設計。

Cerebras推理不僅速度超快,而且吞吐量巨大。

與小型AI芯片相比,芯片上內存多了約200倍,支持從1-100的批大小,使其在大規模部署時,具有極高的成本效益。

正是有了如此強大的芯片,Cerebras Inference的快速推理得以實現。

它的出現,是爲了實現數十億到萬億參數模型的推理。

如果模型參數超過單個晶圓的內存容量時,研究人員將在「層邊界」將其拆分,並映射到多個CS-3系統上。

20B模型適合單個CS-3,而70B模型則至少需要4個這樣的系統。

官方表示,未來幾周,將會測試更大參數版本的模型,比如Llama3-405B、Mistral Large。

1

16位精度,不做取捨

推理速率高,並非在模型權重上,做了取捨。

業界中,一些公司試圖將模型權重精度,從16位減少到8位,來克服內存帶寬的瓶頸。

這樣方法,通常會造成模型精度損失,也就是響應結果的準確性、可靠性不如以前。

Cerebras Inference之所以強就強在了,速率和原始權重,皆要顧及。

正如開篇所述,他們採用了原始16位權重運行了Llama3.1 8B和70B。

通過評估,16位模型準確率比8位模型,高出多達5%。尤其是在,多輪對話、數學和推理任務中表現更好。

1

最優性價比,百萬token免費送

目前,Cerebras Inference可通過聊天平臺,以及API訪問,任何一個人可隨時體驗。

體驗傳送門:https://cerebras.ai/blog/introducing-cerebras-inference-ai-at-instant-speed

基於熟悉的OpenAI Chat Completions格式,開發者只需更換API密鑰即可集成強大的推理功能。

Cerebras Inference API提供最佳的性能、速度、精度和成本組合。

它是唯一能即時運行Llama3.1-70B的方案,可實現450 token/s,同樣使用的是原始16位模型權重。

在此,Cerebras送上大福利,每天爲開發者們提供100萬個免費token。對於大規模部署,其定價只是H100雲的一小部分。

首次推出時,Cerebras提供了Llama3.1 8B和70B模型,而且有能力每天爲開發者和企業,提供數千億token。

接下來幾周,他們將增加對更大模型的支持,如Llama3 405B、Mistral Large 2。

有開發者問道,你們提供的rpm(每分鐘請求次數)和tpm(每分鐘處理token數)是多少?

Cerebras提供了一張針對Llama 3.1 8B和70B模型完整的請求/token處理數的圖。

1

快速推理,不只爲速度

最後,讓我們來聊聊,爲什麼快速推理非常重要?

通常,LLM會即刻輸出自己的全部想法,而不考慮最佳答案。而諸如scaffolding(腳手架)這類的新技術,則如同一個深思熟慮的智能體,會在作出決定前探索不同的可能解決方案。

這種「先思考後發言」的方式在代碼生成等嚴苛任務中,可以帶來超過10倍的性能提升,從根本上提升了AI模型的智能,且無需額外訓練。

但這些技術在運行時,需要多達100倍的token。

因此可見,如果我們能大幅縮短處理時間,那麼就可以實現更爲複雜的AI工作流程,進而實時增強LLM的智能。

1

速度爆表,但上下文只有8K

雖然在價格和延遲上,Cerebras都不是最低的。

但極致的速度,確實爲Cerebras帶來了極致的速度-價格和速度-延遲比。

不過,值得注意的是,在Cerebras上跑的Llama 3.1,上下文只有8k……

相比之下,其他平臺都是128K。

具體數據如下:

Llama 3.1 70B

Llama 3.1 8B

參考資料:

https://cerebras.ai/blog/introducing-cerebras-inference-ai-at-instant-speed

https://x.com/CerebrasSystems/status/1828464491677524311

https://artificialanalysis.ai/models/llama-3-1-instruct-70b/providers