• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • 生成式人工智能/大語言模型

    借助 Llama-3.1-Nemotron-51B 實現準確性和效率的突破性發展

    今天,NVIDIA 發布了一個獨特的語言模型,可提供無與倫比的準確性和效率性能。Llama 3.1-Nemotron-51B 衍生自 Meta 的 Llama-3.1-70B,使用了一種新穎的神經架構搜索(Neural Architecture Search,NAS)方法,可生成高度準確和高效的模型。該模型適合高工作負載下的單個 NVIDIA H100 GPU,使其更易于訪問和經濟實惠。新模型展示的出色準確性和效率亮點源于模型架構的變化,這些變化導致顯存占用顯著減少,內存帶寬減少,浮點運算次數(FLOPs)降低,同時保持出色的準確性。我們證明,通過從參考模型創建另一個更小、更快速的變體,可以推廣這種方法。

    2024 年 7 月,Meta 發布了 Llama-3.1-70B,這是一種領先的先進大語言模型 (LLM)。今天,我們宣布推出 Llama 3.1-Nemotron-51B-Instruct ,該模型使用 NAS 和從“參考模型”(Llama 3.1-70B)衍生的知識蒸餾進行開發。

    出色的吞吐量和工作負載效率?

    與參考模型相比,Nemotron 模型的推理速度快 2.2 倍,同時保持幾乎相同的準確性。該模型提供了一系列新的機會,同時減少了內存占用,因此可以在推理期間在單個 GPU 上運行 4 倍以上的工作負載。

    ? 準確率 效率
    ? MT 工作臺 MMLU 文本生成 (128/1024) 摘要/RAG (2048/128)
    Llama-3.1- Nemotron-51B-Instruct 8.99 英鎊 80.2% 6472 653
    Llama 3.1-70B-Instruct 8.93 81.66% 2975 339
    Llama 3.1-70B-Instruct (單 GPU) 1274 301
    Llama 3-70B 8.94 8017% 2975 339
    表 1. Llama-3.1-Nemotron-51B-Instruct 的準確性和效率概述。 注意:速度以每個 GPU 的每秒令牌數為單位報告,在配備 8 塊 NVIDIA H100 SXM GPU 的機器上測量,使用 TRT-LLM 作為運行時引擎進行 FP8 量化。對于通過張量并行具有最佳 GPU 數量的每個模型(除非另有說明)。括號中的數字顯示輸入/輸出序列長度。

    請參閱下方的詳細性能指標。

    優化每美元的準確性?

    基礎模型在解決非常復雜的任務(推理、匯總等)方面表現出驚人的質量。然而,采用頂級模型的主要挑戰在于其推理成本。隨著生成式 AI 領域的發展,準確性和效率之間的平衡(直接影響成本)將成為模型選擇的決定性因素。此外,在單個 GPU 上運行模型的能力顯著簡化了模型的部署,為新應用提供了在任何地方(從邊緣系統到數據中心再到云)運行的機會,以及通過 Kubernetes 和 NIM 藍圖 促進為多個模型提供服務。

    因此,我們設計了 Llama 3.1-Nemotron-51B-Instruct 來實現這種最佳權衡。這種權衡由下圖捕獲,該圖顯示了領先開源模型的準確性與吞吐量。吞吐量與價格成反比,因此最佳權衡是由位于圖中顯示的高效前沿的模型獲得的。如圖所示,該模型超越了當前的高效前沿,使其成為按美元計算提供最佳精度的模型。

    The graph shows accuracy vs. throughput of various frontier models and the efficient frontier highlights the accuracy Mistral and Llama models can achieve while delivering a given throughput. The Llama-3.1-Nemotron-51B model delivers higher accuracy per throughput and is placed above the Efficient frontier line.
    圖 1. 與前沿模型相比,Llama-3.1-Nemotron-51B 的準確性與吞吐量性能對比。吞吐量通過 NIM 測量,并發率為 25(服務吞吐量)。 注意:模型質量定義為 MT-Bench 和 MMLU 的加權平均值(10*MT-Bench + MMLU)/2,在單個 NVIDIA H100 80GB GPU 上繪制的模型吞吐量對比。灰色點表示最先進的模型,而虛線表示“高效前沿”。

    借助 NVIDIA NIM 簡化推理?

    Nemotron 模型使用 TensorRT-LLM 引擎進行優化,可實現更高的推理性能,并封裝為 NVIDIA NIM 推理微服務,以簡化和加速生成式 AI 模型在 NVIDIA 加速基礎設施(包括云、數據中心和工作站)中的部署。

    NIM 使用推理優化引擎、行業標準 API 和預構建容器,為高吞吐量 AI 推理提供按需擴展。

    幕后 – 使用 NAS 構建模型?

    用于設計神經架構的推理和硬件感知方法已成功應用于許多領域。然而,大型語言模型(LLMs)仍然以重復相同的塊構建,幾乎沒有考慮到這種簡化所產生的推理成本開銷。為應對這些挑戰,我們開發了高效的神經架構搜索(NAS)技術和訓練方法,可用于創建專為特定圖形處理單元(GPUs)上高效推理而設計的非標準 Transformer 模型。

    我們的技術可以從龐大的設計空間中選擇優化各種約束的神經架構,這些空間包括可以利用替代注意力和不同效率級別的 FFN 塊的一系列非標準 Transformer 模型,在極端情況下甚至可以完全消除塊。

    然后,我們使用塊蒸(圖 2)框架,針對(大型)父 LLM 的所有層并行訓練所有這些塊變體。在塊蒸的基本版本中,訓練數據通過參考模型(也稱為教師)傳遞。對于每個塊,其輸入來自教師并注入到學生的匹配塊中。系統會比較教師和學生用于塊的輸出,并訓練學生塊,以便學生塊模仿教師塊的功能。圖 2 右側的圖中描述了一個學生塊模仿多個教師塊的更高級場景。

    The image displays two diagrams illustrating the block-distillation process. In each diagram, a student block (yellow) is trained to mimic either one or multiple blocks of the teacher model (blue). The training aims to minimize the difference between the input to the teacher block (red curved line) and the output of the teacher block (black curved line). This minimization is achieved using a loss function (depicted in green). The left diagram shows one teacher block being mimicked by the student block, while the right diagram demonstrates the student block mimicking the operation of two consecutive teacher blocks.
    圖 2. 分塊蒸餾 – 對于參考模型的分塊 (藍色),我們為“學生模型” (黃色) 創建多個變體,以模擬分塊式教師功能。

    接下來,我們使用 Puzzle 算法對每個替代“謎題”進行高效評分,并在遵守一系列推理限制(例如內存大小和所需吞吐量)的同時,在龐大的設計空間中搜索更準確的模型。最后,通過在塊評分和訓練中使用知識蒸餾(KD)損失,我們展示了使用更高效的架構縮小模型和參考模型之間的準確性差距的潛力,而成本僅為參考模型訓練成本的一小部分。我們將 Llama-3.1-70B 作為參考模型,構建了 Llama-3.1-Nemotron-51B-Instruct,這是一個 51B 模型,可在單個 NVIDIA H100 GPU 上突破大型語言模型(LLM)的高效前沿(圖 1)。

    Llama-3.1-Nemotron-51B-Instruct 架構的獨特之處在于其不規則的塊結構,其中有許多層,其中注意力和 FFN 會減少或剪枝,從而更好地利用 H100,并強調優化 LLMs 對于推理的重要性。圖 3 以示意圖方式描述了最終架構的不規則結構,并突出顯示了由此節省的計算量,這相當于圖中的綠色區域。

    The image shows runtime of puzzle chosen blocks that are depicted as layers. They are color coded, blue blocks attention layers, red blocks for FFN layers, and green blocks represent overall runtime savings. The image shows 80 layers of the reference models.
    圖 3. 在參考模型的 80 層中,Puzzle 運行時在注意力層(藍色)和 FFN 層(紅色)中選擇的塊(層)。綠色區域對應整體運行時節省的資源。

    借助我們的創新技術,我們能夠開發重新定義大型語言模型(LLMs)高效前沿的模型。至關重要的是,我們可以從單個參考模型中經濟高效地設計多個模型,每個模型都針對特定硬件和推理場景進行了優化。這項能力有助于我們在當前和未來的硬件平臺上保持出色的 LLMs 推理性能。

    詳細結果?

    模型精度?

    下表列出了我們評估的所有基準測試(比較模型和參考模型 Llama 3.1-70B)。“保留的準確性”是模型的分數與教師分數之間的比率。

    基準測試 Llama-3.1 70B 指令 Llama-3.1-Nemotron-51B-Instruct 保持準確性
    Winogrande 85.08% 84.53% 99.35%
    arc_challenge 70.39% 69.20% 98.30%
    MMLU 81.66% 80.20% 98.21%
    hellaswag 86.44% 85.58% 99.01%
    GSM8K 92.04% 91.43% 99.34%
    truthfulqa 59.86% 58.63% 97.94%
    xlsum_english 33.86% 31.61% 93.36%
    MMLU Chat 81.76% 80.58% 98.55%
    GSM8K Chat 81.58% 81.88% 100.31%
    Instruct HumanEval (n=20) 75.85% 73.84% 97.35%
    MT 工作臺 8.93 8.99 英鎊 100.67%
    表 2. Nemotron 模型與 Llama 3.1-70B-Instruct 在多個行業基準測試中的準確性比較。

    性能?

    下表詳細說明了每個 GPU(H100 80GB)的每秒令牌數。可以看出,在一系列相關場景(短輸入和長輸入以及輸出)中,我們的模型將教師模型的吞吐量翻倍,從而使其在多個用例中具有成本效益。TP X 描述了并行進程所基于的 GPU 數量。我們還列出了 Llama 3.1-70B 在單個 GPU 上的性能,以展示模型在此類設置中的價值。

    場景 輸入/輸出序列長度 Llama-3.1- Nemotron-Instruct Llama-3.1-70B-Instruct 比率 Llama (TP1)
    聊天機器人 128/128 5478 (TP1) 2645 (TP1) 2.07 2645
    文本生成 128/1024 6472 (TP1) 2975 (TP4) 2.17 小行星 1274
    長文本生成 128/2048 4910 (TP2) 2786 (TP4) 1.76 646
    系統 2 推理 128/4096 3855 (TP2) 1828 (TP4) 2.11 313
    摘要/RAG 2048/128 653 (TP1) 339 (TP4) 1.92 300
    壓力測試 1 2048/2048 2622 (TP2) 1336 (TP4) 1.96 219
    表 3.熱門用例中模型生成的 token 數量的吞吐量比較。所有數字均以每個 GPU 的 tokens 每秒為單位。

    決定模型運行成本的主要因素是吞吐量,即系統在一秒內能生成的 token 總數。然而,在某些情況下 (例如聊天機器人),單個最終用戶從模型接收響應的速率對于用戶體驗非常重要。這通過每個用戶每秒的 token 數 (稱為用戶端吞吐量) 進行量化。下圖顯示了不同批量大小下的用戶端吞吐量與吞吐量的關系。正如在所有批量大小中所示,我們的模型優于 Llama 3.1-70B。

    The chart in the image shows server throughput v. user-side throughput curves. Llama 3.1-70B curve is lower compared to Llama-3.1-Nemotron-51B-Instruct.
    圖 4. Nemotron 模型和 Llama-3.1-70B 在不同批量大小下繪制的服務器吞吐量與用戶端吞吐量對比圖。

    根據不同需求定制 LLM?

    NAS 方法為用戶提供了在準確性和效率之間選擇最佳平衡的靈活性。為了展示這種通用性,我們從同一參考模型創建了另一個變體,這次優先考慮速度和成本。Llama-3.1-Nemotron-40B-Instruct 使用相同的方法開發,但在“謎題”階段修改了速度要求。

    與父模型相比,此模型的速度提高了 3.2 倍,準確度略有下降。下表顯示了具有競爭力的性能指標。

    ? 準確率 速度
    ? MT 工作臺 MMLU 文本生成 (128/1024) 摘要/RAG (2048/128)
    Llama-3.1- Nemotron-40B-Instruct 8.69 77.10% 9568 802
    Llama-3.1- Nemotron-51B-Instruct 8.99 英鎊 80.20% 6472 653
    Llama 3.1-70B-Instruct 8.93 81.72% 2975 339
    Gemma2-27B 8.88 76.54% 添加 添加
    表 4. Llama-3.1-Nemotron-40B-Instruct 的準確性和效率概述。

    總結?

    Llama 3.1-Nemotron-51B-Instruct 為希望使用高精度基礎模型,但需控制成本的用戶和公司提供了一系列新的機會。通過在準確性和效率之間進行最佳權衡,我們認為該模型對構建者來說是一個有吸引力的選擇。此外,這些結果展示了 NAS 方法的有效性,并打算將該方法擴展到其他模型。

    ?

    +2

    標簽

    人人超碰97caoporen国产