0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

使用OpenVINO™在算力魔方上加速stable diffusion模型

英特尔物联网 来源:英特尔物联网 2023-05-12 09:10 次阅读

文章作者:

英特尔AI布道师 武卓博士

英特尔物联网行业创新大使 刘力

01什么是 stable diffusion 模型

Stable Diffusion 是 stability.ai 开源的 AI 图像生成模型,实现输入文字,生成图像的功能。Stable Diffusion 将 AI 图像生成提升到了全新高度,将引发媒体创作领域的革命。

引用自:https://github.com/Stability-AI/StableDiffusion

02什么是算力魔方

算力魔方是一款可以DIY的迷你主机,采用了抽屉式设计,后续组装、升级、维护只需要拔插模块。

通过选择计算模块的版本,再搭配不同额 IO 模块可以组成丰富的配置,适应不同场景。性能不够时,可以升级计算模块提升算力, IO 接口不匹配时,可以更换 IO 模块调整功能,而无需重构整个系统。

基于 OpenVINO 在算力魔方上实现 Stable Diffusion 模型的推理加速,获得了14.9秒出图(不含模型初始化)的性能。

在图像生成过程中:CPU 占用16%,内存占用7.5GB, GPU 占用100%,显存利用率98.5%。

16e948fa-f005-11ed-90ce-dac502259ad0.png

测试代码如下所示,方便读者在算力魔方上复现:

https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/225-stable-diffusion-text-to-image

(复制链接到浏览器打开)

那么接下来,我们就为大家划划重点,起来看看有哪些重要的步骤、以及生成的画作效果如何吧

在这个代码示例中,我们采用了 Stable Diffusion 模型,将模型转换为 OpenVINO 中间表示 ( IR ) 格式,以便它在英特尔 GPU 上获得高效运行。

另外,通过将 FP32 模型压缩到 FP16 ,我们将模型大小减少了一半(接近一半),而且运行所需的 RAM/VRAM 现在也少了很多。最重要的是,由于加入了英特尔 Xe 矩阵扩展( XMX ), GPU 处理速度也获得了显著提升。

以下是我运行这个 Notebook 得到的一些结果,非常有趣。借助英特尔锐炫 A380 独立显卡,我可以实现大约每秒 6.0 次的迭代(未使用调试模式)。这意味着生成一幅下面的高质量图像通常只需不到 10 秒钟。

图1在基于OpenVINO Notebooks 和算力魔方(英特尔锐炫 A380 )的平台上,通过“ StableDiffusion ”模型文本转图像功能生成的结果

看完了以上的 AI 作画的结果,你有没有心动、想自己动手试试呢?接下来,我们来看看你需要哪些主要步骤,就能在自己的机器上运行我们这个 StableDiffusion 的 notebook 代码示例了

首先,这是 OpenVINO Notebooks 的仓库。它具有今天完成演示所需要的一切。

openvino_notebooks/notebooks at main · openvinotoolkit/openvino_notebooks

向右滑动查看完整代码

Stable Diffusion 位于 225-stable-diffusion-text-to-image 文件夹下。

在 notebook 代码示例中,我们不仅介绍了著名的文本转图像管道,还加入了图像转图像生成管道。但它的真正意义是什么?我们如何运行它?

175ee86c-f005-11ed-90ce-dac502259ad0.png

管道

03如何安装

如需安装 OpenVINO Notebooks ,您可参照此处的说明(适用于 Windows ):

https://github.com/openvinotoolkit/openvino_notebooks/wiki/Windows

如果您是 Linux 用户,可点击此链接:

https://github.com/openvinotoolkit/openvino_notebooks/wiki/Ubuntu

总体而言,您可实施以下几步:

安装 Python 3.10.x。(或下方内容)并创建一个虚拟环境

python3 -m venv openvino_env
source openvino_env/bin/activate #for linux

对目录实施 Git 克隆

git clone --depth=1 https://github.com/openvinotoolkit/openvino_notebooks.gitcd openvino_notebooks

安装所有的库和依赖项

pip install -r requirements.txt

运行 Jupyter Notebook

jupyter lab notebooks
178a12c6-f005-11ed-90ce-dac502259ad0.png

运行所有单元格并等待 =)

现在,查看代码。我们切实地优化 PyTorch 管道,并使用 OpenVINO 执行代码。

17c3b882-f005-11ed-90ce-dac502259ad0.png

首次下载和转换可能需要一点时间。完成之后,您将得到一组 IR 文件。

为了方便,我已在这里将这些预训练的优化模型更新到 huggingface,大家可以直接下载使用:

https://huggingface.co/bes-dev/stable-diffusion-v1-4-openvino

(复制链接到浏览器打开)

17f63b7c-f005-11ed-90ce-dac502259ad0.png

现在,如果您有幸使用英特尔锐炫独立显卡,您便可将下图中设备名称的代码改为“ GPU ”。默认情况下,它使用“ AUTO ”,并会自动切换至检测到的 GPU 。

18205948-f005-11ed-90ce-dac502259ad0.png

让它在 GPU 上运行:

18468e24-f005-11ed-90ce-dac502259ad0.png

自动插件。它先使用 CPU ,然后自动切换至 GPU 。

04结论

算力魔方是一款小巧而强大的计算设备,它们外形小巧、功耗低、接口丰富、可拓展性高,广泛用于教育、医疗保健、机器人、自动化和物联网等行业。

通过将算力魔方与 OpenVINO 相结合,可以实现各种复杂 AI 应用,包括加速 AI 模型的推理计算,实时图像和视频处理以及设备之间的低延迟通信等。

在算力魔方上评估 OpenVINO 的 AI 加速效果, OpenVINO Notebooks 无疑是首选。

欢迎在算力魔方上下载并安装 OpenVINO Notebooks

https://github.com/openvinotoolkit/openvino_notebooks

(复制链接到浏览器打开)

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211087
  • AI
    AI
    +关注

    关注

    87

    文章

    30072

    浏览量

    268334
  • 模型
    +关注

    关注

    1

    文章

    3158

    浏览量

    48701
  • GitHub
    +关注

    关注

    3

    文章

    466

    浏览量

    16380
  • 算力
    +关注

    关注

    1

    文章

    925

    浏览量

    14732

原文标题:使用OpenVINO™在算力魔方上加速stable diffusion模型 | 开发者实战

文章出处:【微信号:英特尔物联网,微信公众号:英特尔物联网】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Stability AI开源图像生成模型Stable Diffusion

    Stable Diffusion 的很多用户已经公开发布了生成图像的样例,Stability AI 的首席开发者 Katherine Crowson 推特分享了许多图像。基于 AI
    的头像 发表于 09-21 15:37 2907次阅读

    AI爱克斯开发板OpenVINO加速YOLOv8目标检测模型

    AI 爱克斯开发板OpenVINO 加速 YOLOv8 分类模型》介绍了 AI 爱
    的头像 发表于 05-12 09:08 1257次阅读
    <b class='flag-5'>在</b>AI爱克斯开发板<b class='flag-5'>上</b>用<b class='flag-5'>OpenVINO</b>™<b class='flag-5'>加速</b>YOLOv8目标检测<b class='flag-5'>模型</b>

    使用OpenVINO魔方加速stable diffusion模型

    魔方一款可以DIY的迷你主机,采用了抽屉式设计,后续组装、升级、维护只需要拔插模块。通过选择计算模块的版本,再搭配不同额IO模块可以组成丰富的配置,适应不同场景。
    的头像 发表于 05-25 14:34 643次阅读
    使用<b class='flag-5'>OpenVINO</b>™<b class='flag-5'>在</b><b class='flag-5'>算</b><b class='flag-5'>力</b><b class='flag-5'>魔方</b><b class='flag-5'>上</b><b class='flag-5'>加速</b><b class='flag-5'>stable</b> <b class='flag-5'>diffusion</b><b class='flag-5'>模型</b>

    AI爱克斯开发板使用OpenVINO加速YOLOv8目标检测模型

    AI爱克斯开发板OpenVINO加速YOLOv8分类模型》介绍了AI爱克斯开发板
    的头像 发表于 05-26 11:03 1186次阅读
    AI爱克斯开发板<b class='flag-5'>上</b>使用<b class='flag-5'>OpenVINO</b><b class='flag-5'>加速</b>YOLOv8目标检测<b class='flag-5'>模型</b>

    优化 Stable Diffusion GKE 的启动体验

    Diffusion 等应运而生。Stable Diffusion 是一个文字生成图像的 Diffusion 模型,它能够根据给定任何文本输
    的头像 发表于 06-03 08:35 849次阅读

    AI爱克斯开发板OpenVINO加速YOLOv8-seg实例分割模型

    AI 爱克斯开发板OpenVINO 加速 YOLOv8 目标检测模型》介绍了 AI
    的头像 发表于 06-05 11:52 963次阅读
    <b class='flag-5'>在</b>AI爱克斯开发板<b class='flag-5'>上</b>用<b class='flag-5'>OpenVINO</b>™<b class='flag-5'>加速</b>YOLOv8-seg实例分割<b class='flag-5'>模型</b>

    基于一种移动端高性能 Stable Diffusion 模型

      Stable Diffusion (SD)是当前最热门的文本到图像(text to image)生成扩散模型。尽管其强大的图像生成能力令人震撼,一个明显的不足是需要的计算资源巨大,推理速度很慢
    的头像 发表于 06-12 10:14 754次阅读
    基于一种移动端高性能 <b class='flag-5'>Stable</b> <b class='flag-5'>Diffusion</b> <b class='flag-5'>模型</b>

    iPhone两秒出图,目前已知的最快移动端Stable Diffusion模型来了

    近日,Snap 研究院推出最新高性能 Stable Diffusion 模型,通过对网络结构、训练流程、损失函数全方位进行优化, iPhone 14 Pro
    的头像 发表于 06-12 15:25 744次阅读
    iPhone两秒出图,目前已知的最快移动端<b class='flag-5'>Stable</b> <b class='flag-5'>Diffusion</b><b class='flag-5'>模型</b>来了

    AI爱克斯开发板OpenVINO加速YOLOv8-seg实例分割模型

    AI 爱克斯开发板OpenVINO 加速 YOLOv8 目标检测模型》介绍了 AI
    的头像 发表于 06-30 10:43 867次阅读
    <b class='flag-5'>在</b>AI爱克斯开发板<b class='flag-5'>上</b>用<b class='flag-5'>OpenVINO</b>™<b class='flag-5'>加速</b>YOLOv8-seg实例分割<b class='flag-5'>模型</b>

    美格智能高AI模组成功运行Stable Diffusion模型

    研发团队成功自研高模组运行文生图大模型Stable
    的头像 发表于 07-21 11:17 807次阅读

    使用OpenVINOStable Diffusion V2.1实现AI硬件加速的方法

    随着 AIGC 模型越来越强大,并取得了更惊人的结果,任意运行 AIGC 模型, 比如 Stable Diffusion,对于开发人员来说仍然面临一些挑战。首先,GPU 的安装设置需要
    的头像 发表于 07-21 11:47 1941次阅读
    使用<b class='flag-5'>OpenVINO</b><b class='flag-5'>在</b><b class='flag-5'>Stable</b> <b class='flag-5'>Diffusion</b> V2.1<b class='flag-5'>上</b>实现AI硬件<b class='flag-5'>加速</b>的方法

    美格智能团队成功AI模组运行大模型Stable Diffusion

    研发团队成功自研高模组运行文生图大模型StableDiffusion,而这仅仅是我们将思索变为实际行动的第一步,AIGC的大时代,才
    的头像 发表于 07-21 13:50 683次阅读
    美格智能团队成功<b class='flag-5'>在</b>高<b class='flag-5'>算</b><b class='flag-5'>力</b>AI模组<b class='flag-5'>上</b>运行大<b class='flag-5'>模型</b><b class='flag-5'>Stable</b> <b class='flag-5'>Diffusion</b>

    树莓派能跑Stable Diffusion了?

    Stable Diffusion是一种文本到图像生成的大型深度学习模型,它可以根据文本的描述生成详细的图像,也可以用于其他任务,如图像修复、图像扩展、图像翻译等。
    的头像 发表于 07-26 11:46 1489次阅读

    OpenVINO赋能BLIP实现视觉语言AI边缘部署

    人类通过视觉和语言感知世界。人工智能的一个长期目标是构建智能体,通过视觉和语言输入来理解世界,并通过自然语言与人类交流。比如,《几行代码加速 Stable Diffusion
    的头像 发表于 09-01 10:26 2353次阅读

    使用OpenVINO 2024.4魔方上部署Llama-3.2-1B-Instruct模型

    前面我们分享了《三步完成Llama3魔方的本地量化和部署》。2024年9月25日,Meta又发布了Llama3.2:一个多语言大型语言模型
    的头像 发表于 10-12 09:39 452次阅读
    使用<b class='flag-5'>OpenVINO</b> 2024.4<b class='flag-5'>在</b><b class='flag-5'>算</b><b class='flag-5'>力</b><b class='flag-5'>魔方</b>上部署Llama-3.2-1B-Instruct<b class='flag-5'>模型</b>