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

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

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

低門檻AI部署工具FastDeploy開(kāi)源!

新機(jī)器視覺(jué) ? 來(lái)源:新機(jī)器視覺(jué) ? 作者:新機(jī)器視覺(jué) ? 2022-11-08 14:28 ? 次閱讀

人工智能產(chǎn)業(yè)應(yīng)用發(fā)展的越來(lái)越快,開(kāi)發(fā)者需要面對(duì)的適配部署工作也越來(lái)越復(fù)雜。層出不窮的算法模型、各種架構(gòu)的AI硬件、不同場(chǎng)景的部署需求(服務(wù)器、服務(wù)化、嵌入式、移動(dòng)端等)、不同操作系統(tǒng)和開(kāi)發(fā)語(yǔ)言,為AI開(kāi)發(fā)者項(xiàng)目落地帶來(lái)不小的挑戰(zhàn)。edc63234-5f1e-11ed-8abf-dac502259ad0.png

為了解決AI部署落地難題,我們發(fā)起了FastDeploy項(xiàng)目。FastDeploy針對(duì)產(chǎn)業(yè)落地場(chǎng)景中的重要AI模型,將模型API標(biāo)準(zhǔn)化,提供下載即可運(yùn)行的Demo示例。相比傳統(tǒng)推理引擎,做到端到端的推理性能優(yōu)化。FastDeploy還支持在線(服務(wù)化部署)和離線部署形態(tài),滿足不同開(kāi)發(fā)者的部署需求。

經(jīng)過(guò)為期一年的高密度打磨,F(xiàn)astDeploy目前具備三類特色能力:

全場(chǎng)景:支持GPU、CPU、Jetson、ARM CPU、瑞芯微NPU、晶晨NPU、恩智浦NPU等多類硬件,支持本地部署、服務(wù)化部署、Web端部署、移動(dòng)端部署等,支持CV、NLP、Speech三大領(lǐng)域,支持圖像分類、圖像分割、語(yǔ)義分割、物體檢測(cè)、字符識(shí)別(OCR)、人臉檢測(cè)識(shí)別、人像扣圖、姿態(tài)估計(jì)、文本分類、信息抽取、行人跟蹤、語(yǔ)音合成等16大主流算法場(chǎng)景。

易用靈活:三行代碼完成AI模型的部署,一行API完成模型替換,無(wú)縫切換至其他模型部署,提供了150+熱門AI模型的部署Demo。

極致高效:相比傳統(tǒng)深度學(xué)習(xí)推理引擎只關(guān)注模型的推理時(shí)間,F(xiàn)astDeploy則關(guān)注模型任務(wù)的端到端部署性能。通過(guò)高性能前后處理、整合高性能推理引擎、一鍵自動(dòng)壓縮等技術(shù),實(shí)現(xiàn)了AI模型推理部署的極致性能優(yōu)化。

項(xiàng)目傳送門:

https://github.com/PaddlePaddle/FastDeploy

以下將對(duì)該3大特性做進(jìn)一步技術(shù)解讀,全文大約2100字,預(yù)計(jì)閱讀時(shí)長(zhǎng)3分鐘。

1

3大特性篇

2

3步部署實(shí)戰(zhàn)篇,搶先看

CPU/GPU部署實(shí)戰(zhàn)

Jetson部署實(shí)戰(zhàn)

RK3588部署實(shí)戰(zhàn)(RV1126、晶晨A311D等NPU類似)

1

3大特性解讀

全場(chǎng)景:一套代碼云邊端多平臺(tái)多硬件一網(wǎng)打盡,覆蓋CV、NLP、Speech

支持PaddleInference、TensorRT、OpenVINO、ONNXRuntime、PaddleLite、RKNN等后端,覆蓋常見(jiàn)的NVIDIAGPU、x86CPU、Jetson Nano、Jetson TX2、ARMCPU(移動(dòng)端、ARM開(kāi)發(fā)板)、Jetson Xavier、瑞芯微NPU(RK3588、RK3568、RV1126、RV1109、RK1808)、晶晨NPU(A311D、S905D)等云邊端場(chǎng)景的多類幾十款A(yù)I硬件部署。同時(shí)支持服務(wù)化部署、離線CPU/GPU部署、端側(cè)和移動(dòng)端部署方式。針對(duì)不同硬件,統(tǒng)一API保證一套代碼在數(shù)據(jù)中心、邊緣部署和端側(cè)部署無(wú)縫切換。edd89dc0-5f1e-11ed-8abf-dac502259ad0.jpgFastDeploy支持CV、NLP、Speech三大AI領(lǐng)域,覆蓋16大類算法(圖像分類、圖像分割、語(yǔ)義分割、物體檢測(cè)、字符識(shí)別(OCR) 、人臉檢測(cè)、人臉關(guān)鍵點(diǎn)檢測(cè)、人臉識(shí)別、人像扣圖、視頻扣圖、姿態(tài)估計(jì)、文本分類 信息抽取 文圖生成、行人跟蹤、語(yǔ)音合成)。支持飛槳PaddleClas、PaddleDetection、PaddleSeg、PaddleOCR、PaddleNLP、PaddleSpeech 6大熱門AI套件的主流模型,同時(shí)也支持生態(tài)(如PyTorch、ONNX等)熱門模型的部署。ede4faa2-5f1e-11ed-8abf-dac502259ad0.gif ?

易用靈活,三行代碼完成模型部署,一行命令快速體驗(yàn)150+熱門模型部署

FastDeploy三行代碼可完成AI模型在不同硬件上的部署,極大降低了AI模型部署難度和工作量。一行命令切換TensorRT、OpenVINO、Paddle Inference、Paddle Lite、ONNX Runtime、RKNN等不同推理后端和對(duì)應(yīng)硬件。低門檻的推理引擎后端集成方案,平均一周時(shí)間即可完成任意硬件推理引擎的接入使用,解耦前后端架構(gòu)設(shè)計(jì),簡(jiǎn)單編譯測(cè)試即可體驗(yàn)FastDeploy支持的AI模型。開(kāi)發(fā)者可以根據(jù)模型API實(shí)現(xiàn)相應(yīng)模型部署,也可以選擇git clone一鍵獲取150+熱門AI模型的部署示例Demo,快速體驗(yàn)不同模型的推理部署。

			# PP-YOLOE的部署 import fastdeploy as fd import cv2 model = fd.vision.detection.PPYOLOE("model.pdmodel", "model.pdiparams", "infer_cfg.yml") im = cv2.imread("test.jpg") result = model.predict(im) # YOLOv7的部署 import fastdeploy as fd import cv2 model = fd.vision.detection.YOLOv7("model.onnx") im = cv2.imread("test.jpg") result = model.predict(im)

FastDeploy部署不同模型


			# PP-YOLOE的部署 import fastdeploy as fd import cv2 option = fd.RuntimeOption() option.use_cpu() option.use_openvino_backend() # 一行命令切換使用 OpenVINO部署 model = fd.vision.detection.PPYOLOE("model.pdmodel", "model.pdiparams", "infer_cfg.yml", runtime_option=option) im = cv2.imread("test.jpg") result = model.predict(im)FastDeploy切換后端和硬件
						

極致高效:一鍵壓縮提速,預(yù)處理加速,端到端性能優(yōu)化,提升AI算法產(chǎn)業(yè)落地

FastDeploy在吸收TensorRT、OpenVINO、Paddle Inference、Paddle Lite、ONNX Runtime、RKNN等高性能推理優(yōu)勢(shì)的同時(shí),通過(guò)端到端的推理優(yōu)化解決了傳統(tǒng)推理引擎僅關(guān)心模型推理速度的問(wèn)題,提升整體推理速度和性能。集成自動(dòng)壓縮工具,在參數(shù)量大大減小的同時(shí)(精度幾乎無(wú)損),推理速度大幅提升。使用CUDA加速優(yōu)化預(yù)處理和后處理模塊,將YOLO系列的模型推理加速整體從41ms優(yōu)化到25ms。端到端的優(yōu)化策略,徹底解決AI部署落地中的性能難題。更多性能優(yōu)化,歡迎關(guān)注GitHub了解詳情。https://github.com/PaddlePaddle/FastDeployee0f9bea-5f1e-11ed-8abf-dac502259ad0.png

2

3步部署實(shí)戰(zhàn)篇,搶先看

1

CPU/GPU部署實(shí)戰(zhàn)(以YOLOv7為例)

安裝FastDeploy部署包,下載部署示例(可選,也可以三行API實(shí)現(xiàn)部署代碼)


			pip install fastdeploy-gpu-python -f https://www.paddlepaddle.org.cn/whl/fastdeploy.html git clone https://github.com/PaddlePaddle/FastDeploy.git cd examples/vision/detection/yolov7/python/
						

準(zhǔn)備模型文件和測(cè)試圖片


			wget https://bj.bcebos.com/paddlehub/fastdeploy/yolov7.onnx wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
						

CPU/GPU推理模型


			# CPU推理 python infer.py --model yolov7.onnx --image 000000014439.jpg --device cpu # GPU推理 python infer.py --model yolov7.onnx --image 000000014439.jpg --device gpu # GPU上使用TensorRT推理 python infer.py --model yolov7.onnx --image 000000014439.jpg --device gpu --use_trt True

推理結(jié)果示例:

ee3d56b6-5f1e-11ed-8abf-dac502259ad0.png

2

Jetson部署實(shí)戰(zhàn)(以YOLOv7為例)

安裝FastDeploy部署包,配置環(huán)境變量


			git clone https://github.com/PaddlePaddle/FastDeploy cd FastDeploy mkdir build && cd build cmake .. -DBUILD_ON_JETSON=ON -DENABLE_VISION=ON -DCMAKE_INSTALL_PREFIX=${PWD}/install make -j8 make install cd FastDeploy/build/install source fastdeploy_init.sh
						

準(zhǔn)備模型文件和測(cè)試圖片


			wget https://bj.bcebos.com/paddlehub/fastdeploy/yolov7.onnx wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
						

編譯推理模型


			cd examples/vision/detection/yolov7/cpp cmake .. -DFASTDEPLOY_INSTALL_DIR=${FASTDEPOLY_DIR} mkdir build && cd build make -j # 使用TensorRT推理(當(dāng)模型不支持TensorRT時(shí)會(huì)自動(dòng)轉(zhuǎn)成使用CPU推理) ./infer_demo yolov7s.onnx 000000014439.jpg 27s.onnx 000000014439.jpg 2

推理結(jié)果示例:

ee534ce6-5f1e-11ed-8abf-dac502259ad0.png

3

RK3588部署實(shí)戰(zhàn)以輕量化檢測(cè)網(wǎng)絡(luò)PicoDet為例)

安裝FastDeploy部署包,下載部署示例(可選,也可以三行API實(shí)現(xiàn)部署代碼)


			# 參考編譯文檔,完成FastDeploy編譯安裝 # 參考文檔鏈接:https://github.com/PaddlePaddle/FastDeploy/blob/develop/docs/cn/build_and_install/rknpu2.md # 下載部署示例代碼 git clone https://github.com/PaddlePaddle/FastDeploy.git cd examples/vision/detection/paddledetection/rknpu2/python
						

準(zhǔn)備模型文件和測(cè)試圖片


			wget https://bj.bcebos.com/fastdeploy/models/rknn2/picodet_s_416_coco_npu.zip unzip -qo picodet_s_416_coco_npu.zip ## 下載Paddle靜態(tài)圖模型并解壓 wget https://bj.bcebos.com/fastdeploy/models/rknn2/picodet_s_416_coco_npu.zip unzip -qo picodet_s_416_coco_npu.zip # 靜態(tài)圖轉(zhuǎn)ONNX模型,注意,這里的save_file請(qǐng)和壓縮包名對(duì)齊 paddle2onnx --model_dir picodet_s_416_coco_npu --model_filename model.pdmodel --params_filename model.pdiparams --save_file picodet_s_416_coco_npu/picodet_s_416_coco_npu.onnx --enable_dev_version True python -m paddle2onnx.optimize --input_model picodet_s_416_coco_npu/picodet_s_416_coco_npu.onnx --output_model picodet_s_416_coco_npu/picodet_s_416_coco_npu.onnx --input_shape_dict "{'image':[1,3,416,416]}" # ONNX模型轉(zhuǎn)RKNN模型 # 轉(zhuǎn)換模型,模型將生成在picodet_s_320_coco_lcnet_non_postprocess目錄下 python tools/rknpu2/export.py --config_path tools/rknpu2/config/RK3588/picodet_s_416_coco_npu.yaml # 下載圖片 wget https://gitee.com/paddlepaddle/PaddleDetection/raw/release/2.4/demo/000000014439.jpg
						

推理模型


		python3 infer.py --model_file ./picodet _3588/picodet_3588.rknn --config_file ./picodet_3588/deploy.yaml --image images/000000014439.jpg
		審核編輯 :李倩

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

    關(guān)注

    87

    文章

    29806

    瀏覽量

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

    關(guān)注

    1789

    文章

    46652

    瀏覽量

    237073
  • 深度學(xué)習(xí)
    +關(guān)注

    關(guān)注

    73

    文章

    5463

    瀏覽量

    120890

原文標(biāo)題:模型部署不再難!低門檻AI部署工具FastDeploy開(kāi)源!

文章出處:【微信號(hào):vision263com,微信公眾號(hào):新機(jī)器視覺(jué)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    企業(yè)AI模型部署怎么做

    AI模型部署作為這一轉(zhuǎn)型過(guò)程中的關(guān)鍵環(huán)節(jié),其成功實(shí)施對(duì)于企業(yè)的長(zhǎng)遠(yuǎn)發(fā)展至關(guān)重要。在此,AI部落小編為您介紹企業(yè)AI模型部署的步驟以及注意事項(xiàng)
    的頭像 發(fā)表于 11-04 10:15 ?69次閱讀

    Arm推出GitHub平臺(tái)AI工具,簡(jiǎn)化開(kāi)發(fā)者AI應(yīng)用開(kāi)發(fā)部署流程

    專為 GitHub Copilot 設(shè)計(jì)的 Arm 擴(kuò)展程序,可加速?gòu)脑频竭吘墏?cè)基于 Arm 平臺(tái)的開(kāi)發(fā)。 Arm 原生運(yùn)行器為部署云原生、Windows on Arm 以及云到邊緣側(cè)的 AI
    的頭像 發(fā)表于 10-31 18:51 ?756次閱讀

    生成式AI工具作用

    生成式AI工具是指那些能夠自動(dòng)生成文本、圖像、音頻、視頻等多種類型數(shù)據(jù)的人工智能技術(shù)。在此,petacloud.ai小編為您整理生成式AI工具
    的頭像 發(fā)表于 10-28 11:19 ?140次閱讀

    Llama 3 與開(kāi)源AI模型的關(guān)系

    在人工智能(AI)的快速發(fā)展中,開(kāi)源AI模型扮演著越來(lái)越重要的角色。它們不僅推動(dòng)了技術(shù)的創(chuàng)新,還促進(jìn)了全球開(kāi)發(fā)者社區(qū)的合作。Llama 3,作為一個(gè)新興的AI項(xiàng)目,與
    的頭像 發(fā)表于 10-27 14:42 ?289次閱讀

    Llama 3 模型與其他AI工具對(duì)比

    Llama 3模型與其他AI工具的對(duì)比可以從多個(gè)維度進(jìn)行,包括但不限于技術(shù)架構(gòu)、性能表現(xiàn)、應(yīng)用場(chǎng)景、定制化能力、開(kāi)源與成本等方面。以下是對(duì)Llama 3模型與其他一些主流AI
    的頭像 發(fā)表于 10-27 14:37 ?278次閱讀

    真格基金宣布捐贈(zèng)開(kāi)源AI項(xiàng)目vLLM

    開(kāi)源技術(shù)處于 AI 革命的中心。Llama 3、Mistral 等開(kāi)源大模型迅速追趕 GPT-4,TensorFlow、Pytorch 等開(kāi)源深度學(xué)習(xí)框架提供了豐富的庫(kù)和
    的頭像 發(fā)表于 09-24 16:13 ?300次閱讀

    NVIDIA RTX AI套件簡(jiǎn)化AI驅(qū)動(dòng)的應(yīng)用開(kāi)發(fā)

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

    降價(jià)潮背后:大模型落地門檻真的降了嗎?

    “比起價(jià)格門檻AI大模型的應(yīng)用門檻,更難跨越?!贝竽P蜖?zhēng)相降價(jià)下,AI應(yīng)用的門檻真的降低了嗎?答案還真不一定。因?yàn)槌藘r(jià)格
    的頭像 發(fā)表于 06-13 08:04 ?275次閱讀
    降價(jià)潮背后:大模型落地<b class='flag-5'>門檻</b>真的降了嗎?

    IBM開(kāi)源AI模型,推動(dòng)AI企業(yè)化應(yīng)用

    IBM近日宣布,將把一系列先進(jìn)的人工智能模型以開(kāi)源軟件的形式發(fā)布,此舉標(biāo)志著人工智能技術(shù)在企業(yè)應(yīng)用上的新篇章。公司表示,隨著watsonx平臺(tái)推出滿一年,該平臺(tái)將迎來(lái)重大更新,新增的數(shù)據(jù)和自動(dòng)化功能將使企業(yè)能夠更輕松地集成和部署AI
    的頭像 發(fā)表于 05-22 09:25 ?440次閱讀

    紅帽發(fā)布RHEL AI開(kāi)發(fā)者預(yù)覽版,集成IBM Granite模型,簡(jiǎn)化AI開(kāi)發(fā)流程

    RHEL AI依托InstructLab開(kāi)源項(xiàng)目,結(jié)合IBM Research的開(kāi)源授權(quán)Granite大型語(yǔ)言模型與InstructLab模型對(duì)齊工具,采用LAB(Large-scal
    的頭像 發(fā)表于 05-08 15:01 ?451次閱讀

    簡(jiǎn)單兩步使用OpenVINO?搞定Qwen2的量化與部署任務(wù)

    英特爾 OpenVINO? 工具套件是一款開(kāi)源 AI 推理優(yōu)化部署工具套件,可幫助開(kāi)發(fā)人員和企業(yè)加速生成式人工智能 (AIGC)、大語(yǔ)言模
    的頭像 發(fā)表于 04-26 09:39 ?1526次閱讀
    簡(jiǎn)單兩步使用OpenVINO?搞定Qwen2的量化與<b class='flag-5'>部署</b>任務(wù)

    Banana Pi BPI-M7 RK3588開(kāi)發(fā)板運(yùn)行RKLLM軟件堆AI大模型部署

    Banana Pi BPI-M7開(kāi)源硬件開(kāi)發(fā)板 RKLLM 軟件堆??梢詭椭脩艨焖賹?AI 模型部署到 Rockchip 芯片上。 整體框架如下:
    的頭像 發(fā)表于 04-11 17:12 ?2369次閱讀
    Banana Pi BPI-M7 RK3588開(kāi)發(fā)板運(yùn)行RKLLM軟件堆<b class='flag-5'>AI</b>大模型<b class='flag-5'>部署</b>

    簡(jiǎn)單三步使用OpenVINO?搞定ChatGLM3的本地部署

    英特爾 OpenVINO? 工具套件是一款開(kāi)源 AI 推理優(yōu)化部署工具套件,可幫助開(kāi)發(fā)人員和企業(yè)加速生成式人工智能 (AIGC)、大語(yǔ)言模
    的頭像 發(fā)表于 04-03 18:18 ?1979次閱讀
    簡(jiǎn)單三步使用OpenVINO?搞定ChatGLM3的本地<b class='flag-5'>部署</b>

    [開(kāi)源]萬(wàn)界星空開(kāi)源MES系統(tǒng),支持代碼大屏設(shè)計(jì)

    萬(wàn)界星空科技免費(fèi)MES、開(kāi)源MES、商業(yè)開(kāi)源MES、商業(yè)開(kāi)源代碼MES、市面上最好的開(kāi)源MES、MES源代碼、免費(fèi)MES、免費(fèi)智能制造系統(tǒng)
    的頭像 發(fā)表于 01-12 13:43 ?685次閱讀
    [<b class='flag-5'>開(kāi)源</b>]萬(wàn)界星空<b class='flag-5'>開(kāi)源</b>MES系統(tǒng),支持<b class='flag-5'>低</b>代碼大屏設(shè)計(jì)

    免費(fèi)開(kāi)源圖像修復(fù)工具lama-cleaner介紹

    Lama Cleaner 是由 SOTA AI 模型提供支持的免費(fèi)開(kāi)源圖像修復(fù)工具??梢詮膱D片中移除任何不需要的物體、缺陷和人,或者擦除并替換(powered by stable diffusion)圖片上的任何東西。
    的頭像 發(fā)表于 12-04 10:23 ?2655次閱讀
    免費(fèi)<b class='flag-5'>開(kāi)源</b>圖像修復(fù)<b class='flag-5'>工具</b>lama-cleaner介紹