技術指南

FP8 和低精度格式

FP8 是一種 8 位元浮點數格式,允許 AI 模型使用標準 32 位元數字四分之一的記憶體來儲存權重並運行數學。

概述

FP8 是一種 8 位元浮點數格式,允許 AI 模型使用標準 32 位元數字四分之一的記憶體來儲存權重並運行數學。這是讓巨型模型更便宜、更快訓練和服務的關鍵技巧。

FP8 和低精度格式是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。

深入探討

神經網路由數十億個數字組成。傳統上,這些數字均使用 32 位元 (FP32) 或 16 位元 (FP16/BF16)。 FP8 將它們縮小到只有 8 位,與 16 位相比,記憶體和頻寬大約減少了一半。有兩種常見的 FP8 佈局:E4M3(4 個指數位,3 個尾數位)提供更高的精度,但範圍更小,而 E5M2(5 個指數,2 個尾數)提供更寬的範圍,但步長更粗。權衡是保真度:更少的位數意味著舍入誤差。為了保持準確性,框架應用每個張量或每個區塊的縮放因子,將數值重新調整到 FP8 的可用範圍。 NVIDIA 的 Hopper 和 Blackwell GPU 增加了硬體 FP8 矩陣引擎,使其適用於訓練和推理。 MXFP8、MXFP4 和 NVFP4 等較新的格式透過共享微縮放塊將效能推得更低。

技術洞察

FP8 的挑戰是動態範圍。僅使用少量指數位,大或小的活化就會溢出或下溢為零。解決方法是縮放:將張量乘以一個因子,使其值落在 FP8 的可表示視窗中,進行 FP8 乘法累加,然後除掉,通常以更高的精度累加部分和(FP16/FP32)。 E4M3 通常用於權重和激活,E5M2 用於梯度,其中範圍比精度更重要。

掌握 FP8 和低精度格式

FP8 是一種 8 位元浮點數格式,允許 AI 模型使用標準 32 位元數字四分之一的記憶體來儲存權重並運行數學。這是讓巨型模型更便宜、更快訓練和服務的關鍵技巧。 FP8 和低精度格式是一個技術構建塊,會大規模影響模型品質、基礎設施成本、延遲和可靠性。為了建立深入的理解,請將 FP8 和低精度格式視為一種操作模型,而不是單一功能:定義所需的結果,澄清假設,並將系統可以可靠地執行的操作與仍需要專家判斷的操作分開。

在實踐中,使用 FP8 和低精度格式的強大團隊根據可靠性和成本優化架構、資料和基礎設施選擇。他們記錄明確的成功標準,根據實際數據和工作流程進行測試,並根據觀察到的失敗模式而不是一次性基準測試勝利進行迭代。這就是理論理解轉變為跨產品、政策和營運的持久能力的地方。

多年來,架構決策決定著效能和營運成本。同時,優化一個基準測試可以隱藏更廣泛的系統弱點。最具彈性的方法是將實驗速度與治理規則結合:運行試點、捕獲證據、發布決策日誌,並隨著模型行為、使用者期望和監管要求的發展不斷更新保障措施。

戰略影響

多年來,架構決策決定著效能和營運成本。

多年來,架構決策決定著效能和營運成本。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

技術教育幫助團隊選擇正確的堆疊,而不僅僅是最新的堆疊。

技術教育幫助團隊選擇正確的堆疊,而不僅僅是最新的堆疊。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

更好的工程選擇可以減少生產中的可靠性事故。

更好的工程選擇可以減少生產中的可靠性事故。在高品質部署中,這會轉化為可衡量的操作規則、所有權邊界和定期審查儀式,以便團隊可以增強信心,而不是擴大模糊性。

FP8 和低精度格式的未來

精度正在急劇下降。 FP8 之後出現了 4 位元微縮放格式(MXFP4、NVFP4),每個小塊包含一個微小的共享縮放,Blackwell 硬體現在可以直接加速 FP4。期望混合精確度配方,其中不同層使用不同的位元寬度,加上更好的量化感知訓練,因此 4 位元成為推理的預設值。最終的目標是將前沿規模的模型壓縮到更少、更便宜的晶片上,而不會造成明顯的品質損失。

現實世界的實施

使用 FP8 在 NVIDIA Hopper/Blackwell GPU 上訓練大型語言模型,吞吐量比 BF16 大約翻倍

在 FP8 中提供聊天機器人推理服務,以便模型適合更少的 GPU 並每秒回應更多請求

在分佈式訓練過程中使用E5M2進行梯度通信,以減少節點之間的網路頻寬

部署 MXFP4/NVFP4 量化模型以在單一高記憶體 GPU 上擬合前沿規模模型,以實現更便宜的推理

實施模式

FP8 和低精度格式的實踐

使用 FP8 在 NVIDIA Hopper/Blackwell GPU 上訓練大型語言模型,吞吐量約為 BF16 的兩倍。

使用 FP8 在 NVIDIA Hopper/Blackwell GPU 上訓練大型語言模型,吞吐量約為 BF16 的兩倍。當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並追蹤一段時間內的生產力提升和錯誤成本時,通常會獲得更好的結果。

FP8 和低精度格式的實踐

在 FP8 中提供聊天機器人推理服務,以便模型適合更少的 GPU 並每秒回答更多請求。

在 FP8 中提供聊天機器人推理服務,以便模型適合更少的 GPU 並每秒響應更多請求 當團隊預先定義質量閾值、為邊緣情況保留人工升級路徑並跟踪一段時間內的生產力提升和錯誤成本時,通常會獲得更好的結果。

FP8 和低精度格式的實踐

在分散式訓練過程中使用E5M2進行梯度通信,以減少節點之間的網路頻寬。

在分佈式訓練期間使用 E5M2 進行梯度通信,以減少節點之間的網路頻寬 當團隊預先定義質量閾值、為邊緣情況保留人工升級路徑並追蹤一段時間內的生產力增益和錯誤成本時,通常會獲得更好的結果。

FP8 和低精度格式的實踐

部署 MXFP4/NVFP4 量化模型以在單一高記憶體 GPU 上擬合前沿規模模型,以實現更便宜的推理。

部署 MXFP4/NVFP4 量化模型以在單一高記憶體 GPU 上擬合前沿規模模型,以實現更便宜的推理 當團隊預先定義品質閾值、為邊緣情況保留人工升級路徑並隨著時間的推移追蹤生產力增益和錯誤成本時,通常會獲得更好的結果。

風險與防護欄

!

優化一項基準測試可以隱藏更廣泛的系統弱點。

!

基礎設施和維護成本常常被低估。

!

隨著系統變得更加複雜,安全性和可觀察性差距可能會擴大。

實施路線圖

1

在實施之前定義延遲、品質和成本目標。

在實施之前定義延遲、品質和成本目標。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

2

在實際負載和資料條件下進行基準測試。

在實際負載和資料條件下進行基準測試。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

3

儀器監控錯誤、漂移和使用者影響。

儀器監控錯誤、漂移和使用者影響。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

4

在擴展之前準備回滾和事件回應路徑。

在擴展之前準備回滾和事件回應路徑。將每個步驟視為證據門:如果不符合標準,則暫停推出,縮小差距,然後再擴大使用。

不斷探索