使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

这篇具有很好参考价值的文章主要介绍了使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1.1 产业实践中部署AI模型的痛点

1.1.1  部署模型的典型流程

1.1.2 端到端的AI性能

1.1.3 部署模型的难点和痛点

1.2 FastDeploy简介

1.3 英特尔独立显卡简介

1.4 使用FastDeploy在英特尔CPU和独立显卡上部署模型的步骤

1.4.1 搭建FastDeploy开发环境

1.4.2 下载模型和测试图处

1.4.3 三行代码完成在项特尔CPU上的模型部署

1.4.4 使用RuntimeOption 将AI推理硬伯切换项特尔独立显卡

1.5 总结

作者:王一凡 英特尔物联网创新大使 

1.1 产业实践中部署AI模型的痛点

1.1.1  部署模型的典型流程

        对于来自于千行百业,打算将AI模型集成到自己的主线产品中,解决本行痛点的AI开发者来说,部署AI模型,或者说将AI模型集成到自己产品中去的典型步骤(以计算机视觉应用为例)有:

  • 采集图像&图像解码
  • 数据预处理
  • 执行AI推理计算
  • 推理结果后处理
  • 将后处理结果集成到业务流程

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

1.1.2 端到端的AI性能

        当AI开发者将AI模型集成到业务流程后,不太关心AI模型在AI推理硬件上单纯的推理速度,而是关心包含图像解码、数据预处理和后处理的端到端的AI性能。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型 

        在产业实践中,我们发现不仅AI推理硬件和对应推理引擎(例如:OpenVINO Runtime)对于端到端的性能影响大,数据预处理和后处理代码是否高效对于端到端的性能影响也大。

        以CPU上预处理操作融合优化为例,经过优化后的前处理代码,可以使得AI端到端性能得到较大提升。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

数据来源:感谢FastDeploy团队完成测试并提供数据 

结论:优秀且高效的前后处理代码,可以明显提高端到端的AI性能!

1.1.3 部署模型的难点和痛点

        在产业实践中,在某个任务上当前最优的SOTA模型的很有可能与部署相关的文档和范例代码不完整,AI开发者需要通过阅读SOTA模型源代码来手动编写模型的前后处理代码,这导致:

  • 耗时耗力:阅读SOTA模型源代码来理解模型的前后处理,提高了部署模型的技术门槛。另外,手动编写前后处理代码,也需要更多的测试工作来消除bug。
  • 精度隐患:手动或借助网上开源但未经过实践验证过的前后处理代码,会有精度隐患,即当前对于某些图片精度很好,但对于另外的图片精度就下降。笔者就遇到过类似问题,原因在于调用了一个GitHub上下载的NMS()函数,这个函数对代码仓提供的范例模型有效,但对于笔者使用的模型恰恰就出现丢失检测对象的问题。
  • 优化困难:解决了精度问题后,下一步就是通过多线程、模型压缩、Batch优化等软件技术进一步提升端到端的AI性能,节约硬件采购成本。这些软件技术对于计算机专业的工程师不算挑战,但对于千行百业中非计算机专业的工程师,却无形中建立起了一道极高的门槛。

        为了赋能千行百业的工程师,高效便捷的将AI模型集成到自己的产品中去,急需一个专门面向AI模型部署的软件工具。

1.2 FastDeploy简介

        FastDeploy是一款全场景、易用灵活、极致高效的AI推理部署工具。提供开箱即用云边端部署体验, 支持超过 150+ Text, Vision, Speech和跨模态模型,并实现端到端的推理性能优化。包括图像分类、物体检测、图像分割、人脸检测、人脸识别、关键点检测、抠图、OCR、NLP、TTS等任务,满足开发者多场景、多硬件、多平台的产业部署需求。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

 FastDeploy项目链接: https://github.com/PaddlePaddle/FastDeploy

1.3 英特尔独立显卡简介

        英特尔在2021年的构架日上发布了独立显卡产品路线图,OpenVINO从2022.2版本开始支持AI模型在英特尔独立显卡上做AI推理计算。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

         当前已经可以购买的消费类独立显卡是英特尔锐炫TM独立显卡A7系列,并已发布在独立显卡上做AI推理计算的范例程序。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

1.4 使用FastDeploy在英特尔CPU和独立显卡上部署模型的步骤

1.4.1 搭建FastDeploy开发环境

        当前FastDeploy 最新的Release版本是1.0.1,一行命令即可完成FastDeploy的安装:

pip install fastdeploy-python –f https://www.paddlepaddle.org.cn/whl/fastdeploy.html 

1.4.2 下载模型和测试图处

        FastDeploy支持的PaddleSeg预训练模型下载地址:FastDeploy/examples/vision/segmentation/paddleseg at develop · PaddlePaddle/FastDeploy · GitHub

        测试图片下载地址:https://paddleseg.bj.bcebos.com/dygraph/demo/cityscapes_demo.png

使用命令,下载模型和测试图片

图片:

wget https://paddleseg.bj.bcebos.com/dygraph/demo/cityscapes_demo.png

模型:https://github.com/PaddlePaddle/FastDeploy/tree/develop/examples/vision/segmentation/paddleseg

1.4.3 三行代码完成在项特尔CPU上的模型部署

    基于FastDeploy,只需三行代码即可完成在英特尔CPU上的模型部署,并获得经过后处理的推理结果。

import fastdeploy as fd

import cv2

# 读取图片

im = cv2.imread("cityscapes_demo.png")

# 加载飞桨PaddleSeg模型

model = fd.vision.segmentation.PaddleSegModel(“model.pdmodel”, “model.pdiparams”,“deploy.yaml”)

# 预测结果

result = model.predict(im)

print(result)

        将推理结果print出来,如下图所示,经过FastDeploy完成的AI推理计算,拿到的是经过后处理的结果,可以直接将该结果传给业务处理流程

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

1.4.4 使用RuntimeOption 将AI推理硬伯切换项特尔独立显卡

        在上述三行代码的基础上,只需要使用RuntimeOption将AI推理硬件切换为英特尔独立显卡,完成代码如下所示: 

import fastdeploy as fd

import cv2

# 读取图片

im = cv2.imread("cityscapes_demo.png")

h, w, c = im.shape

# 通过RuntimeOption配置后端

option = fd.RuntimeOption()

option.use_openvino_backend()

option.set_openvino_device("GPU.1")

# 固定模型的输入形状

option.set_openvino_shape_info({"x": [1,c,h,w]})

# 加载飞桨PaddleSeg模型

model = fd.vision.segmentation.PaddleSegModel(“model.pdmodel”, “model.pdiparams”,“deploy.yaml”,

                                              runtime_option=option)                             

# 预测结果

result = model.predict(im)

        set_openvino_device()中字符串填写“GPU.1”是根据英特尔独立显卡在操作系统的中设备名称,如下图所示:

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

 文章来源地址https://www.toymoban.com/news/detail-429833.html

当前,在英特尔独立显卡上做AI推理,需要注意的问题有:

  • 需要固定模型输入节点的形状(Shape)
  • 英特尔GPU上支持的算子数量与CPU并不一致,在部署PPYOLE时,如若全采用GPU执行,会出现如下提示

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

             这是需要将推理硬件设置为异构方式

option.set_openvino_device("HETERO:GPU.1,CPU")

到此,使用FastDeploy在英特尔CPU和独立显卡上部署AI模型的工作全部完成。

1.5 总结

        面对千行百业中部署AI模型的挑战,FastDeploy工具很好的保证了部署AI模型的精度,以及端到端AI性能问题,也提高了部署端工作的效率。通过RuntimeOption,将FastDeploy的推理后端设置为OpenVINO,可以非常便捷将AI模型部署在英特尔CPU、集成显卡和独立显卡上。

使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型

 

到了这里,关于使用FastDeploy在英特尔CPU和独立显卡上端到端高效部署AI模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在英特尔 CPU 上微调 Stable Diffusion 模型

    扩散模型能够根据文本提示生成逼真的图像,这种能力促进了生成式人工智能的普及。人们已经开始把这些模型用在包括数据合成及内容创建在内的多个应用领域。Hugging Face Hub 包含超过 5 千个预训练的文生图 模型。这些模型与 Diffusers 库 结合使用,使得构建图像生成工作流

    2024年02月15日
    浏览(76)
  • 在英特尔 CPU 上加速 Stable Diffusion 推理

    前一段时间,我们向大家介绍了最新一代的 英特尔至强 CPU (代号 Sapphire Rapids),包括其用于加速深度学习的新硬件特性,以及如何使用它们来加速自然语言 transformer 模型的 分布式微调 和 推理。 英特尔至强处理器: https://www.intel.com/content/www/us/en/products/details/processors/xeon/scal

    2024年02月09日
    浏览(43)
  • 英特尔集成显卡+ChatGLM3大语言模型的企业本地AI知识库部署

    作者: 英特尔创新大使 刘力 英特尔开发者技术推广经理 李翊玮     在当今的企业环境中,信息的快速获取和处理对于企业的成功至关重要。为了满足这一需求,我们可以将RAG技术与企业本地知识库相结合,以提供实时的、自动生成的信息处理和决策支持。这将有助于企业

    2024年04月26日
    浏览(43)
  • Ubuntu Linux 22.04 快速安装英特尔显卡驱动(含Edge AI 包)

    英特尔 EIV (Edge insight Vision)具有一组预集成组件,专为边缘应用的计算机视觉和深度学习推理而设计,并针对英特尔®架构进行了优化。它作为容器化架构或独立运行时实现。 此软件包包含用于在英特尔处理器和英特尔显卡设备上安装英特尔®显卡驱动程序和为 OpenVINO™ 推理

    2024年02月08日
    浏览(42)
  • 英特尔13代桌面CPU平台安装ubuntu20.04LTS记录

    安装环境一: i7-13700K  华硕Z790-P  16X2GB内存   华硕 TUF 3070 O8G 安装环境二: i5-13400    华硕B760M-A D4 8x2GB内存   UHD730核显 安装系统: ubuntu20.04LTS(首先用光驱安装失败,后面用U盘更换ubuntu22.04.2LTS成功) 因为特殊原因,先用光驱安装ubuntu20.04LTS,首先安装很慢很慢,要等半小时进

    2024年02月06日
    浏览(56)
  • 英特尔Raptor Lake Refresh第14代CPU:传闻发布日期、价格、规格等

    英特尔预计将在今年秋天推出第14代Raptor Lake-S Refresh CPU。虽然即将推出的系列芯片沿用了当前的第13代英特尔核心系列,但它们实际上是相同CPU的更新版本。 Raptor Lake-s Refresh芯片没有任何官方消息,但几次所谓的泄露让我们了解了我们可能会期待什么。如果这些传言和报道属

    2024年02月11日
    浏览(28)
  • 越小越好: Q8-Chat,在英特尔至强 CPU 上体验高效的生成式 AI

    大语言模型 (LLM) 正在席卷整个机器学习世界。得益于其 transformer 架构,LLM 拥有从大量非结构化数据 (如文本、图像、视频或音频) 中学习的不可思议的能力。它们在 多种任务类型 上表现非常出色,无论是文本分类之类的抽取任务 (extractive task) 还是文本摘要和文生图像之类的

    2024年02月06日
    浏览(88)
  • 英特尔 D435/D435i双目相机 使用指南

    目录 Intel RealSense D435深度相机介绍: 关于左右红外图像: 关于像素深度的检索: Intel RealSense 各种工具: 工具的介绍 相机基本操作 相机自校准 获取相机参数 python脚本 Linux命令行 相机运行并显示画面 获得深度图像 点云 帧对齐 英特尔官方手册:调整深度摄像头以获得最佳

    2024年02月02日
    浏览(36)
  • 第三代英特尔 至强 可扩展处理器(Ice Lake)和英特尔 深度学习加速助力阿里巴巴 Transformer 模型性能提升

    第三代英特尔® 至强® 可扩展处理器采用了英特尔10 纳米 + 制程技术。相比于第二代英特尔® 至强® 可扩展处理器,该系列处理器内核更多、内存容量和频率更高。阿里巴巴集团和英特尔的技术专家共同探索了这些能力对人工智能应用的意义,特别是在与英特尔® 深度学习加

    2024年02月16日
    浏览(28)
  • 英特尔开始加码封装领域 | 百能云芯

      在积极推进先进制程研发的同时,英特尔正在加大先进封装领域的投入。在这个背景下,该公司正在马来西亚槟城兴建一座全新的封装厂,以加强其在2.5D/3D封装布局领域的实力。据了解,英特尔计划到2025年前,将其最先进的3D Foveros封装产能扩增至目前的四倍,同时还向客

    2024年02月11日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包