ACK 雲原生 AI 套件:雲原生 AI 工程化落地最優路徑

前言

在過去幾年中,人工智能技術取得了突飛猛進的發展,涵蓋了機器學習、深度學習和神經網絡等關鍵技術的重大突破,這使得人工智能在各個領域都得到廣泛應用,對各行各業產生了深遠的影響。

特別值得一提的是,近年來,ChatGPT 的快速發展,使得人工智能技術在自然語言處理和對話生成方面取得了顯著進展,讓人工智能進一步走進人們的日常生活,改變我們的生活和工作方式。

隨着人工智能技術的快速發展和應用,AI 工程化作爲“人工智能業務創新的加速器”,也在不斷地升級和演進。

爲了滿足日益增長的算力需求、更高的業務穩定性要求,以及更快的創新和迭代交付,越來越多企業選擇在雲上開發、訓練和部署 AI 模型,利用雲計算的優勢,獲取穩定、彈性的大規模異構算力,從而提高算法迭代和應用落地的效率,並提升規模化服務的可靠性。

同時,雲原生技術和架構,如容器、Kubernetes、服務網格和 Serverless 等,也被廣泛應用於支持 AI、大數據等多種工作負載類型,以及構建多角色協同的 AI 生產系統,進一步增強了 AI 工程化的彈性、可擴展性和靈活性。

隨着越來越多的企業在容器服務 ACK 上構建 AI 系統和應用,無論是 ACK 集羣和 AI 平臺的運維人員,還是使用容器技術調試和運行深度學習任務的算法工程師,他們都在享受雲原生技術和架構帶來的便利和高效的同時,仍然面臨着持續的運維成本和生產效率的挑戰。

因此,爲了幫助客戶更輕鬆、高效地在容器服務 ACK 上構建 AI 系統,並提升 AI 生產效率,我們推出了容器服務 ACK 雲原生 AI 套件。

旨在利用雲原生的技術和架構,爲客戶提供一個全面的雲原生 AI 技術和產品方案,能夠幫助客戶在容器服務 ACK 上快速、定製化構建 AI 生產系統,並持續優化異構資源效率、高效運行異構負載。讓客戶的 AI 工程化落地更加快速和有效,從而提升企業的競爭力和創新能力。

什麼是雲原生 AI 套件

那雲原生 AI 套件是以什麼樣的形態提供給客戶的,適合什麼樣的客戶場景,又具有哪些能力優勢呢?

首先,我們看下雲原生 AI 套件的產品形態,如何把雲原生 AI 的能力提供給客戶?

雲原生 AI 套件通過多個可組裝、可擴展、可定製的組件來提供雲原生 AI 能力。以 Kubernetes 容器服務爲底座,向下封裝對各類異構資源的統一管理,向上提供標準 Kubernetes 集羣環境和 API,運行各個核心組件。並結合容器鏡像服務,以及可觀測、智能診斷、彈性伸縮等容器服務相關能力,提供更加全面的產品方案。

雲原生 AI 套件的核心組件能力包括四大分層模塊,以滿足企業客戶不同角色、不同架構層級的場景需求。從下往上依次是異構算力管理、AI 任務管理、AI 數據加速、AI 工程管理。

雲原生 AI 工程化的第一步,就是搭建一個 K8s 集羣管理雲上的異構算力,因此第一層就是異構算力管理模塊,包括對異構資源的管理運維、彈性伸縮,以及調度與共享。

有了異構計算集羣,算法工程師就可以開始提交 AI 作業,通過 K8s 集羣的標準接口訪問存儲服務,以及進行 AI 作業調度和 GPU 資源分配,最後訓練好的模型部署在集羣中,這樣基本實現了 AI 開發和生產流程。因此,往上一層是 AI 任務管理,包括對 AI 任務的提交運行、調度與彈性。

緊接着,企業對生產效率有了更高要求,也遇到更多問題。包括訓練數據訪問慢,缺少數據集、模型管理,模型發佈缺乏質量和性能驗證,上線後缺少服務化運維和治理手段,以及團隊協作效率低下,Kubernetes 和容器對於算法工程師和數據科學家有一定使用門檻,等等。

因此,往上就 AI 數據加速和 AI 工程管理。AI 數據加速,包括數據集的抽象和管理、數據的訪問加速、數據集的編排等等。AI 工程管理,包括命令行工具和 SDK、AI 開發和運維控制檯,以及 MLOps 或者 LLMOps 的優化。客戶可以根據具體需求選擇不同的組件進行使用,快速、定製化構建自己的 AI 平臺,或者直接使用雲原生 AI 套件集成的阿里雲 AI 平臺和服務,從而全棧優化 AI 生產系統的性能、效率和成本。

使用雲原生 AI 套件可以實現 GPU 利用率提升 100%,數據訪問效率提升 30%,AI 訓練速度提升 20%。

那接下來我們具體看一下,四大分層能力模塊,分別具備哪些優勢特性,如何滿足不同角色、不同架構層級、不同業務階段的需求。

還是以從下往上的順序來看,讓我們看一下異構算力管理模塊,我們基於容器服務 ACK 提供了資源的管理運維和彈性伸縮,能夠支持 CPU、GPU、vGPU、NPU、FPGA 等異構資源的統一接入、監控、診斷和成本分析,幫助運維人員降低管理大規模 GPU 的複雜度,以及提供智能的削峯填谷,減少資源浪費。雲原生 AI 套件還提供了資源調度與共享功能,包括 CPU/GPU 拓撲感知調度和 GPU 共享調度與隔離。CPU/GPU 拓撲感知調度基於節點異構資源的拓撲信息,如 GPU 卡之間的 NVLink、PcleSwitch 等通信方式,以及 CPU 的 NUMA 拓撲結構等,在集羣維度進行最佳的調度選擇,爲工作負載提供更好的性能。GPU 共享調度與隔離,能夠實現一個 GPU 供多個任務使用,同時也能夠實現一個 GPU 上對各應用申請的顯存進行隔離以及 GPU 的算力分割,從而提升 GPU 的資源利用率。

接着看一下 AI 任務管理模塊,雲原生 AI 套件兼容主流 AI 框架和工具,包括 tensorflow、pytorch、JupyterLab、TF-Serving、Triton 等等,也在不斷的適配新的分佈式訓練和推理的框架,如 deepspeed、fasttransformer 等等,能夠用統一的方式提交和管理任務。同時,支持集成 Kubeflow Pipelines 或 Argo 雲原生工作流引擎,爲複雜的 AI 任務提供工作流編排服務。AI 任務管理模塊還提供多種調度策略,適用於各種典型的批量任務類型,如 AI 分佈式訓練。通過 ACK 調度器擴展 Kubernetes 原生調度框架,實現多種典型批量調度策略,包括 Gang Scheduling、Capacity Scheduling、Fair sharing、Binpack/Spread 等,以滿足不同任務的調度需求。還支持任務隊列,提供自定義的任務優先級管理和租戶彈性資源配額控制,提高任務調度和資源利用的效率。此外,還支持彈性訓練和推理任務,以提升任務運行的效率和優化成本。

再看一下 AI 數據加速模塊,該模塊主要通過面向雲原生數據密集型應用的數據編排框架 Fluid 來支持。Fluid 提出彈性數據集的概念,將不同位置和類型的存儲服務作爲數據源聚合到同一數據集中,以實現數據的統一管理。Fluid 支持多種分佈式緩存引擎,包括阿里雲 JindoRuntime、EFCRuntime,以及開源社區提供的 AlluxioRuntime、JuiceFSRuntime,同時還可以通過對接 Fluid 的標準接口來擴展第三方或者自建的存儲系統。結合 Fluid 提供數據集緩存預熱,以及緩存數據的容量監控和彈性伸縮等功能,來降低計算任務拉取數據的開銷,提升 GPU 計算效率。Fluid 還支持 Serverless 數據訪問加速,實現數據訪問吞吐的彈性擴容,以及混合雲數據訪問加速,在彈性上雲的同時能夠安全、快速地訪問自建存儲。Fluid 還支持應用協同編排和自動化數據流等功能,讓用戶在雲上使用數據的過程更加簡單化和自動化。

最後是 AI 工程管理模塊,除了提供 Arena 命令行工具和 SDK,來屏蔽底層複雜性,簡化任務管理之外,還提供簡單的運維大盤和開發控制檯,滿足用戶快速瀏覽集羣狀態、提交和查看任務的需要。同時,雲原生 AI 套件致力於持續優化 AI 生產效率和體驗,並且全面擁抱大模型生態,支持 MLOps、LLMOps 等相關領域的需求。

通過前面的介紹,相信您已經基本瞭解了雲原生 AI 套件,接下來讓我們一起看兩個典型的客戶案例吧!

客戶案例

第一個是任意門:基於雲原生 AI 套件打造人工智能社交網絡平臺的案例。

任意門的 SoulAPP 是基於興趣圖譜和遊戲化玩法構建的移動社交網絡,有豐富的 AI 業務場景,包括語音匹配、聊天機器人、文本識別、圖像識別、多模態等。

但在傳統的虛擬機構建部署方式下,缺乏一個統一的管控平臺,導致:

  • 業務迭代速度慢:研發工程師需要花費大量時間在底層資源和環境的準備、管理和運維上,無法專注於業務開發。
  • 運維工作重複:需要做很多重複的環境配置和問題處理,人力投入大,運維效率低。
  • 資源性價比低:有大量堆積機器,且資源利用率低,導致資源閒置浪費。

任意門在阿里雲上,通過容器服務 ACK 雲原生AI 套件,構建了符合開源標準、自主掌控的 AI PaaS 平臺,管理了從初期的數十張 GPU 卡到近千張的超大規模,節省 1 倍運維成本。並且開發迭代效率提升 2~5 倍,日承載 AI 業務發佈數百次,很好地支撐了業務的高速發展。通過 GPU 共享及 Fluid 數據加速能力,提升業務效能,資源成本節約 50%。

第二個案例是小米機器學習平臺:基於 Fluid 的 Serverless 混合雲容器 AI 平臺。

小米機器學習平臺(CloudML)承載了圖像、NLP、聲學、搜索推薦等應用業務,是小米針對機器學習進行全流程優化的高性能、分佈式雲服務。

支撐 CloudML 的自建集羣由於資源池容量、資源彈性能力相對有限,導致業務低谷時資源閒置成本高,業務高峯時資源緊張。遷移到基於 Serverless 容器架構的混合雲之後,獲得了 Serverless 容器帶來的敏捷、安全、彈性、低成本等優勢,然而也遇到了幾個重要的技術挑戰:

  • 無法定製擴展存儲類型:公有云集羣只支持阿里雲存儲類型(如 NAS、OSS等),無法直接適配內部自研的分佈式文件存儲(StarFS)。
  • 缺乏可信透明的數據接入方式:如何在 Serverless 容器的黑盒系統使用過程中規避數據泄露,如何確保數據存儲、傳輸、訪問過程中安全可靠,缺乏對應的解決方案。
  • 基礎設施差異導致用戶體驗不一致:混合雲場景中,當用戶任務在公有云和自建集羣之間進行遷移時,用戶使用體驗需要與自建集羣上保持一致,不需要做過多的變更。

通過阿里雲 ACK 雲原生 AI 套件中提供的 Fluid 存儲系統接入方案可以很好的解決以上問題:

首先,對於自建存儲 StarFS 的訪問提供了很好的擴展支持,並且得益於 Fluid 提供的數據集可觀測性功能,能夠獲取雲上工作負載的數據訪問特性,從而支持數據熱加載和資源分配調優。

其次,方案接入簡單、管理便捷。可以自行完成 StarFS 與 Kubernetes 環境的對接工作,整個 thinRuntime開發簡單,無需具備複雜的 Kubernetes 定製開發知識。

基於這套方案,只需要瞭解 Dockerfile 構建就可以完成,開發工作 2-3 小時左右,顯著降低了使用 ECI 接入 StarFS 的工作成本。

瞭解了雲原生 AI 套件的能力優勢和客戶案例,如果您的業務也有類似的需求,那接下來我們就介紹一下雲原生 AI 套件怎麼用,並且會提供一些有趣的實驗讓您快速上手。

雲原生 AI 套件用法

雲原生 AI 套件通常存在兩類用戶角色,運維管理員主要負責搭建 AI 基礎架構和日常管理,而數據科學家和算法工程師則使用雲原生 AI 套件提交和管理任務。

這兩類角色可以通過命令行工具和控制檯進行高效的操作和協同。

首先運維管理員需要先創建和配置 ACK 集羣,以及相關的資源和服務,並添加異構資源進行管理和運維。接着進行系統與環境搭建,包括開通和安裝雲原生 AI 套件,管理用戶和配額,準備數據等工作。

完成這些準備工作後,算法工程師和數據科學家就可以開始使用雲原生 AI 套件提供的命令行工具 Arena 或 AI 套件開發控制檯,進行模型的開發、訓練與部署,利用調度、彈性、數據訪問加速等能力,提高 AI 生產效率和性能,以及進行推理的服務化運維。運維管理員則可以通過運維控制檯查看集羣、節點、訓練任務、資源配額、成本分析等監控大盤,從而對集羣進行實時監控和管理。

這種高效協同的工作模式,能夠提高生產效率,優化資源利用和管理。

如果您想先從部分簡單的功能入手,快速入門雲原生 AI 套件,我們爲您準備了低門檻、低成本的保姆級實驗教程,讓您通過簡單有趣的小場景,感受雲原生 AI 套件加速 AI 工程化的過程。

關於費用呢,雲原生 AI 套件是按量計費,先試用,後付費。

使用雲原生 AI 套件所產生費用 = 雲原生 AI 套件費用 + ACK 費用 + 其他雲產品費用

雲原生 AI 套件採用階梯型計費方式,若 GPU 卡數當日最大值不超過 8 張,雲原生 AI 套件本身免費。

如果您希望全面、深入地瞭解雲原生 AI 套件的更多能力,我們還爲您提供了雲原生 AI 工程化實踐系列課程,這些課程將幫助您上手雲原生 AI 套件的更多功能和最佳實踐,讓您能夠更好地應用於實際項目中。

除了課程,我們還爲您提供了交流羣,您可以與我們進行互動和交流。在交流羣中,您可以及時瞭解雲原生 AI 套件的產品動態,探討雲原生 AI 最新的技術發展。同時,我們也將根據您的業務場景,爲您提供更加針對性的解決方案和服務支持。

實驗 1:雲原生 AI 套件:五分鐘微調寶可夢風格 StableDiffusion[1]

實驗 2:雲原生 AI 套件:一鍵訓練大模型及部署 GPU 共享推理服務[2]

更多實驗請見:雲原生 AI 工程化實踐系列課[3]

希望您能夠持續關注雲原生 AI 套件,讓我們幫助您以雲原生的技術和架構加速 AI 工程化落地,提高 AI 生產效率並優化成本,同時,我們也將不斷髮掘雲原生 AI 的技術和應用,爲您提供更加豐富的產品能力,更加優質的服務和體驗。

相關鏈接:

[1] 雲原生 AI 套件:五分鐘微調寶可夢風格 StableDiffusion

https://developer.aliyun.com/adc/scenario/5d4b9f5be5104302b9c4ca2fd1a4755e

[2] 雲原生 AI 套件:一鍵訓練大模型及部署 GPU 共享推理服務

https://developer.aliyun.com/adc/scenario/99e00d4dea0e4fbf952780b30136209d

[3] 雲原生 AI 工程化實踐系列課

https://developer.aliyun.com/adc/scenarioSeries/e5427732f6e94cde939a7aeed1d19180

作者:胡玉瑜(稚柳)

點擊立即免費試用雲產品 開啓雲上實踐之旅!

原文鏈接

本文爲阿里雲原創內容,未經允許不得轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章