正是那個為Kimi線上業(yè)務(wù)輸送了超過80%流量的堅實基石,如今已向公眾敞開了懷抱。

就在今天,月之暗面Kimi攜手清華大學(xué)等一眾頂尖合作伙伴,共同揭開了名為Mooncake的大模型推理架構(gòu)的神秘面紗,將其源代碼無私地奉獻給了全世界。

根據(jù)官方介紹,本次開源將采用分階段的方式:

逐步開源高性能KVCache多級緩存Mooncake Store的實現(xiàn),同時針對各類推理引擎和底層存儲/傳輸資源進行兼容。

其中傳輸引擎Transfer Engine現(xiàn)在已經(jīng)在GitHub全球開源。

Mooncake一經(jīng)開源,已在GitHub狂攬1.2k star。

構(gòu)建一個以KVCache為核心的大型模型推理架構(gòu)

清華大學(xué)的MADSys實驗室與月之暗面科技有限公司攜手合作,共同推出了一項名為Mooncake的開源項目。該項目的核心目標(biāo)是構(gòu)建一個以KVCache(鍵值緩存)為核心的大型模型推理架構(gòu),通過創(chuàng)新的技術(shù)手段,顯著提升模型推理的效率和性能。

在2024年6月,雙方合作發(fā)布了基于Kimi底層的Mooncake推理系統(tǒng)設(shè)計。這一設(shè)計采用了PD分離和以存換算架構(gòu),顯著提升了推理吞吐量,引起了業(yè)界的廣泛關(guān)注。Mooncake項目源自于學(xué)術(shù)論文,其核心是超大規(guī)模的KVCache緩存池,通過以存換算的創(chuàng)新方法,有效降低了計算資源的消耗,同時顯著提高了推理吞吐量。

該項目采用了分階段的開源策略,逐步公開高性能KVCache多級緩存Mooncake Store的實現(xiàn),并致力于與各種推理引擎及底層存儲/傳輸資源的兼容性。

大模型推理優(yōu)化技術(shù)-KV Cache

KV Cache(鍵-值緩存)是一種在大模型推理中廣泛應(yīng)用的優(yōu)化技術(shù),其核心思想是利用緩存key和value來避免重復(fù)計算,從而提高推理效率。代價是顯存占用會增加。

具體而言,Mooncake采用以KVCache為中心的解耦架構(gòu),將預(yù)填充集群與解碼集群分離,并充分利用GPU集群中未充分利用的CPU、DRAM和SSD資源,實現(xiàn)KVCache的解耦緩存。

其核心在于以KVCache為中心的調(diào)度程序:

在最大化整體有效吞吐量和滿足與延遲相關(guān)的服務(wù)級別目標(biāo) (SLO) 要求之間取得平衡

當(dāng)面對流量高峰期時,Mooncake通過早期拒絕策略和預(yù)測未來負(fù)載的方法,來處理超載問題。

早期拒絕策略(Early Rejection Policy)

簡單說,其核心思想是在請求實際開始處理之前,根據(jù)當(dāng)前系統(tǒng)的負(fù)載情況預(yù)測是否有足夠的資源來處理新的請求。

如果預(yù)測結(jié)果表明系統(tǒng)資源不足以保證請求的及時處理,系統(tǒng)就會在請求到達之前予以拒絕,從而避免了無效的資源占用和不必要的延遲。

預(yù)測未來負(fù)載(Predicting Future Load)

在Mooncake中,系統(tǒng)需要能夠預(yù)測在未來一段時間內(nèi)的負(fù)載情況,以便做出更準(zhǔn)確的接受或拒絕請求的決策。

如何實現(xiàn)呢???

通常來說,這種預(yù)測會基于當(dāng)前的請求模式、系統(tǒng)的資源使用情況以及歷史數(shù)據(jù)等信息。

再通過對信息的進一步分析建模,Mooncake就能夠估計接下來的請求處理需求,并據(jù)此調(diào)整其調(diào)度策略。

論文實驗結(jié)果顯示,與基線方法相比,Mooncake在某些模擬場景中可以實現(xiàn)高達525%的吞吐量提升,同時遵守SLO(與延遲相關(guān)的服務(wù)級別目標(biāo))。

在實際工作負(fù)載下,Mooncake使Kimi能夠處理75%以上的請求。

華為數(shù)據(jù)存儲參與共建

Mooncake開源項目從論文延伸,以超大規(guī)模KV-Cache緩存池為中心,通過以存換算的創(chuàng)新理念大幅度減少算力開銷,顯著提升了推理吞吐量。本次開源將采用分階段的方式,依次開源其中的關(guān)鍵組件并集成對于各類不同上層訓(xùn)推框架的支持。

作為AI數(shù)據(jù)基礎(chǔ)設(shè)施服務(wù)商,華為數(shù)據(jù)存儲在此開源架構(gòu)中對其中推理框架、Transfer Engine和高性能內(nèi)存型存儲進行擴展與增強??焖贅?gòu)建起 “上層生態(tài)+中間算法插件+下層AI存儲”的框架方案,形成大模型推理架構(gòu)最佳實踐,基于開源的生態(tài)和插件,眾多的存儲廠商都可以遵循相同的標(biāo)準(zhǔn)接入,通過高性能存儲的大范圍全局共享與持久化KV-Cache能力,實現(xiàn)高性價比的以存換算推理加速,幫助以KV-Cache為中心的大模型推理架構(gòu)具備長期記憶能力。

華為數(shù)據(jù)存儲在此次開源項目中扮演了重要角色。

它在此開源架構(gòu)中對推理框架、Transfer Engine和高性能內(nèi)存型存儲進行了擴展與增強。具體來說,華為數(shù)據(jù)存儲面向vLLM、MindIE等主流推理引擎提供了接口適配,并提供了以查代算加速插件Memory X,實現(xiàn)了高性能的長序列推理加速。此外,華為數(shù)據(jù)存儲還提供了高性能檢索服務(wù),通過高維索引與知識/記憶協(xié)同,提供了高效的KV索引構(gòu)建以及大庫容分布式檢索能力。

在高性能分級內(nèi)存擴展方面,華為數(shù)據(jù)存儲的Unified Cache Engine提供了針對KVCache的高效管理與加載能力,支持多硬件形態(tài)統(tǒng)一內(nèi)存服務(wù)。這包括面向KVCache的多級緩存管理,以及面向GPU/NPU的數(shù)據(jù)直通加速和軟硬協(xié)同增強能力。

更重要的是,華為數(shù)據(jù)存儲的高性能內(nèi)存型存儲(OceanStor A系列存儲)基于數(shù)控分離全交換架構(gòu)的原生AI存儲,提供了TB級性能、PB級容量、大規(guī)模共享的全局內(nèi)存擴展池。這實現(xiàn)了高效的KVStore布局、管理與加載策略,提升了KVCache加載效率,為大模型提供了終身記憶和無限上下文能力。

參與開源的首批陣容

此外參與開源的首批陣容還包括AISoft、阿里云、面壁智能、趨境科技等。

可以說,云計算、存儲、AI模型玩家等產(chǎn)學(xué)研力量都聚齊了。

目前Mooncake技術(shù)框架已正式開源上線,官方還表示:

歡迎更多企業(yè)和研究機構(gòu)加入Mooncake項目共建,共同探索更加高效和先進的模型推理系統(tǒng)架構(gòu)創(chuàng)新,讓基于大模型技術(shù)的AI助手等產(chǎn)品,持續(xù)惠及更廣泛人群。

結(jié)語

Kimi開源底層推理框架Mooncake,并攜手華為數(shù)據(jù)存儲等業(yè)界代表廠商和科研團隊共同推動其發(fā)展,是大模型時代的一個重要里程碑。這一項目的成功實施,將為處理長文本和高并發(fā)需求提供有效的解決方案,推動整個行業(yè)向更高效的推理平臺方向發(fā)展。

分享到

lixiangjing

算力豹主編

相關(guān)推薦