金磊 發自 凹非寺
量子位 | 公眾號 QbitAI
沒有一個大模型可以一統天下。
這,或許已經成為了AI大模型時代行業里的一個共識。
在如此背景之下,面對眾多且日新月異的主流大模型和AI技術,如何能在一個框架、生態下去體驗,卻成了開發者們“老大難”的問題。
難道就沒有一個又快又好又方便的解決辦法嗎?
有的——
華為開源的昇思MindSpore,了解一下。
在這里,主流SOTA大模型的“搬家”是這樣的——訓練Day0遷移
只需改動極少極少的代碼就OK,并且精度和性能都在線。
推理一鍵部署的:
訓練轉推理全流程自動化,20多個主流大模型開箱即用,百億參數模型加載只需不到30秒。
△MindSpore生態快速遷移解決方案的技術架構
那么昇思MindSpore是如何做到,我們繼續往下看。
改4行代碼,“搬家”DeepSeek-V3
為了讓遷移大模型這件事變得無感知,昇思MindSpore“翻譯神器”——MSAdapter
簡單來說,這個工具可以把其他框架的代碼轉換成MindSpore能看懂的語言,從而實現 “零損耗” 遷移。
比如PyTorch寫的訓練腳本,直接在MindSpore里運行,動態圖體驗和原來一樣順手,95%以上的接口都能自動轉換,遷移損耗幾乎為零。
在此背后還有其他的“獨家秘笈”,加速訓練調試調優,具體技術如下:
- 動態圖多級流水:把算子(模型的基本計算單元)的處理拆成4個階段(如Python 轉換、形狀推導等),用多核并行處理,速度提升3-4倍。
- JIT 編譯:把常用代碼 “打包” 成高效執行的模塊,像把重復工作做成模板,用的時候直接拿出來用,兼顧靈活編程和高性能。
- 自動策略尋優:大模型訓練需要選最佳并行策略(比如數據并行、張量并行等),傳統靠專家經驗,現在MindSpore能自動搜索最優方案,比如在DeepSeek-V3訓練中,性能提升了9.5%。
- 執行序比對:大模型訓練可能因算子執行順序不同導致精度問題,MindSpore能自動比對執行順序,快速找到差異,避免人工排查幾十萬算子的麻煩。
△MindSpore訓練Day0遷移方案
以DeepSeek-V3為例,代碼改動量如下:
- Shell腳本:修改分布式任務啟動相關參數,共涉及4行代碼調整。
- Python腳本:變更量占比<1%,已通過代碼補丁工具自動完成修改。
不僅精度上可以實現Day0對齊,而且在保持并行策略一致的情況下疊加MindSpore自研增量特性,性能還能提升5%
HuggingFace模型們,推理一鍵部署
在推理部署這塊兒,昇思則是用vLLM-MindSpore插件能讓HuggingFace模型在半小時內完成部署并上線。
△vLLM x MindSpore 框架圖
要是碰到千億參數的大模型,MindSpore用三層部署模式重新打造了推理流程:
- 直接用HuggingFace的權重:能直接加載HuggingFace的模型權重,不用轉換格式;通過vLLM - MindSpore插件,短短幾分鐘就能把模型變成可提供服務的狀態。
- 模型拿來就能用:支持很多業內常用的模型,拿來就能直接用,像DeepSeek、Pangu、Qwen這些,已經有20多個模型上線了。
- 減少啟動時的延遲:權重加載花費的時間減少了80%(百億參數的模型加載時間不到30秒);圖編譯的延遲也壓縮到了毫秒級別。
從實測效果來看,以Pangu Pro MoE 72B為例,使用vLLM和MindSpore在Atlas 800I A2上部署推理服務,當前在時延小于100ms的情況下單卡增量吞吐可達每秒1020tokens,在Atlas 300I Pro上可達每秒130tokens。
以上便是關于昇思MindSpore“訓練Day0遷移、推理一鍵部署”的大致內容了,了解更多詳情可戳。
技術報告地址:
https://gitcode.com/ascend-tribe/ascend-cluster-infra/blob/main/MindSpore/ascend-cluster-infra-mindspore.md
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.