• <xmp id="om0om">
  • <table id="om0om"><noscript id="om0om"></noscript></table>
  • 3 月 19 日下午 2 點,鎖定 NVIDIA AI 網絡中文專場。立即注冊觀看
    對話式人工智能

    RTX AI PC 和工作站上部署多樣化 AI 應用支持 Multi-LoRA

    今天的大型語言模型(LLMs)在許多用例中都取得了前所未有的成果。然而,由于基礎模型的通用性,應用程序開發者通常需要定制和調整這些模型,以便專門針對其用例開展工作。

    完全微調需要大量數據和計算基礎設施,從而更新模型權重。此方法需要在GPU顯存上托管和運行模型的多個實例,以便在單個設備上提供多個用例。

    示例用例包括多語言翻譯助手,用戶需要同時獲得多種語言的結果。這可能會給設備上的 AI 帶來挑戰,因為內存限制。

    在設備顯存上同時托管多個LLM幾乎是不可能的,尤其是在考慮運行合適的延遲和吞吐量要求以與用戶進行交互時另一方面,用戶通常在任何給定時間運行多個應用和任務,在應用之間共享系統資源。

    低秩適配(LoRA)等高效的參數微調技術可幫助開發者將自定義適配器連接到單個 LLM,以服務于多個用例。這需要盡可能減少額外的內存,同時仍可提供特定于任務的 AI 功能。該技術使開發者能夠輕松擴展可在設備上服務的用例和應用程序的數量。

    NVIDIA RTX AI 工具包的一部分 NVIDIA TensorRT-LLM 現已提供 Multi-LoRA 支持。這項新功能使 NVIDIA RTX AI PC 和工作站能夠在推理期間處理各種用例。

    LoRA 簡介

    LoRA 是一種熱門的參數高效微調技術,可以調節少量參數。其他參數稱為 LoRA 適配器,表示網絡密集層中變化的低秩分解。

    只有這些低級別的附加適配器是自定義的,而在此過程中,模型的剩余參數會被凍結。經過訓練后,這些適配器將在推理期間通過合并到基礎模型進行部署,從而在推理延遲和吞吐量方面盡可能減少,甚至不增加任何開銷。

    A diagram showing the LoRA fine-tuning technique.
    圖 1. A 和 B 中的參數表示可訓練的參數,以展示 LoRA 技術(來源:LoRA:大型語言模型的低階適應

    圖 1 展示了有關 LoRA 技術的更多詳細信息。

    • 在自定義期間,預訓練模型的權重 (W) 將被凍結。
    • 我們不會更新 W,而是注入兩個較小的可訓練矩陣(A 和 B)來學習特定于任務的信息。矩陣乘法 B*A 會形成一個與 W 具有相同維度的矩陣,因此可以將其添加到 W (= W + BA) 中。

    A 和 B 矩陣的秩是 8、16 等較小的值。此秩 (r) 參數可在訓練時自定義。更大的秩值使模型能夠捕獲與下游任務相關的更多細微差別,通過更新模型中的所有參數來接近完全監督式微調的能力。

    缺點是,在內存和計算要求方面,更大的秩用于訓練和推理的成本也更高。在實踐中,使用小至 8 的秩值進行 LoRA 微調已經非常有效,并且是許多下游任務的良好起點。

    如今,RTX AI 工具包支持量化和低排名自適應 (QLoRA) (LoRA 技術的變體),以在 RTX 系統上執行參數高效的微調。這項技術經過調整可減少內存占用。

    在反向傳播過程中,梯度通過凍結的 4 位量化預訓練模型傳遞到低秩適配器。QLoRA 算法可有效節省內存,同時不會犧牲模型性能。有關 QLoRA 的更多信息,請參閱以下論文

    TensorRT-LLM 中的 Multi-LORA 支持

    借助 TensorRT-LLM 中的最新更新,RTX AI 工具包現在能夠在本地支持在推理時通過單個量化堿基檢查點為多個 LoRA 適配器提供服務。這項新技術能夠通過 INT4 量化堿基模型檢查點為多個 FP16 LoRA 適配器提供服務。

    混合精度部署在 Windows PC 環境中非常有用,因為它們的內存有限,必須在應用之間共享。混合精度部署可以減少模型存儲和推理所需的內存,而不會影響模型質量或使用自定義模型為多個客戶端提供服務的能力。

    開發者可以通過多種方法在其應用中部署多個 LoRA 網卡,其中包括以下內容。

    單 LoRA 網卡部署

    在這個設置中,開發者選擇針對每個請求激活哪個 LoRA 適配器,以便更好地提供專門內容。例如,語言學習應用程序可以在針對不同語言進行微調的適配器之間進行切換,從而根據用戶當前的需求提供集中練習。

    適用于單個請求的并發 LoRA 適配器(批量模式)

    在此方法中,單個輸入提示會生成多個不同的響應,每個響應均由不同的 LoRA 適配器在批量模式下生成。這對于多語種虛擬助理等復雜應用程序非常有用,其中一個查詢可以同時生成英語、西班牙語和日語的響應,每個響應都由特定的適配器定制。

    用于多個請求的并發 LoRA 適配器(批量模式)

    此方法同時處理多個輸入提示。每個提示都與不同的 LoRA 適配器配對,并生成多個輸出提示。例如,多個 PC 應用程序向同一模型發送推理請求,并根據請求選擇不同的適配器,以確保每個應用程序都收到特定于其需求的定制響應。

    詳細了解 TensorRT-LLM 對多個 LoRA 適配器檢查點的支持。

    在 RTX PC 上展示 Multi-LoRA 的強大功能

    為了展示多 LoRA 支持的強大功能,我們開發了一個示例應用程序,該應用程序專為故事創建和插圖而設計,只需一個提示即可完成,該過程分為兩個關鍵步驟展開。

    1. 用戶輸入一個故事的基本思路,然后Llama 3模型完善了這個概念,擴展了最初的想法,提供了詳細的基礎。
    2. 該應用程序使用相同的 Llama 3 模型(現已通過兩個不同的 LoRA 適配器進行增強),以進一步優化故事并生成相應的圖像。一個 LoRA 適配器生成 Stable Diffusion 提示,用于通過本地部署的 Stable Diffusion XL 模型以直觀方式說明故事。另一個經過微調,可用于編寫故事,并制作結構化良好且引人入勝的敘事。

    此方法可確保流程所需的空間不會顯著增加,因為兩個通道都使用相同的模型。第二個通道涉及文本和圖像生成,使用批量推理執行,從而使流程快速高效。用戶可以快速迭代不同版本的故事,輕松優化敘事和插圖。

    通過在此簡化的兩步流程中使用 multi-LoRA 支持,我們展示了如何通過單個提示最大限度地提高創意和計算效率。以下是一組輸入-輸出對示例。

    User Prompt:
    
    Generated Story:
    *The Whispering Woods*
    
    
    In the heart of the Whispering Woods, a legend whispered among the ancient trees spoke of a green giant, said to possess the secrets of the forest. The giant, named Eira, was rumored to be able to communicate with the trees themselves, and its presence was said to bring balance and harmony to the forest. One day, a young adventurer named Lyra stumbled upon the clearing where Eira was said to reside. As she approached the giant, she felt an eerie silence fall over the clearing, as if the trees themselves were holding their breath in anticipation. Eira's massive form loomed before her, its skin a deep, mossy green that seemed to blend seamlessly into the surrounding foliage. The giant's eyes, like ancient pools of wisdom, gazed down at Lyra with a gentle intensity.
    
    As she drew closer, Lyra noticed that the trees around her were indeed communicating with Eira, their leaves rustling softly to convey ancient secrets and whispers of the forest. The air was thick with the scent of damp earth and decaying leaves, and Lyra felt the weight of the forest's history bearing down upon her.
    
    Eira's voice, like a gentle breeze, whispered secrets to the trees, and they responded with soft murmurs and creaks. Lyra felt a sense of wonder wash over her as she realized that the giant was indeed the keeper of the forest's secrets. She reached out a trembling hand, and to her surprise, Eira's massive fingers wrapped around hers, like a gentle giant's grasp.
    
    In that moment, Lyra felt the forest's balance and harmony flow through her, and she knew that she had stumbled upon something much greater than a mere legend. As she stood there, surrounded by the ancient trees and the whispers of the forest, Lyra felt a sense of belonging wash over her, as if she had finally found her true home.
    Stable Diffusion-generated image of a green giant in the forest based on LoRA output for the given prompt.
    圖 2. 提示中生成的角色 Eira 圖像。
    This diagram shows the flow from a user prompt to LoRA outputs using Llama3-8B as base model.
    圖 3. 使用 Llama3-8B 和 LoRA 的穩定擴散圖像。

    使用 TensorRT-LLM 在 Windows PC 上加速多 LoRA 用例

    下圖顯示了 NVIDIA 內部測量結果,其中展示了使用 Llama-3-8B 模型的 NVIDIA GeForce RTX 4090 的吞吐量性能,以及使用 TensorRT-LLM 的基礎模型和不同批量大小的多個 LoRA 適配器。

    結果顯示,在輸入序列長度為 43、輸出序列長度為 100 個令牌時的吞吐量。當批量大小大于 1 時,每個樣本都使用唯一的 LoRA 適配器,最大引擎排名為 64。

    吞吐量越高,我們發現當運行多個 LoRA 網卡時,性能會降低 3%。

    Performance of Llama-3-8B when multiple LoRA adapters are used, varying by batch size.
    圖 4. NVIDIA 內部吞吐量性能測量結果在 RTX 4090 PC 上

    圖 5 顯示了在 RTX 4090 PC 上使用 Llama-3-8B 模型以及使用 TensorRT-LLM 0.11 的預訓練基礎模型和不同批量大小的多個 LoRA 適配器測量的 NVIDIA 延遲性能。

    結果展示了輸入序列長度為 43、輸出序列長度為 100 個令牌時的延遲。在批量大小大于 1 時,每個樣本使用唯一的 LoRA 適配器,最大引擎 rank 為 64。更低的延遲更好,我們看到運行多個 LoRA 適配器時性能降低了約 3%。

    Latency performance shown for Llama-3-8B model when multiple LoRA adapters are used with varying batch sizes.
    圖 5. NVIDIA 延遲性能測量結果在 RTX 4090 PC 上

    圖 4 和圖 5 顯示,在推理時使用多個 LoRA 適配器時,TensorRT-LLM 0.11 可提供出色的性能,同時盡可能減少不同批量大小的吞吐量和延遲降低。與運行基礎模型相比,在使用多個獨特的 LoRA 適配器和 TensorRT-LLM 0.11 時,我們發現不同批量大小的吞吐量和延遲性能平均降低了 3%。

    后續步驟

    借助最新更新,開發者可以在設備上使用 LoRA 技術自定義模型,并在 NVIDIA RTX AI PC 和工作站上使用多 LoRA 支持部署模型,以服務于多個用例。

    開始在 TensorRT-LLM 上用 multi-LoRA。

    ?

    0

    標簽

    人人超碰97caoporen国产