0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenVINO? 賦能千元級『哪吒』AI開發(fā)套件大語言模型 | 開發(fā)者實戰(zhàn)

研揚(yáng)科技AAEON ? 2024-01-06 08:05 ? 次閱讀

以下文章來源于英特爾物聯(lián)網(wǎng) ,作者武卓

作者:英特爾AI軟件布道師 武卓 博士

人工智能的飛速發(fā)展中,大語言模型,如Stable-Zephyr-3b,已成為研究和應(yīng)用的熱點。這些模型以其強(qiáng)大的文本理解和生成能力在多個領(lǐng)域大放異彩。然而,大多數(shù)高性能模型通常需要昂貴的計算資源,使得它們的應(yīng)用受限于有限的環(huán)境。本文將探討在OpenVINO的賦能下,如何在不足千元的AI開發(fā)板上部署Stable-Zephyr-3b模型,構(gòu)建聊天機(jī)器人,成為實現(xiàn)AI無處不在愿景的重要組成部分之一。

Stable Zephyr 3B是一個先進(jìn)的大語言模型,擁有30億參數(shù),它在多個語言處理任務(wù)上顯示出了優(yōu)異的性能。這個模型特別是在大小相對較小的情況下,比許多流行模型都要出色,這表明了它高效的參數(shù)使用和強(qiáng)大的學(xué)習(xí)能力。該模型的訓(xùn)練靈感來自于HugginFaceH4的Zephyr 7B訓(xùn)練管道,這是一個專注于高效訓(xùn)練和性能優(yōu)化的系統(tǒng)。Stable Zephyr 3B是在混合的數(shù)據(jù)集上進(jìn)行訓(xùn)練的,包括了公開可用的數(shù)據(jù)集和通過直接偏好優(yōu)化(DPO)技術(shù)生成的合成數(shù)據(jù)集。DPO是一種優(yōu)化技術(shù),它直接在模型的偏好上施加約束,以產(chǎn)生更高質(zhì)量的數(shù)據(jù)供模型學(xué)習(xí)。

該模型的性能評估是基于MT Bench和Alpaca Benchmark,這兩個基準(zhǔn)都是在業(yè)界公認(rèn)的,用以衡量語言模型在多種任務(wù)上的效能。通過這些嚴(yán)格的評估,Stable Zephyr 3B展現(xiàn)了其在理解和生成語言方面的卓越能力。更多關(guān)于模型的架構(gòu)、訓(xùn)練過程、使用的數(shù)據(jù)集以及在各項評估中的表現(xiàn)的信息可以在模型卡片中找到。

此文使用了研揚(yáng)科技針對邊緣AI行業(yè)開發(fā)者推出了哪吒(Nezha)開發(fā)套件以信用卡大?。?5 x 56mm)的開發(fā)板-哪吒(Nezha)為核心,哪吒采用Intel N97處理器(Alder Lake-N),最大睿頻3.6GHz,IntelUHD Graphics內(nèi)核GPU,可實現(xiàn)高分辨率顯示;板載LPDDR5內(nèi)存、eMMC存儲及TPM 2.0,配備GPIO接口,支持Windows和Linux操作系統(tǒng),這些功能和無風(fēng)扇散熱方式相結(jié)合,為各種應(yīng)用程序構(gòu)建高效的解決方案,適用于如自動化、物聯(lián)網(wǎng)網(wǎng)關(guān)、數(shù)字標(biāo)牌和機(jī)器人等應(yīng)用。

要在這些資源有限的設(shè)備上運(yùn)行如Stable-Zephyr-3b這樣的大型模型,模型的壓縮和優(yōu)化是關(guān)鍵。借助OpenVINO提供的模型優(yōu)化工具NNCF,可以將模型量化壓縮為INT4精度的模型,從而可以大幅度減少模型的大小和計算需求,而保持相對較高的性能。接下來,就讓我們通過我們常用的OpenVINO Notebooks倉庫中關(guān)于Stable Zephyr 3B模型的Jupyter Notebook代碼和拆解,來進(jìn)一步了解具體步驟吧。(Jupyter notebook代碼地址:

https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/273-stable-zephyr-3b-chatbot )

第一步:安裝相應(yīng)工具包

為了方便模型轉(zhuǎn)換步驟和模型性能評估,我們將使用llm_bench(https://github.com/openvinotoolkit/openvino.genai/tree/master/llm_bench/python )工具,該工具提供了一種統(tǒng)一的方法來估計大語言模型(LLM)的性能。它基于由Optimum-Intel提供的管道,并允許使用幾乎相同的代碼來估計Pytorch和OpenVINO模型的性能。

首先git clone llm_bench所在的代碼倉庫:

from pathlibimport Path

import sys

genai_llm_bench = Path("openvino.genai/llm_bench/python")

ifnot genai_llm_bench.exists():

!git clone https://github.com/openvinotoolkit/openvino.genai.git


sys.path.append(str(genai_llm_bench))

并進(jìn)行相關(guān)Python包的安裝:

%pip uninstall -q -y optimum-intel optimum

%pip install -q --extra-index-url https://download.pytorch.org/whl/cpu -r ./openvino.genai/llm_bench/python/requirements.txt

%pip uninstall -q -y openvino openvino-dev openvino-nightly

%pip install -q openvino-nightly


第二步:將模型轉(zhuǎn)換為OpenVINO IR格式,并利用NNCF將模型權(quán)重壓縮為INT4精度
llm_bench提供了一個轉(zhuǎn)換腳本,用于將大語言模型轉(zhuǎn)換為與Optimum-Intel兼容的OpenVINO IR格式。它還允許使用NNCF將模型權(quán)重壓縮為INT8或INT4精度。要啟用INT4的權(quán)重壓縮,我們應(yīng)該使用--compress_weights 4BIT_DEFAULT 參數(shù)。權(quán)重壓縮算法旨在壓縮模型的權(quán)重,并可用于優(yōu)化大模型的占用空間和性能。與INT8壓縮相比,INT4壓縮進(jìn)一步提高了性能,但會引入輕微的預(yù)測質(zhì)量下降。

model_path = Path("stable-zephyr-3b/pytorch/dldt/compressed_weights/OV_FP16-4BIT_DEFAULT")


convert_script = genai_llm_bench / "convert.py"


!python $convert_script --model_id stabilityai/stable-zephyr-3b --precision FP16 --compress_weights 4BIT_DEFAULT --output stable-ze

第三步:評估模型性能

openvino.genai / llm_bench / python / benchmark.py腳本允許在特定輸入提示上估計文本生成管道的推理,給定最大生成分詞的數(shù)量。模型性能評估以時延為主。

benchmark_script = genai_llm_bench /"benchmark.py"


!python $benchmark_script -m $model_path -ic512 -p"Tell me story about cats"

運(yùn)行結(jié)果如下:

wKgaomWyIQ6AGxQ-AAS7PdK1uEA461.png

第四步:應(yīng)用狀態(tài)變換來自動處理模型狀態(tài)

Stable Zephyr是一種自回歸的解碼器變換器模型,它通過緩存先前計算的隱藏狀態(tài)來優(yōu)化生成過程和內(nèi)存使用,避免每次生成新令牌時重復(fù)計算。隨著模型和注意力塊的增大,處理長序列的緩存策略可能對內(nèi)存系統(tǒng)構(gòu)成挑戰(zhàn)。因此,OpenVINO提出了一種轉(zhuǎn)換策略,將緩存邏輯內(nèi)置于模型中以降低內(nèi)存消耗并優(yōu)化性能。您可以通過在轉(zhuǎn)換步驟中使用--stateful標(biāo)志添加有狀態(tài)轉(zhuǎn)換來估計模型性能。

stateful_model_path = Path("stable-zephyr-3b-stateful/pytorch/dldt/compressed_weights/OV_FP16-4BIT_DEFAULT")
!python $convert_script --model_id stabilityai/stable-zephyr-3b --precision FP16 --compress_weights 4BIT_DEFAULT --output stable-zephyr-3b-stateful --force_convert --stateful

第五步:利用Optimum-Intel加載模型并在基于Gradio搭建的用戶界面上運(yùn)行模型
同樣地,這個模型也可以用Optimum-Intel工具包里定義的OVModelForCausalLM 流水線來加載模型和運(yùn)行推理,代碼如下:

from utils.ov_model_classesimport register_normalized_configs

from optimum.intel.openvinoimport OVModelForCausalLM

from transformers import AutoConfig


# Load model into Optimum Interface

register_normalized_configs()


ov_model = OVModelForCausalLM.from_pretrained(model_path, compile=False, config=AutoConfig.from_pretrained(stateful_model_path, trust_remote_code=True), stateful=True)

和我們的很多大預(yù)言模型和生成式AI的Notebook示例代碼一樣,在這個Notebook中,我們也提供了基于Gradio編寫的用戶友好的使用界面。最終在我們的哪吒開發(fā)板上運(yùn)行該模型的推理。

整個的步驟就是這樣!現(xiàn)在就開始跟著我們提供的代碼和步驟,動手試試用OpenVINO在哪吒開發(fā)板上運(yùn)行基于大語言模型的聊天機(jī)器人吧。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • AI
    AI
    +關(guān)注

    關(guān)注

    87

    文章

    28875

    瀏覽量

    266206
  • 人工智能
    +關(guān)注

    關(guān)注

    1787

    文章

    46060

    瀏覽量

    234960
  • OpenVINO
    +關(guān)注

    關(guān)注

    0

    文章

    73

    瀏覽量

    139
收藏 人收藏

    評論

    相關(guān)推薦

    NVIDIA RTX AI套件簡化AI驅(qū)動的應(yīng)用開發(fā)

    NVIDIA 于近日發(fā)布 NVIDIA RTX AI套件,這一工具和 SDK 集合能夠幫助 Windows 應(yīng)用開發(fā)者定制、優(yōu)化和部署適用于 Windows 應(yīng)用的 AI
    的頭像 發(fā)表于 09-06 14:45 ?249次閱讀

    【xG24 Matter開發(fā)套件試用體驗】初識xG24 Matter開發(fā)套件

    今天帶剛收到xG24 Matter開發(fā)套件的快遞,為大家做個xG24 Matter開發(fā)套件的視頻介紹,帶大家認(rèn)識一下這款xG24 Matter開發(fā)套件。 EFR32xG24 Explorer
    發(fā)表于 07-11 23:31

    2024 TUYA全球開發(fā)者大會盛大啟幕,Cube AI模型重磅首發(fā)!

    2024TUYA全球開發(fā)者大會上,重磅推出AI模型、AI開發(fā)工具、AI小程序
    的頭像 發(fā)表于 05-31 08:15 ?256次閱讀
    2024 TUYA全球<b class='flag-5'>開發(fā)者</b>大會盛大啟幕,Cube <b class='flag-5'>AI</b>大<b class='flag-5'>模型</b>重磅首發(fā)!

    2024 TUYA全球開發(fā)者大會盛大啟幕,Cube AI模型重磅首發(fā)!

    2024 TUYA全球開發(fā)者大會上,重磅推出AI模型、AI開發(fā)工具、AI小程序
    發(fā)表于 05-30 09:13 ?186次閱讀
    2024 TUYA全球<b class='flag-5'>開發(fā)者</b>大會盛大啟幕,Cube <b class='flag-5'>AI</b>大<b class='flag-5'>模型</b>重磅首發(fā)!

    聯(lián)發(fā)科發(fā)布天璣AI開發(fā)套件,終端生成式AI應(yīng)用

    聯(lián)發(fā)科近日推出了全新的天璣AI開發(fā)套件,旨在為合作伙伴打造一站式解決方案,以加速終端生成式AI應(yīng)用的開發(fā)。這款套件集合了四大核心模塊,為
    的頭像 發(fā)表于 05-10 11:19 ?459次閱讀

    英特爾開發(fā)套件哪吒』在Java環(huán)境實現(xiàn)ADAS道路識別演示 | 開發(fā)者實戰(zhàn)

    本文使用來自O(shè)penModelZoo的預(yù)訓(xùn)練的road-segmentation-adas-0001模型。ADAS代表高級駕駛輔助服務(wù)。該模型識別四個類別:背景、道路、路緣和標(biāo)記。硬件環(huán)境此文使用了英特爾開發(fā)套件家族里的『
    的頭像 發(fā)表于 04-29 08:07 ?331次閱讀
    英特爾<b class='flag-5'>開發(fā)套件</b>『<b class='flag-5'>哪吒</b>』在Java環(huán)境實現(xiàn)ADAS道路識別演示 | <b class='flag-5'>開發(fā)者</b><b class='flag-5'>實戰(zhàn)</b>

    香橙派全球開發(fā)者峰會發(fā)布多款AI新品及全新AI戰(zhàn)略

    2024年3月24日14:00,香橙派全球開發(fā)者峰會2024·春季在深圳舉行。大會以“AI使,萬物新生”為主題,5000多名開發(fā)者、合作伙伴、技術(shù)領(lǐng)袖、行業(yè)專家、政府代表等通過線上線
    的頭像 發(fā)表于 03-26 14:27 ?1511次閱讀
    香橙派全球<b class='flag-5'>開發(fā)者</b>峰會發(fā)布多款<b class='flag-5'>AI</b><b class='flag-5'>賦</b><b class='flag-5'>能</b>新品及全新<b class='flag-5'>AI</b>戰(zhàn)略

    【轉(zhuǎn)載】英特爾開發(fā)套件哪吒”快速部署YoloV8 on Java | 開發(fā)者實戰(zhàn)

    部署到生產(chǎn)系統(tǒng)中。通過簡化的開發(fā)工作流程,OpenVINO開發(fā)者在現(xiàn)實世界中部署高性能應(yīng)用程序和算法。 今天我們將基于哪吒
    的頭像 發(fā)表于 03-23 08:05 ?275次閱讀
    【轉(zhuǎn)載】英特爾<b class='flag-5'>開發(fā)套件</b>“<b class='flag-5'>哪吒</b>”快速部署YoloV8 on Java | <b class='flag-5'>開發(fā)者</b><b class='flag-5'>實戰(zhàn)</b>

    基于英特爾哪吒開發(fā)者套件平臺來快速部署OpenVINO Java實戰(zhàn)

    OpenVINO 工具套件基于OneAPI開發(fā),可以加快高性能計算機(jī)視覺和深度學(xué)習(xí)應(yīng)用開發(fā)速度的工具套件,適用于從邊緣到云的各種英特爾計算平
    的頭像 發(fā)表于 03-21 18:24 ?1279次閱讀
    基于英特爾<b class='flag-5'>哪吒</b><b class='flag-5'>開發(fā)者</b><b class='flag-5'>套件</b>平臺來快速部署<b class='flag-5'>OpenVINO</b> Java<b class='flag-5'>實戰(zhàn)</b>

    如何快速下載OpenVINO Notebooks中的AI模型

    OpenVINO Notebooks是Jupyter Notebook形式的OpenVINO范例程序大集合,方便開發(fā)者快速學(xué)習(xí)并掌握OpenVINO推理程序,并通過Copy&Paste
    的頭像 發(fā)表于 12-12 14:40 ?970次閱讀
    如何快速下載<b class='flag-5'>OpenVINO</b> Notebooks中的<b class='flag-5'>AI</b>大<b class='flag-5'>模型</b>

    【鴻蒙生態(tài)帆起】HarmonyOS系統(tǒng)地圖與位置服務(wù),廣大開發(fā)者

    HarmonyOS下地圖領(lǐng)域的最新技術(shù)探索與實踐成果。 得益于HarmonyOS一次開發(fā)多端部署、可分可合自由流轉(zhuǎn)、統(tǒng)一生態(tài)原生智能的特性,Petal Maps為開發(fā)者提供了系統(tǒng)、深融合、低功耗、更安全的地圖
    發(fā)表于 11-22 10:37

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

    Python API 部署 RT-DETR 模型 | 開發(fā)者實戰(zhàn)》和《基于 OpenVINO C++ API 部署 RT-DETR 模型
    的頭像 發(fā)表于 11-10 16:59 ?607次閱讀
    基于<b class='flag-5'>OpenVINO</b> C# API部署RT-DETR<b class='flag-5'>模型</b>

    oneAPI &amp; OpenVINO?聯(lián)合開發(fā)者大會開啟:英特爾持續(xù)開源創(chuàng)新,助力AI開發(fā)落地

    的技術(shù)盛筵上,英特爾技術(shù)專家?guī)砹薿neAPI在全球的發(fā)展近況及如何與合伙伙伴共建異構(gòu)計算新生態(tài),同時針對OpenVINO 2023.1新版本進(jìn)行了技術(shù)亮點解析,并詳細(xì)講解了新版本如何更好地支持生成式AI模型、框架及大
    的頭像 發(fā)表于 11-04 16:00 ?513次閱讀
    oneAPI &amp; <b class='flag-5'>OpenVINO</b>?聯(lián)合<b class='flag-5'>開發(fā)者</b>大會開啟:英特爾持續(xù)開源創(chuàng)新,助力<b class='flag-5'>AI</b><b class='flag-5'>開發(fā)</b>落地

    HarmonyOS SDK,開發(fā)者實現(xiàn)更具象、個性化開發(fā)訴求

    隨著移動互聯(lián)網(wǎng)的逐步成熟,用戶的需求越來越細(xì)化。鴻蒙生態(tài)為開發(fā)者提供的HarmonyOS SDK開放能力,高效美團(tuán)外賣等合作伙伴實現(xiàn)更具象、個性化的開發(fā)訴求,給用戶提供更豐富便捷的
    發(fā)表于 10-24 17:34

    基于英特爾開發(fā)套件AI字幕生成器設(shè)計

    市面上有很多自然語言處理模型,本文旨在幫助開發(fā)者快速將 OpenAI* 的熱門 NLP 模型 Whisper 部署至英特爾 開發(fā)套件愛克斯
    的頭像 發(fā)表于 09-27 16:59 ?778次閱讀
    基于英特爾<b class='flag-5'>開發(fā)套件</b>的<b class='flag-5'>AI</b>字幕生成器設(shè)計