女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

利用OpenVINO部署GLM-Edge系列SLM模型

英特爾物聯網 ? 來源:英特爾物聯網 ? 2024-12-09 16:12 ? 次閱讀

作者:

楊亦誠 英特爾 AI 軟件工程師

近期智譜發布了其最新的GLM-Edge系列SLM模型,GLM-Edge 系列是智譜在面向端側真實落地使用的場景下的一次嘗試,由兩種尺寸的大語言對話模型和多模態理解模型組成( GLM-Edge-1.5B-Chat,GLM-Edge-4B-Chat,GLM-Edge-V-2B,GLM-Edge-V-5B)。其中,1.5B / 2B模型主要面向手機、車機等平臺, 4B / 5B 模型主要面向PC等平臺。

英特爾AI PC可以幫助用戶利用人工智能技術提高工作效率、創意、游戲、娛樂和安全等性能。它搭載 CPUGPU 和 NPU,可在本地更高效地處理 AI 任務。其中我們可以依靠CPU來運行較小的工作負載并實現低延遲,而GPU則非常適合需要并行吞吐量的大型工作負載,例如大預言模型推理任務,NPU能夠以低功耗處理持續運行 AI 工作負載,提高效率。開發者可以利用英特爾OpenVINO工具套件充分激活這些AI處理單元,更高效地部署深度學習模型,其中GLM-Edge就是一個非常適合運行在AIPC上的端側模型系列。本文將分享如何利用OpenVINO 在本地部署最新glm-edge-chat與glm-edge-v模型。

環境安裝與配置

以下為示例環境的快速部署方式,詳細過程可以參考示例倉庫中的README文檔。

1.下載示例倉庫

git clone

https://github.com/openvino-dev-samples/glm-edge.openvino.git

2.安裝環境依賴

cd glm-edge.openvino
python3 -m venv openvino_env
source openvino_env/bin/activate
pip install -r requirements.txt

glm-edge-chat轉化與部署

1. 模型轉換與量化

由于glm-edge-chat的預訓練模型是基于PyTorch框架的,因此我們可以利用Optimum-intel快速將safetensor格式的預訓練模型轉化為OpenVINO的IR格式,并通過NNCF工具對模型進行權重量化壓縮,以此提升推理性能,降低資源占用。

python3 glm-edge-chat/convert.py --model_id ZhipuAI/glm-edge-1.5b-chat --precision int4 --output {your_path}/glm-edge-1.5b-chat-ov --modelscope

其中:

`--model_id` - 用于設定 Huggngface/ModelScope的 模型id,或者也可以是原始模型的本地路徑。

`--output` - 轉換后模型保存的地址。

`--modelscope` - 是否通過魔搭社區下載模型。

2. Optimum-intel部署

為了方便Transformers庫用戶體驗OpenVINO,開發者可以利用Optimum-intel所提供的類Transformers API進行模型任務的部署。在不改變原本代碼邏輯的前提下,只需要將AutoModelForCausalLM對象切換為OVModelForCausalLM,便可以輕松實現對于推理后端的遷移,利用OpenVINO 來加速glm-edge-chat原有的pipeline。

from optimum.intel.openvino import OVModelForCausalLM
from transformers import AutoConfig, AutoTokenizer


ov_model = OVModelForCausalLM.from_pretrained(
  llm_model_path,
  device='GPU',
  config=AutoConfig.from_pretrained(llm_model_path, trust_remote_code=True),
  trust_remote_code=True,
)
tokenzier = AutoTokenizer.from_pretrained(llm_model_path, trust_remote_code=True)
input_tokens = tokenzier(prompt, return_tensors="pt", **tokenizer_kwargs)
answer = ov_model.generate(**input_tokens, max_new_tokens=1024)
tokenzier.batch_decode(answer, skip_special_tokens=True)[0]

在這個示例中,開發者可以通過運行chat.py腳本來構建一個簡答的聊天機器人,并支持流式輸出。使用方法如下:

python3 glm-edge-chat/chat.py --model_path {your_path}/glm-edge-1.5b-chat-ov --max_sequence_length 4096 --device GPU

其中:

`--model_path` - OpenVINO IR 模型所在目錄的路徑。

`--max_sequence_length` - 輸出標記的最大大小。

`--device` - 運行推理的設備。例如:"CPU","GPU"。

3. 效果展示

以下視頻將展示該示例在英特爾 酷睿 Ultra 處理器(第二代)上的運行效果:

glm-edge-v轉化與部署

1.模型轉換與量化

目前glm-edge-v的推理任務還沒有被完全集成進Optimum工具中,因此我們需要手動搭建模型的轉換和量化任務,其中包含語言模型language_model,圖像編碼模型vision_model,和文本編碼模型embedding_model。

為了簡化轉化步驟,我們提前對這些轉化任務行進行了封裝,開發者只需要調用示例中提供的函數便可完成這些模型的轉換,并對其中負載最大的語言模型進行量化。

python3 glm-edge-v/convert.py --model_id ZhipuAI/glm-edge-v-2b --output {your_path}/glm-edge-v-5b-ov –modelscope

其中:

`--model_id` - 用于設定 Huggngface/ModelScope的 模型id,或者也可以是原始模型的本地路徑。

`--output` - 轉換后模型保存的地址。

`--modelscope` - 是否通過魔搭社區下載模型。

2.圖片內容理解

此外在該示例中,我們也對模型的推理任務進行封裝,通過導入OvGLMv對象變可以可快速部署圖像理解任務。通過以下示例腳本可以快速對模型效果進行驗證。

python3 qa.py --model_path {your_path}/glm-edge-v-2b-ov --query "Please describe this picture" --image_path {your_path}/your_test_image.jpg --max_sequence_length 4096 --device CPU

其中:

`--model_path` - OpenVINO IR 模型所在目錄的路徑。

`--query` - 用戶輸入的問題文本。

`--image` - 待識別的圖片文件路徑。

`--max_sequence_length` - 輸出標記的最大大小。

`--device` - 運行推理的設備。例如:"CPU","GPU"。

3.效果展示

以下為經過OpenVINO 量化后的glm-edge-v-2b模型輸出結果。

文字輸入:

“請描述這張圖片”

模型輸出:

“這是一張照片,顯示了一輛停在一棟紅色磚墻前白色欄桿的建筑物旁邊的白色皮卡車,有四個黑色的輪胎和一個帶頂篷的駕駛室。在圖片中間可以看到停著的一輛白色皮卡車。這輛車停在路邊,其尾部有一個梯形托盤,看起來結構堅固,適合裝載或卸載重物。它的車頂是白色的,帶有黑色的輪胎和黑色的框架。車身顏色為白色,帶有黑色的邊框窗戶和把手。駕駛室有透明的玻璃,可以看到內部的司機座椅。車尾部有一個梯形形狀的拖車。汽車旁邊是灰色的地磚。”

總結

通過OpenVINO封裝后的API函數,開發者可以非常便捷地對預訓練模型進行轉化壓縮,并實現本地化的推理任務部署。同時基于GLM-Edge 在小語言模型場景下強大的文本與圖像理解能力,我們僅在輕薄本上便可以構建起一個完整的語言模型應用,在保護用戶數據隱私的同時,降低硬件門檻。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 處理器
    +關注

    關注

    68

    文章

    19812

    瀏覽量

    233610
  • 英特爾
    +關注

    關注

    61

    文章

    10169

    瀏覽量

    173968
  • cpu
    cpu
    +關注

    關注

    68

    文章

    11038

    瀏覽量

    216040
  • 模型
    +關注

    關注

    1

    文章

    3488

    瀏覽量

    50014
  • OpenVINO
    +關注

    關注

    0

    文章

    113

    瀏覽量

    417

原文標題:開發者實戰|最新端側小鋼炮!利用 OpenVINO? 部署 GLM-Edge 全家桶

文章出處:【微信號:英特爾物聯網,微信公眾號:英特爾物聯網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    C#集成OpenVINO?:簡化AI模型部署

    什么是OpenVINO 工具套件? OpenVINO 工具套件是一個用于優化和部署人工智能(AI)模型,提升AI推理性能的開源工具集合,不僅支持以卷積神經網
    的頭像 發表于 02-17 10:03 ?1840次閱讀
    C#集成<b class='flag-5'>OpenVINO</b>?:簡化AI<b class='flag-5'>模型</b><b class='flag-5'>部署</b>

    如何使用OpenVINO C++ API部署FastSAM模型

    象的位置和邊界。本文將介紹如何使用 OpenVINO C++ API 部署 FastSAM 模型,以實現快速高效的語義分割。在前文中我們發表了《基于 OpenVINO Python A
    的頭像 發表于 11-17 09:53 ?1282次閱讀
    如何使用<b class='flag-5'>OpenVINO</b> C++ API<b class='flag-5'>部署</b>FastSAM<b class='flag-5'>模型</b>

    是否可以使用OpenVINO?部署管理器在部署機器上運行Python應用程序?

    使用 OpenVINO?部署管理器創建運行時軟件包。 將運行時包轉移到部署機器中。 無法確定是否可以在部署機器上運行 Python 應用程序,而無需安裝
    發表于 03-05 08:16

    如何部署OpenVINO?工具套件應用程序?

    編寫代碼并測試 OpenVINO? 工具套件應用程序后,必須將應用程序安裝或部署到生產環境中的目標設備。 OpenVINO?部署管理器指南包含有關如何輕松使用
    發表于 03-06 08:23

    使用OpenVINO? 部署PaddleSeg模型庫中的DeepLabV3+模型

    ? ? ? 01 概述 ? ? 本文是OpenVINO 工具套件與百度飛槳PaddlePaddle模型轉換/部署系列的第二部。這篇文章專注于展示如何將百度飛槳PaddelSeg項目
    的頭像 發表于 11-22 14:58 ?1w次閱讀
    使用<b class='flag-5'>OpenVINO</b>? <b class='flag-5'>部署</b>PaddleSeg<b class='flag-5'>模型</b>庫中的DeepLabV3+<b class='flag-5'>模型</b>

    在C++中使用OpenVINO工具包部署YOLOv5模型

    下載并轉換YOLOv5預訓練模型的詳細步驟,請參考:《基于OpenVINO?2022.2和蝰蛇峽谷優化并部署YOLOv5模型》,本文所使用的Open
    的頭像 發表于 02-15 16:53 ?7637次閱讀

    自訓練Pytorch模型使用OpenVINO?優化并部署在AI愛克斯開發板

    本文章將依次介紹如何將 Pytorch 自訓練模型經過一系列變換變成 OpenVINO IR 模型形式,而后使用 OpenVINO Pyth
    的頭像 發表于 05-26 10:23 ?1229次閱讀
    自訓練Pytorch<b class='flag-5'>模型</b>使用<b class='flag-5'>OpenVINO</b>?優化并<b class='flag-5'>部署</b>在AI愛克斯開發板

    基于OpenVINO Python API部署RT-DETR模型

    平臺實現 OpenVINO 部署 RT-DETR 模型實現深度學習推理加速, 在本文中,我們將首先介紹基于 OpenVINO Python API
    的頭像 發表于 10-20 11:15 ?1502次閱讀
    基于<b class='flag-5'>OpenVINO</b> Python API<b class='flag-5'>部署</b>RT-DETR<b class='flag-5'>模型</b>

    如何使用OpenVINO Python API部署FastSAM模型

    象的位置和邊界。本文將介紹如何使用 OpenVINO Python API 部署 FastSAM 模型,以實現快速高效的語義分割。
    的頭像 發表于 10-27 11:04 ?1059次閱讀

    基于OpenVINO C++ API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎上進行改進的,一種基于 DETR 架構的實時端到端檢測器,它通過使用一系列新的技術和算法,實現了更高效的訓練和推理,在前文我們發表了《基于 OpenVINO
    的頭像 發表于 11-03 14:30 ?1444次閱讀
    基于<b class='flag-5'>OpenVINO</b> C++ API<b class='flag-5'>部署</b>RT-DETR<b class='flag-5'>模型</b>

    基于OpenVINO C# API部署RT-DETR模型

    RT-DETR 是在 DETR 模型基礎上進行改進的,一種基于 DETR 架構的實時端到端檢測器,它通過使用一系列新的技術和算法,實現了更高效的訓練和推理,在前文我們發表了《基于 OpenVINO
    的頭像 發表于 11-10 16:59 ?1092次閱讀
    基于<b class='flag-5'>OpenVINO</b> C# API<b class='flag-5'>部署</b>RT-DETR<b class='flag-5'>模型</b>

    NNCF壓縮與量化YOLOv8模型OpenVINO部署測試

    OpenVINO2023版本衍生出了一個新支持工具包NNCF(Neural Network Compression Framework – 神經網絡壓縮框架),通過對OpenVINO IR格式模型的壓縮與量化更好的提升
    的頭像 發表于 11-20 10:46 ?1917次閱讀
    NNCF壓縮與量化YOLOv8<b class='flag-5'>模型</b>與<b class='flag-5'>OpenVINO</b><b class='flag-5'>部署</b>測試

    如何在MacOS上編譯OpenVINO C++項目呢?

    英特爾公司發行的模型部署工具 OpenVINO 模型部署套件,可以實現在不同系統環境下運行,且發布的 O
    的頭像 發表于 01-11 18:07 ?1126次閱讀
    如何在MacOS上編譯<b class='flag-5'>OpenVINO</b> C++項目呢?

    使用OpenVINO Model Server在哪吒開發板上部署模型

    OpenVINO Model Server(OVMS)是一個高性能的模型部署系統,使用C++實現,并在Intel架構上的部署進行了優化,使用Open
    的頭像 發表于 11-01 14:19 ?642次閱讀
    使用<b class='flag-5'>OpenVINO</b> Model Server在哪吒開發板上<b class='flag-5'>部署</b><b class='flag-5'>模型</b>

    在設備上利用AI Edge Torch生成式API部署自定義大語言模型

    我們很高興地發布 AI Edge Torch 生成式 API,它能將開發者用 PyTorch 編寫的高性能大語言模型 (LLM) 部署至 TensorFlow Lite (TFLite) 運行時
    的頭像 發表于 11-14 10:23 ?951次閱讀
    在設備上<b class='flag-5'>利用</b>AI <b class='flag-5'>Edge</b> Torch生成式API<b class='flag-5'>部署</b>自定義大語言<b class='flag-5'>模型</b>