談到大模型私有化部署,很多人會首先想到數據中心,以為動輒就得使用很多臺服務來支撐。一些中小企業或者應用部門,主要做知識庫和智能體方向的應用,模型大小基本在70B以內。只要搭配合理,用本地的專業工作站同樣可以訓練推理,算得上極具性價比的方案了。
隨著OpenAI o1-preview的發布,大模型已經越發成熟,距離走入企業生產應用已經很近了。但OpenAI提供訪問的次數非常有限,這給企業用戶的AI應用普及帶來了一定的費用焦慮和困擾。為了應對日益增長的訪問頻率需求,越來越多的企業用戶傾向于大模型的本地化部署。大模型本地部署可以極大地降低數據泄漏的風險,而且系統響應速度和實時性更強,在一些需要快速反饋的場景里優勢非常明顯,同時也能應對企業個性化需求。
通過在傳統數據中心上進行本地大模型部署的方法,會對IT設施帶來比較大的挑戰,因為從計算資源來說,很多企業的數據中心計算資源很緊張,而且擴展成本比較高,甚至有些中小企業還不具備搭建數據中心的能力。所幸的是,對于知識庫等企業級AI 應用來說,完全可以用高配的AI工作站來應對計算需求,以經濟高效的方式減輕對數據中心計算資源的壓力,從而降低云服務的成本支出。
這次我們選用的是Dell Precision 7960 Tower,搭載了4張「NVIDIA RTX 5880 Ada 」顯卡,每張顯卡顯存48GB,相當于在1臺工作站里就能最多有192GB顯存,完全可以部署Llama3.1 70B模型。
Dell Precision 7960 Tower
70B模型擁有700億參數量,在語言理解和生成方面具有顯著優勢,已經能夠滿足常見的企業級AI應用,比如知識庫應用、對話問答等,同時多任務處理能力也很強,可以支持企業在一個統一的平臺上運行多種AI 應用。同時,開源大模型70B的開放和靈活使得它在市場上具有廣泛的適用性,大大降低企業的使用成本。而且量化后的70B模型僅占70G的顯存,非常適合部署在工作站上,降低計算資源方面的成本。
購置機器前我們做了相對完整的測試和驗證,包括推理、訓練和噪音測試,下面給大家分享一些數據。
一、測試環境
硬件配置:
硬件平臺:Dell Precision 7960 Tower
CPU: Intel(R) Xeon(R) w5-3433
內存:64G DDR5 * 8
GPU: NVIDIA RTX 5880 ada * 4
軟件平臺環境:
操作系統:ubuntu22.04
Driver Version: 550.107.02
CUDA: 12.1
軟件包:conda python3.10 torch2.4 vllm0.6.1
測試模型:
這次我們分別測試了單GPU、雙GPU以及四卡GPU的表現情況。并在不同的模型下進行測試,模型參數分別為8B/13B/32B/70B,具體模型名稱如下:
Meta-Llama-3.1-8B-Instruct
Baichuan2-13B-Chat
Qwen1.5-32B-Chat
Meta-Llama-3.1-70B-Instruct
說明:接下來的推理測試,會使用FP16或FP8格式進行測試。在模型名稱的后綴,如果有FP8字樣,則使用的是FP8格式,否則使用的是FP16格式。
FP8是NVIDIA、Arm、Intel聯合推出的8位浮點數據格式,用于加速深度學習訓練和推理。相對于常用的半精度FP16而言,FP8在不損失多少精度的情況下,將顯存的占用大小減少了一半,特別適合于將大模型部署于工作站上。FP8訓練利用E5M2/E4M3格式,具備與FP16相當的動態范圍,適用于反向傳播與前向傳播。FP8訓練在相同加速平臺上的峰值性能顯著超越FP16/BF16,并且模型參數越大,訓練加速效果越好,且其與16-bits訓練在收斂性和下游任務表現上無顯著差異。
推理框架:
vllm推理引擎來進行測試,為最大程度利用GPU顯存,將其GPU utilization參數設置為0.99。
述語說明:
Batch size: 推理或訓練時輸入的數據批量數量,為1表示單個輸入,例如一段文字,為2表明同時進行兩段文字的生成,以此類推。它代表的是用戶并發數量。
token/s:推理或訓練的速度,每秒生成的數量。一個token是代表一個單詞或詞根,如果是中文的話,可能是一個字或一個詞。
AI 應用場景測試列表