目前 Hugging Face (HF) 上有超過 32 萬個模型,這個數字每天都在持續成長。其中只有約 6,000 個模型在 HF 模型中心中表示支援 ONNX,但超過 130,000 個模型支援 ONNX 格式。
ONNX 模型可以透過 ONNX Runtime (ORT) 進行加速,ORT具有跨平台工作並支援許多雲端模型和語言模型的優勢。若你想知道有哪些模型架構被支援,可參考Hugging Face的Transformers文件中的清單。
HF ORT 支援概述
所謂模型架構(Model Architecture)是具有相似運算子(Operator)的模型群組,這表示如果模型架構中的一個模型受 ONNX 支持,則該架構中的其他模型也受 ONNX 支援(極少數例外)。HF 模型中心中的模型可以使用搜尋查詢按模型架構進行篩選(例如,可以使用此Hugging Face 工具找到 BERT 模型架構中的模型數量)。
ORT 支援以下模型架構:
- 模型架構中的一個或多個模型已將 ONNX 列為HF 模型中心中的函式庫
- 此模型架構由 Optimum API 支援(更多資訊)
- 模型架構由 Transformers.js 支援(更多資訊)
ORT 可以大大提高 HF 模型中心中一些最受歡迎模型的效能。使用 ORT 代替 PyTorch 可以改善每次推理的平均延遲(衡量數據接收速度的指標),對於Whisper-Large Model,比 PyTorch 提高高達 50.10%,對於Whisper-Tiny Model,比 PyTorch 提高高達 74.30%模型,可參考下圖:
這些基準測試結果是在 A100 40GB 設備上使用 FP32 運行的。對於 CPU 基準測試,使用 AMD EPYC 7V12 64 核心處理器。ORT 已被證明可以提高性能的其他著名模型包括Stable Diffusion versions 1.5、2.1、T5 等等。
前 30 名的 HF 模型架構均受 ORT 支持,總共有超過 90 個 HF 模型架構支援 ORT。ORT 覆蓋範圍中的任何差距通常代表不太受歡迎的模型架構。
下表列出了排名前 11 的模型架構,所有這些架構都可以使用 Hugging Face Optimum API 轉換為 ONNX,以及上傳到 HF 的相應模型數量(截至本文發布之日)。隨著時間的推移,這些數字將繼續增長,支援的模型架構清單也將繼續增長。
語言模型
ONNX Runtime也支援許多日益普及的語言模型架構,包括 HF 模型中心中提供的大多數架構。這些模型架構包括以下內容,所有這些架構都可以使用 Hugging Face Optimum API 轉換為 ONNX:
對最近發布的 llama2 模型架構的 ONNX Runtime支援仍在進行中,但很快就會在 Hugging Face 上提供。有關社群最近發布的語言模型的更詳細追蹤和評估,請參閱 HF 的Open LLM Leaderboard。
(參考資料;責任編輯:歐敏銓)
延伸閱讀:
Optimum + ONNX Runtime: Easier, Faster training for your Hugging Face models
- AI+無人機守護海域遊憩安全 台南市發表「智慧海灘」成果 - 2024/11/14
- 【多模態時代】LLaVA模型的重要性 - 2024/11/11
- Arm與GitHub聯手助力軟體開發者簡化AI應用部署流程 - 2024/11/07