摘要:以前適配國產芯片:掉頭發、改代碼、查文檔、修報錯?,F在適配國產芯片:敲一行命令,然后去喝咖啡。
做過國產芯片模型遷移的兄弟們,應該都懂那種痛。
明明手里的國產卡(NPU)理論參數很強,價格也香,但代碼一下載,心態就崩了:全是 CUDA 依賴。
好不容易改完了 import,一跑起來,報錯提示比代碼行數還長;咬牙查文檔寫了個算子,結果速度慢得像在跑 CPU。
大家常在群里自嘲:現在的 AI 產業,不僅有人工智能,還有大量的“人工”智能——全靠工程師沒日沒夜地手工填坑。
但這一次,在遷移DeepSeek-OCR-2時,我們決定“偷個懶”。我們沒有派出一整個算法團隊去死磕,而是只派出了一個 Agent ——智子芯元 KernelCAT。
結果它用了38分鐘,干完了我們原來要干一周的活。

KernelCAT CLI版

KernelCAT桌面端
接到任務:把“大象”裝進“冰箱”
任務很明確:把 DeepSeek-OCR-2部署到華為昇騰Atlas A2上。
這不是個輕松活。DeepSeek-OCR-2結構復雜,涉及視覺編碼和文本生成的協同,對算子精度和顯存管理要求極高。如果是按傳統流程,我得準備好紅牛,打開十幾個網頁標簽,準備迎接“版本地獄”。
但這次,我只是打開了 KernelCAT 的終端,輸入了一行指令,告訴它我的目標。
然后,我就雙手離開鍵盤,準備看戲了。

第一關:它自己看懂了“方言”
KernelCAT 啟動后的第一件事,是給代碼做“體檢”。
它迅速掃描了整個項目,發現原版 vLLM 的 MOE(混合專家)層里,大量使用了針對英偉達 GPU 優化的特有指令。這就像是一個只說英語的老外,你非讓他去廣東菜市場買菜,肯定行不通。
如果是人工遷移,這時候我得去翻 CANN 的開發者文檔,一行行查對應的 API 怎么寫。
但 KernelCAT 與眾不同,它沒有報錯然后等待人類幫助,而是直接生成了一份遷移計劃,標記出了所有需要“翻譯”的關鍵節點。
第二關:自動修補“斷路”
最讓人頭大的環境配置開始了。
DeepSeek-OCR-2對環境極其挑剔,vLLM、torch 和 torch_npu 只要有一個版本對不上,就是滿屏紅字。
我看這就眼熟的操作:KernelCAT 開始自動下載依賴,檢測到版本沖突時,它沒有把問題拋回給我,而是自己生成了 Patch(補?。?。
這就好比裝修房子,發現水管接口尺寸不對。普通師傅會讓你去買轉接頭,而 KernelCAT 直接現場3D 打印了一個轉接頭裝上了。
“Environment setup completed.”看到這行字跳出來的時候,我手里的咖啡還是熱的。

第三關:它嫌原生算子太慢,自己改了
模型跑通了,但重頭戲還在后面。
一開始,推理速度只有15toks/s 左右。按理說,能跑通已經謝天謝地了,但 KernelCAT 顯然是個完美主義者。
它通過分析計算圖,發現通用的算子在昇騰 NPU 上效率不高。于是,它自己引入vllm-ascend原生MOE實現等補丁,把那些“蹩腳”的通用計算邏輯,全部替換成了針對國產硬件優化過的。
見證奇跡的時刻到了。
當屏幕上的進度條再次滾動,吞吐量數值開始瘋狂跳動,最終穩定在了550.45toks/s。相比Transformers方案實現了驚人的35倍加速!
我揉了揉眼睛,確認沒看錯小數點。這不僅僅是“能用”,這簡直是“起飛”。

結語:讓 AI 去造 AI
整個遷移任務期間,我沒有寫一行代碼,沒有翻一頁文檔,甚至沒怎么動鼠標。
這或許就是未來的開發范式:人類定義目標,AI 解決路徑。
我們不再需要為了適配硬件而變成“為了醋包頓餃子”的底層搬磚工。KernelCAT 讓國產芯片不再是被生態封印的“算力廢鐵”,而是變成觸手可及的性能引擎。
無論你是想跑 DeepSeek系列模型,還是其他自研模型,KernelCAT 都能幫你打通這“最后一公里”,不挑硬件,不挑語言。
以后這種費頭發的活,還是交給 AI 去干吧。畢竟,它不嫌累,也不用睡。
福利時間
不想再在這個周末加班寫算子了?
KernelCAT 現已開放限時免費內測!支持 Linux x86/ARM 及 macOS。
(推廣)
