OpenVINO™ 2024.5 發行說明

關鍵字 :IntelAIEdge AIDeep Learning適配器

OpenVINO Release Notes 

2024.5 - 20 November 2024

系統要求 | 發布政策 | 安裝指南

OpenVINO™ 2024.5 版本帶來了突破性的增強功能,旨在通過最新的 AI 優化、性能和靈活性賦能開發者和企業。本次更新重點擴展了對先進框架、模型和硬體平台的支持,同時引入了創新工具,加速 AI 開發與部署。

主要亮點包括:擴展對大型語言模型(LLMs)和多模態 AI 管道的支持、改進的模型壓縮技術,以及與 TensorFlow、PyTorch 和 ONNX 的無縫集成。開發者現在可以利用 LoRA 適配器、動態量化和推測解碼的強大功能,在從大型語言模型到視覺任務的多種場景中優化性能和內存效率。

通過專為英特爾最新處理器和 GPU 定製的新功能以及擴展的 NPU 功能,OpenVINO™ 2024.5 確保 AI 工作負載運行得更快、更高效、更智能——無論是在邊緣、雲端還是本地部署。探索增強的生成式 AI(GenAI)功能、新的語音識別和文本生成圖片管道,以及先進的神經網絡壓縮框架工具,讓最前沿的 AI 技術變得更加高效和觸手可及。

這一版本是邁向下一代 AI 創新的門戶。歡迎使用 OpenVINO™ 2024.5,與我們一起擁抱 AI 的未來!

更新內容

  • 新增功能

    • 提供更多生成式 AI(GenAI)支持和框架集成,儘量減少代碼修改。
    • 新增支持的模型:Llama 3.2(1B & 3B)、Gemma 2(2B & 9B)、YOLO11。
    • NPU支持的大型語言模型(LLM):Llama 3 8B、Llama 2 7B、Mistral-v0.2-7B、Qwen2-7B-Instruct 和 Phi-3 Mini-Instruct。
    • 新增的示例筆記本:Sam2、Llama3.2、Llama3.2 - Vision、Wav2Lip、Whisper 和 Llava。
    • 預覽功能:支持 Flax,一個基於 JAX 的高性能 Python 神經網絡庫,其模塊化設計支持輕鬆定製,並在 GPU 上實現加速推理。
  • 增強功能

    • 提供更廣泛的大型語言模型(LLM)支持,以及更多的模型壓縮技術。
    • 針對 Intel® Core™ Ultra 處理器(第 1 代)和 Intel® Arc™ 圖形的內置 GPU 優化,包括 KV 緩存壓縮以減少內存占用,以及改進的可用性和模型加載時間優化,以改善 LLM 的首字令牌延遲。
    • 在內置 Intel® GPU 上啟用了動態量化,以在不影響 Intel® Core™ Ultra 處理器(第 1 代)準確性的情況下改善 LLM 的首字令牌延遲。同時,大批量推理的第二字令牌延遲也將得到改善。
    • 在神經網絡壓縮框架(NNCF)中實現了一種新的合成文本數據生成方法,允許使用無數據集的基於數據感知的方法更精確地壓縮 LLM。即將推出:該功能將在 Hugging Face 的 Optimum Intel 中提供訪問權限。
    • 提供更多便攜性和性能支持,可在邊緣、雲端或本地運行 AI。
    • 支持 Intel® Xeon® 6 處理器(帶 P-cores,之前代號為 Granite Rapids)和 Intel® Core™ Ultra 200V 系列處理器(之前代號為 Arrow Lake-S)。
  • 生成式 AI API

    • 預覽功能:支持多模態 AI 部署,提供多模態管道以增強上下文感知能力、音頻到文本的轉錄管道、以及文本到視覺的圖像生成管道。
    • 添加了投機解碼功能,通過使用小型草稿模型定期由完整模型校正,提高了文本生成的性能和效率。
    • 預覽功能:現在支持 LoRA 適配器,開發者可以快速高效地定製圖像和文本生成模型以執行特定任務。
    • 生成式 AI API 現已支持在 NPU 上運行 LLM,允許開發者指定 NPU 為目標設備,特別是用於 WhisperPipeline(支持 whisper-base、whisper-medium 和 whisper-small)和 LLMPipeline(支持 Llama 3 8B、Llama 2 7B、Mistral-v0.2-7B、Qwen2-7B-Instruct 和 Phi-3 Mini-Instruct)。推薦使用 32.0.100.3104 或更高版本的驅動程序以獲得最佳性能。
  • 不再支持

    • Python 3.8 不再受支持。

OpenVINO™ 運行時

通用

  • Numpy 2.x 已被用於所有當前支持的組件,包括 NNCF。
  • 新增了一個常量構造器,允許從數據指針作為共享內存創建常量。此外,它可以接管共享對象或其他對象的所有權,避免了將內存封裝為 ov::Tensor 的兩步操作。
  • 使用 mmap 庫實現了異步文件讀取,顯著減少了模型文件的加載時間,特別是針對大型語言模型(LLM)。
  • SliceScatter 操作符的 CPU 實現現已可用,用於支持 Gemma 等模型,從而提高 LLM 的性能。

CPU 設備插件

  • 達成了對 Intel® Xeon® 6 平台(帶 P-cores,之前代號為 Granite Rapids)的正式支持。
  • 實現了對 Intel® Core™ Ultra 200V 系列處理器(之前代號為 Arrow Lake-S)的支持。
  • 通過優化旋轉位置嵌入(Rotary Position Embedding)、Query、Key 和 Value,以及多層感知器融合優化,進一步提升了 LLM 的性能。
  • 使用 SDPA 和 PagedAttention 擴展了 FP16 支持,通過原生 API 和 vLLM 集成提高了 LLM 性能。
  • 支持帶有 LoRA 適配器的模型。

GPU 設備插件

  • KV 緩存的 INT8 壓縮機制現已可用於所有支持的 GPU。此功能顯著減少了內存消耗,同時以最小的精度影響提升性能(對系統性設備的影響略大於非系統性設備)。該功能在非系統性設備上默認啟用。
  • GPU 現已功能性支持 LoRA 適配器。
  • 新增 GPU 無權重模型緩存功能,僅緩存模型結構並重複利用原始模型文件的權重。可通過新屬性 OPTIMIZE_SIZE 激活。
  • 在 Intel® Core™ Ultra 平台上實現並默認啟用了支持 INT4 和 INT8 精度的動態量化,改善了 LLM 的首字令牌延遲。

NPU 設備插件

  • 從 OpenVINO 緩存中檢索的模型現在具有更小的內存占用量。插件在權重加載到 NPU 區域後釋放緩存的模型(blob)。在這種情況下,模型導出不可用。在推理執行過程中,內存消耗減少到一個 blob 的大小。這一優化需要最新的 NPU 驅動程序:32.0.100.3104。
  • 修復了 ov::intel_npu::device_total_mem_size 的驅動程序錯誤。對於不支持圖擴展 1.8 的任何驅動程序,插件現在報告 2GB 為最大可分配內存。即使舊驅動程序報告更大的可用內存,當超過 2GB 時內存分配將失敗。對於支持圖擴展 1.8(或更新)的驅動程序,插件會報告驅動程序顯示的值。
  • 使用新 API 初始化模型(在圖擴展 1.8 中可用)。
  • 支持推理請求的 set_tensors
  • 在 Windows 系統上公開了 ov::device::LUID
  • 在內存使用和性能方面對 LLM 相關功能進行了改進。
  • 擴展了對 AvgPool 和 MaxPool 操作符的支持,增加了更多 PyTorch 模型的兼容性。
  • 注意:對於基於 Intel® Core™ Ultra 處理器第 2 代的系統,使用更大模型(如 Llama-2-7B、Mistral-0.2-7B 和 Qwen-2-7B,參數超過 40 億)且提示大小超過 1024 個令牌時,可能需要超過 16GB 的 RAM。

OpenVINO Python API

  • 常量現在可以從 openvino.Tensor 創建。
  • 為已編譯模型添加了 “release_memory” 方法,提高了對內存消耗的控制。

TensorFlow 框架支持

  • 現已驗證支持 TensorFlow 2.18.0、Keras 3.6.0、Python 3.12 中的 NumPy 2.0.2,以及其他 Python 版本中的 NumPy 1.26.4。
  • 通過為 Switch-Merge 條件子圖設計新形狀,改進了具有靜態秩的開箱即用轉換功能。
  • 現在支持以下操作的複數類型:ExpandDims、Pack、Prod、Rsqrt、ScatterNd 和 Sub。
  • 修復的問題:
    • 修復了 LinSpace 中只有一個元素的特殊情況,避免了除以零的問題。
    • 支持 LeakyRelu 操作的 FP16 和 FP64 輸入類型。
    • 支持 ArgMin/Max 操作的非 i32/i64 輸出索引類型。

PyTorch 框架支持

  • 現已支持 PyTorch 2.5 版本。
  • OpenVINO 模型轉換器(OVC)現已支持保存於磁盤上的 TorchScript 和 ExportedProgram 格式。
  • 修復了 aten.index.Tensor 轉換問題,解決了包含 “None” 值的索引支持問題,從而支持 ExportedProgram 格式的 HF Stable Diffusion 模型。

ONNX 框架支持

  • 現已使用 ONNX 1.17.0 版本。
  • 現已支持包含以下操作的客戶模型:DequantizeLinear-21、com.microsoft.MatMulNBits 和 com.microsoft.QuickGelu。

神經網絡壓縮框架

  • 新增了 nncf.data.generate_text_data() 方法,用於生成 LLM 壓縮的合成數據集。這種方法在數據集不可用或不足的情況下,可以更準確地壓縮 LLM。有關用法的更多信息,請參見示例。

  • 擴展了無數據和數據感知的權重壓縮方法 nncf.compress_weights() 的支持,新增 NF4 每通道量化功能,使壓縮後的 LLM 在 NPU 上更準確且運行更快。

  • 現在支持在 nncf.compress_weights() 中緩存已計算的統計數據,大幅減少在使用不同壓縮參數多次壓縮同一 LLM 時的壓縮時間。要啟用此功能,可將 nncf.compress_weights() 的高級參數 statistics_path 設置為所需文件路徑。

  • nncf.compress_weights() 中新增了可選參數 backup_mode,用於在 4 位權重壓縮過程中指定嵌入層、卷積層和最後線性層的權重數據類型。可用選項包括:INT8_ASYM(默認)、INT8_SYMNONE(保留模型權重的原始浮點精度)。在某些情況下,非默認值可能會提高壓縮後 LLM 的準確性。

  • 現已支持優化 Torch FX 格式的模型,並支持使用 nncf.quantize()nncf.compress_weights() 方法進行優化。優化後的模型可直接通過 torch.compile(compressed_model, backend="openvino") 執行。有關更多詳情,請參見 INT8 量化示例。

  • 數據感知權重壓縮方法 nncf.compress_weights() 的內存消耗已顯著降低,但會因模型和方法的不同而有所變化。

支持變更

  • 添加了對 NumPy 2 的支持。
  • PyTorch 升級至 2.5.1 版本。
  • ONNX 升級至 1.17 版本。
  • 停止支持 Python 3.8。

OpenVINO.GenAI

新增功能:

  • LoRA 適配器用於 LLMPipeline。
  • Text2ImagePipeline 支持 LoRA 適配器和文本生成圖像樣例。
  • VLMPipeline 和視覺語言聊天樣例,支持文本和圖像輸入的文本生成模型。
  • WhisperPipeline 和語音識別樣例(whisper_speech_recognition)。
  • speculative_decoding_lm 已遷移到基於 LLMPipeline 的實現,現在作為軟體包的一部分進行安裝。

在 NPU 上已啟用以下一組管線:

  • WhisperPipeline(支持 whisper-base、whisper-medium 和 whisper-small)。
  • LLMPipeline(支持 Llama 3 8B、Llama 2 7B、Mistral-v0.2-7B、Qwen2-7B-Instruct 和 Phi-3 Mini-instruct)。

要獲得最佳性能,請使用驅動版本 32.0.100.3104 或更高版本。

其他更詳細資訊, 請參考 https://docs.openvino.ai/2024/about-openvino/release-notes-openvino.html

★博文內容參考自 網站,與平台無關,如有違法或侵權,請與網站管理員聯繫。

★博文作者未開放評論功能

參考來源

Intel OpenVINO: https://docs.openvino.ai/2024/about-openvino/release-notes-openvino.html