隨著AI大模型的興起,數(shù)字基礎(chǔ)設(shè)施行業(yè)正面臨前所未有的變革壓力,尤其是作為“三大件”之一的存儲領(lǐng)域。AI大模型,如ChatGPT和Sora,以其卓越的表現(xiàn)刷新了人們對人工智能的認(rèn)知,但這些成就背后是對計算資源、網(wǎng)絡(luò)連接和數(shù)據(jù)存儲能力的極限挑戰(zhàn)。
傳統(tǒng)上,存儲被視為數(shù)據(jù)的倉庫,但在AI大模型的背景下,存儲系統(tǒng)已轉(zhuǎn)變?yōu)閿?shù)據(jù)處理和分析的積極參與者。存儲設(shè)備不僅要提供足夠的空間來容納快速增長的數(shù)據(jù)量,還要具備高效的數(shù)據(jù)管理能力,以確保數(shù)據(jù)可以被迅速地訪問、處理和利用。特別是在數(shù)據(jù)預(yù)處理、模型訓(xùn)練和實(shí)時應(yīng)用等關(guān)鍵環(huán)節(jié),存儲性能直接影響到AI模型的訓(xùn)練速度和最終的業(yè)務(wù)效果。
長久以來,AI領(lǐng)域的焦點(diǎn)集中在算法模型的開發(fā)與訓(xùn)練上,企業(yè)投入大量資源構(gòu)建復(fù)雜模型以提升預(yù)測準(zhǔn)確率和任務(wù)執(zhí)行能力。然而,隨著模型的不斷成熟和應(yīng)用場景的多樣化,如何高效地將這些模型應(yīng)用于實(shí)際業(yè)務(wù)場景,即AI推理,成為了新的關(guān)注點(diǎn)。推理階段涉及到模型在實(shí)時環(huán)境中處理數(shù)據(jù)、做出決策的過程,它直接影響到用戶體驗(yàn)和業(yè)務(wù)效率。
存儲性能差異:
- 訓(xùn)練階段:AI模型訓(xùn)練是一個高度數(shù)據(jù)密集型的過程,需要頻繁地讀取大量訓(xùn)練數(shù)據(jù),對存儲的讀取速度和帶寬有著極高的要求。同時,訓(xùn)練過程中還會產(chǎn)生大量中間結(jié)果和模型檢查點(diǎn),需要快速寫入存儲以備后續(xù)使用或恢復(fù)訓(xùn)練狀態(tài)。
- 推理階段:相比之下,推理過程更多地依賴于模型而非原始數(shù)據(jù),對存儲的讀寫性能要求相對較低,但對響應(yīng)時間和低延遲有更高要求。推理系統(tǒng)需要快速地從存儲中檢索模型參數(shù),并對輸入數(shù)據(jù)進(jìn)行實(shí)時處理,確保用戶體驗(yàn)的流暢性。
存儲容量與成本差異:
- 在訓(xùn)練階段,企業(yè)可能會選擇高性能的全閃存存儲來滿足大數(shù)據(jù)量和高IOPS的需求,這通常意味著較高的成本。
- 隨著重點(diǎn)轉(zhuǎn)向推理,對存儲容量的需求可能減少,但同時對成本效益的追求增加,企業(yè)可能會傾向于采用更為經(jīng)濟(jì)的存儲解決方案,如混合存儲或分層存儲策略,以平衡成本與性能。
數(shù)據(jù)訪問模式差異:
- 訓(xùn)練階段數(shù)據(jù)訪問往往涉及大量隨機(jī)讀寫
- 推理則主要是模型參數(shù)的讀取和少量的輸出數(shù)據(jù)寫入,這要求存儲系統(tǒng)能夠優(yōu)化讀取路徑,減少讀取延遲,提高I/O效率。
AI應(yīng)用程序在處理大規(guī)模數(shù)據(jù)集和復(fù)雜模型訓(xùn)練時,往往展現(xiàn)出獨(dú)特的IO模型,特別是當(dāng)提到"數(shù)百萬個小IO讀寫操作"時,AI工作負(fù)載,尤其是在深度學(xué)習(xí)訓(xùn)練階段,經(jīng)常涉及對大量小塊數(shù)據(jù)的頻繁讀取和寫入操作。
小IO請求相比大塊連續(xù)讀寫更容易造成存儲設(shè)備的隨機(jī)訪問壓力,降低IOPS和吞吐量。AI訓(xùn)練對數(shù)據(jù)訪問延遲非常敏感,頻繁的小I/O可能會累積延遲,影響訓(xùn)練效率和模型收斂速度。大量并發(fā)的小I/O請求可能導(dǎo)致存儲資源過度碎片化,影響存儲空間的有效利用率。
為了優(yōu)化訓(xùn)練效率,實(shí)踐中可能采取以下策略:
- 分層存儲:采用多層次存儲方案,將頻繁訪問的數(shù)據(jù)或活躍數(shù)據(jù)緩存在高速存儲(如SSD)中,而較少訪問的數(shù)據(jù)則存儲在低成本但容量大的存儲(如HDD)中。
- 數(shù)據(jù)預(yù)處理:在訓(xùn)練前進(jìn)行數(shù)據(jù)預(yù)處理,如數(shù)據(jù)壓縮、數(shù)據(jù)增強(qiáng)等,減少實(shí)際需要從存儲中讀取的數(shù)據(jù)量。
- I/O優(yōu)化:利用軟件層面的優(yōu)化,如異步I/O、數(shù)據(jù)預(yù)讀取策略,減少I/O等待時間,提高數(shù)據(jù)讀取效率。
- 分布式訓(xùn)練:采用分布式訓(xùn)練策略,將數(shù)據(jù)集分割到多個計算節(jié)點(diǎn)上,每個節(jié)點(diǎn)獨(dú)立處理一部分?jǐn)?shù)據(jù),這樣可以分散對單一存儲系統(tǒng)的讀取壓力,同時利用多個存儲設(shè)備的總帶寬。
- 分布式存儲:采用分布式文件系統(tǒng)或?qū)ο蟠鎯鉀Q方案,通過并行處理小I/O請求來分散負(fù)載,提高整體系統(tǒng)吞吐量。
- 數(shù)據(jù)預(yù)加載和預(yù)處理:提前將數(shù)據(jù)加載到內(nèi)存或更快的存儲層,并進(jìn)行必要的預(yù)處理,減少實(shí)時I/O需求。
根據(jù)相關(guān)預(yù)測,到2028年,四分之三擁有生成式 AI 訓(xùn)練數(shù)據(jù)的組織將部署單一存儲平臺來存儲數(shù)據(jù),這一比例高于 2024 年的 10%。大多數(shù)企業(yè)將不必為生成式AI構(gòu)建新的存儲基礎(chǔ)設(shè)施,因?yàn)樗麄儗⑽⒄{(diào)現(xiàn)有的大型語言模型(LLMs),而不是訓(xùn)練新模型。
大規(guī)模生成式AI部署將需要獨(dú)特的存儲性能和數(shù)據(jù)管理功能,用于生成式AI工作流程的數(shù)據(jù)攝取、訓(xùn)練、推理和歸檔階段。將數(shù)據(jù)直接引入現(xiàn)成的LLM或部署生成式AI時,獲取“GenAI in a box”融合存儲解決方案。
在使用少量數(shù)據(jù)進(jìn)行訓(xùn)練或采用預(yù)訓(xùn)練模型時,使用現(xiàn)有的企業(yè)存儲平臺:存儲區(qū)域網(wǎng)絡(luò) (SAN)、網(wǎng)絡(luò)附加存儲 (NAS)、對象存儲或超融合基礎(chǔ)設(shè)施 (HCI)。如果要運(yùn)行大規(guī)模生成式AI應(yīng)用程序,需要構(gòu)建一個端到端存儲基礎(chǔ)設(shè)施平臺,該平臺可以支持生成式AI工作流程的所有應(yīng)用階段:數(shù)據(jù)攝取、訓(xùn)練和微調(diào)、推理和歸檔。它應(yīng)該能夠靈活地管理來自多個來源的數(shù)據(jù),包括數(shù)據(jù)中心、邊緣和公有云。
在大多數(shù)情況下,組織在架構(gòu)生成式AI基礎(chǔ)設(shè)施時,服務(wù)器可能需要進(jìn)行重大更新,從基于 CPU 遷移到基于 GPU,以滿足對計算能力的極端需求,特別是在語言模型具有許多參數(shù)的情況下。然而,雖然存儲是生成式AI堆棧中的關(guān)鍵層,完成模型訓(xùn)練時很容易成為瓶頸,但存儲經(jīng)常被組織所忽視。如果選型不當(dāng),存儲可能會減慢 GPU 的整體數(shù)據(jù)傳輸以及模型檢查點(diǎn)和恢復(fù)過程,從而造成GPU速度的降低和關(guān)鍵計算資源的浪費(fèi)。
沒有一種存儲部署類型適合所有企業(yè),也沒有一個單一的功能列表可以指出生成式AI 應(yīng)用程序的最佳存儲類型。如果選擇錯誤的存儲部署類型或忽略生成式AI所需的關(guān)鍵功能,那么可能會帶來一個高昂的代價。
生成式AI使用的存儲需要三組獨(dú)特的功能:
- 單一、可擴(kuò)展的數(shù)據(jù)湖存儲平臺,可以托管用于模型訓(xùn)練的所有數(shù)據(jù)。無論是基于文件或基于對象的用例、吞吐量或延遲敏感的工作負(fù)載、大型或小型文件、元數(shù)據(jù)密集型或數(shù)據(jù)密集型訪問量大的工作負(fù)載。
- 一個可提供足夠高的性能的特定功能集,以在訓(xùn)練階段保持服務(wù)器上的 GPU 占用,并足夠快地完成模型檢查點(diǎn)和恢復(fù)過程。如果存儲無法足夠快地將數(shù)據(jù)提供給 GPU,這些 GPU 就會閑置,這相當(dāng)于浪費(fèi)。
- 一組可提供跨本地部署、多個云和邊緣位置的全局?jǐn)?shù)據(jù)管理功能。訓(xùn)練或完善模型所需的數(shù)據(jù)可能來自多個位置。如果沒有全局?jǐn)?shù)據(jù)管理數(shù)據(jù),則必須對其進(jìn)行復(fù)制,這會導(dǎo)致操作復(fù)雜性和容量浪費(fèi)。
大多數(shù)組織將采用現(xiàn)有的人工智能模型,或根據(jù)其現(xiàn)有業(yè)務(wù)數(shù)據(jù)重新訓(xùn)練現(xiàn)有模型,并可選擇根據(jù)其業(yè)務(wù)需求添加特定的外部數(shù)據(jù)。對于在少量數(shù)據(jù)上使用現(xiàn)有 LLMs 的企業(yè)來說,一體化、全棧、生成式AI一體式融合存儲解決方案很可能是最佳選擇。
當(dāng)主要使用現(xiàn)有數(shù)據(jù)進(jìn)行微調(diào)時,有兩種部署存儲的方法:投資專用的生成式AI盒裝解決方案。這些通常是超融合解決方案,由適當(dāng)大小的存儲、計算和網(wǎng)絡(luò)以及預(yù)訓(xùn)練的 LLM(類似于 Nutanix 的 GPT-in-a-Box)組成。使用現(xiàn)有的存儲基礎(chǔ)設(shè)施,無論數(shù)據(jù)是存儲在文件、對象或塊存儲、外部或直連存儲還是超融合存儲中。對于這種方法,如果組織擁有一個數(shù)據(jù)管理軟件層,可以提供跨不同存儲孤島、本地、邊緣和/或公共云中的數(shù)據(jù)訪問,則會有所幫助。
大規(guī)模生成式AI部署需要先進(jìn)的模型訓(xùn)練和推理能力以及全面的數(shù)據(jù)管理能力。一些 GenAI 工作負(fù)載以 PB 級數(shù)據(jù)量而聞名,這些數(shù)據(jù)量對于 GenAI 工作流程的各個階段有不同的性能和操作要求。對于這些工作負(fù)載,通常使用數(shù)據(jù)湖或分布式存儲系統(tǒng)(例如 Hadoop 或 Spark)來存儲訓(xùn)練數(shù)據(jù)和中間輸出。在訓(xùn)練、微調(diào)和推理方面,專門的 GPU 優(yōu)化的高吞吐量基礎(chǔ)設(shè)施堆棧至關(guān)重要。對于整個流程,具體實(shí)踐者應(yīng)該:
- 將數(shù)據(jù)直接引入現(xiàn)成的LLM或運(yùn)行生成式AI部署時,獲取生成式AI盒裝融合存儲解決方案。
- 使用現(xiàn)有的企業(yè)存儲平臺(SAN、NAS、DFS 或 HCI)來運(yùn)行小規(guī)模生成式AI試點(diǎn)。
- 投資數(shù)據(jù)管理解決方案,以提供跨現(xiàn)有存儲的通用訪問,以及支持自定義標(biāo)記和基于元數(shù)據(jù)搜索能力。
- 在考慮其他供應(yīng)商的新產(chǎn)品之前,請先了解現(xiàn)有存儲供應(yīng)商的生成式AI功能。供應(yīng)商正在快速為 GenAI 構(gòu)建新功能并推出新的專用解決方案。
存儲在此堆棧中發(fā)揮著重要作用,存儲解決方案的選擇取決于人工智能模型的大小。對于較小的型號,本地連接的磁盤存儲可能就足夠了。但較大的模型通常需要基于對象存儲或并行文件系統(tǒng)的共享存儲。對于大規(guī)模 GenAI 系統(tǒng),可擴(kuò)展、高容量和低延遲存儲組件的集成對于處理非結(jié)構(gòu)化數(shù)據(jù)操作時的最佳性能至關(guān)重要。
大規(guī)模 GenAI 部署將通過增加數(shù)據(jù)量、需要支持不同的數(shù)據(jù)類型以及需要高效的數(shù)據(jù)版本控制和生命周期管理來影響非結(jié)構(gòu)化數(shù)據(jù)存儲領(lǐng)域。網(wǎng)絡(luò)和存儲基礎(chǔ)設(shè)施必須適應(yīng)高吞吐量,同時將數(shù)據(jù)丟失降至最低。它還必須是可組合的,從而支持 GenAI 工作負(fù)載不斷變化的需求。此外,GenAI 數(shù)據(jù)平臺必須在 GenAI 工作負(fù)載的不同階段之間實(shí)現(xiàn)混合數(shù)據(jù)管理,以實(shí)現(xiàn)數(shù)據(jù)管道的自動化。最后,GenAI數(shù)據(jù)平臺必須支持高于平常的數(shù)據(jù)安全標(biāo)準(zhǔn),以保護(hù)敏感數(shù)據(jù)。
傳統(tǒng)的存儲基礎(chǔ)設(shè)施方法不適用于 GenAI 工作負(fù)載,因?yàn)槠涔ぷ髁鞒叹哂挟悩?gòu)性。不僅應(yīng)該關(guān)注用于訓(xùn)練 GenAI 模型的高性能存儲,還應(yīng)該構(gòu)建端到端工作流程策略,包括跨邊緣、公共云和本地存儲解決方案提供數(shù)據(jù)管理功能的能力。上表概述了如何評估存儲平臺以滿足大規(guī)模實(shí)施的要求。
目前,GenAI 的早期采用者正在與超大規(guī)模公共云提供商合作,因?yàn)檫@些提供商可以快速容納任何規(guī)模的試點(diǎn)。為大規(guī)模 GenAI 部署構(gòu)建基礎(chǔ)設(shè)施,應(yīng)該:
- 選擇能夠?yàn)槊嫦驇?順序批處理工作負(fù)載和小文件/隨機(jī) I/O 工作負(fù)載提供高性能的供應(yīng)商和產(chǎn)品,因?yàn)榇蠖鄶?shù)傳統(tǒng)解決方案無法為提供良好的性能。
- 使用共享存儲方法來整合數(shù)據(jù)平臺并消除生成式AI數(shù)據(jù)管道階段之間的移動,并提高存儲效率。
- 通過使用高性能結(jié)構(gòu)消除瓶頸并最大限度地提高 GPU 利用率,實(shí)現(xiàn)現(xiàn)有存儲網(wǎng)絡(luò)的現(xiàn)代化。
- 開發(fā)跨不同人工智能數(shù)據(jù)管道階段和部署選項(xiàng)(邊緣、核心和公共云)的集成數(shù)據(jù)管理方法,以避免引入存儲孤島。
總而言之,AI市場正經(jīng)歷著快速的增長,這一增長動力來源于技術(shù)的進(jìn)步、數(shù)據(jù)可用性的增加以及對自動化和智能決策的需求。各行各業(yè)的企業(yè)開始認(rèn)識到AI在提升效率、改善客戶體驗(yàn)以及獲取競爭優(yōu)勢方面的價值。AI市場涵蓋了廣泛的產(chǎn)品和服務(wù),包括AI軟件平臺、支持AI的硬件以及AI服務(wù)。隨著算法的不斷優(yōu)化,尤其是深度學(xué)習(xí)和機(jī)器學(xué)習(xí)領(lǐng)域的突破,AI技術(shù)得以迅速發(fā)展,能夠處理更復(fù)雜的問題。同時,互聯(lián)網(wǎng)、物聯(lián)網(wǎng)(IoT)設(shè)備和社交媒體等產(chǎn)生的海量數(shù)據(jù)為AI模型提供了豐富的學(xué)習(xí)素材,促進(jìn)了AI解決方案的優(yōu)化和創(chuàng)新,選擇合理的數(shù)據(jù)存儲方案,進(jìn)一步加速AI落地。