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

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

3天内不再提示

OpenVINO™ 2023.2 发布:让生成式AI在实际场景中更易用

SDNLAB 来源:SDNLAB 2023-12-08 16:04 次阅读

在过去的一年里,人工智能正以越来越快的速度发展,这得益于生成式 AI 模型的引入和从中受益的场景的演变。我们承认这一点,并决定比平时更快地发布新版本的 OpenVINO ,以帮助您获得新功能!

与之前的版本一样,在提高性能、增加对新 AI 模型的支持以及构建基础设施和模型缓存等不同组件方面,我们做了大量工作。对于我们最新的 2023.2 版本,我们做出了一些重大改进,我们将在下面概述。

边缘文本生成模型的附加性能

在我们的上一个版本 2023.1 中,我们引入了一些更改,以在英特尔 CPUGPU 上运行大语言模型(LLM)。开发者们能够量化权重为 int8 格式,并将其作为初始步骤在 CPU 上运行。

在 2023.2 版本中,我们进一步优化此工作流程,并引入在 CPU 和集成显卡上运行权重量化为 int8 和 int4 精度的 LLM 的能力。权重量化直接影响内存带宽,并帮助模型更快、更高效地执行推理,因为模型消耗的内存更少了,所需的磁盘空间也更少,因此总体上需要的内存带宽也更少了!

此外,我们的模型转换和优化工具已经更新,可以帮助您处理模型准备流程。要压缩模型权重为 int8 和 int4 格式,您可以使用我们的神经网络压缩框架(NNCF)工具,该工具适用于 OpenVINO 格式或中间表示(IR)文件。此外,为了获得具有int4压缩权重的模型,您可以通过 GPTQ(生成预训练 transformers 量化)算法来优化转换模型。实现这一过程的一种方法是通过 Hugging Face AutoGPTQ 实现。

如果你将 Hugging Face 作为模型的来源,你可以使用我们的 optimum-Intel,它集成了 OpenVINO 的优势。此集成允许您自动压缩和转换模型,如我们在下面所示的这样:

要将模型压缩到 int8 精度:

#make use of optimum-intel
from optimum.intel import OVModelForCausalLM
#load pretrained model, convert to OpenVINO representation 
#and compress weights
model = OVModelForCausalLM.from_pretrained("meta-llama/Llama-2-7b", use_cache=True, export=True, load_in_8bit=True)
#store OpenVINO IR in a folder
model.save_pretrained("./Llama-2-7b")

左滑查看更多

请注意“load_in_8bit”选项,该选项指定应将原始模型压缩到 int8 精度。对于大于 1B 的模型,默认情况下会启用此选项。

要将模型压缩到 int4 精度:

#make use of optimum-intel
from optimum.intel import OVModelForCausalLM
#explicitly use NNCF for compression
from nncf import compress_weights, CompressWeightsMode
#load pretrained model, convert to OpenVINO representation
model = OVModelForCausalLM.from_pretrained("meta-llama/Llama-2-7b", use_cache=True, export=True, load_in_8bit=False)
#perform weights compression using NNCF
model.model = compress_weights(model.model, mode=CompressWeightsMode.INT4_SYM, group_size=128, ratio=0.8)
#store OpenVINO IR in a folder
model.save_pretrained("./Llama-2-7b")

左滑查看更多

请注意,这一次我们没有使用 HF API 功能,而是直接调用 NNCF 将权重压缩到 int4。根据模型的不同,您可以更改压缩参数以获得更准确的结果。在这种情况下,我们使用对称量化,组大小为 128 个元素,int4 与 int8 的权重之比为 0.8。您可以查看我们的权重压缩文档,以获得更多详细信息和压缩提示。

要转换使用 AutoGPTQ 优化为 int4 精度的模型,请执行以下操作:

#make use of optimum-intel
from optimum.intel import OVModelForCausalLM
#load pretrained model, convert to OpenVINO representation 
#with keeping weights in int4
model = OVModelForCausalLM.from_pretrained("TheBloke/Llama-2-7B-GPTQ", use_cache=True, export=True)
#store OpenVINO IR in a folder
model.save_pretrained("./Llama-2-7B-GPTQ")

新的生成式 AI

以及更多的 Notebooks 代码示例!

我们知道,亲身体验最新功能和最先进模型是最好的学习方式。因此,我们的 OpenVINO 团队非常专注于为 OpenVINO Notebooks 代码示例带来新的及备受关注的模型。我们希望展示并鼓励您立即在您的设备上进行本地实验,以获得您所需的性能。以下是我们最近更新或新发布的一些 Notebooks 代码示例,以帮助您更快地将想法付诸生产。

一些 Jupyter Notebooks 已经更新,以演示 PyTorch 模型在没有 ONNX 转换的情况下的转换和优化,包括以下内容:

PyTorch to OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/102-pytorch-to-openvino )

—— 转换格式为 torch.nn.Module 以及 torch.jit.ScriptModule 的 PyTorch 模型为 OpenVINO IR 格式

Post-Training Quantization of PyTorch models with NNCF

(https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/112-pytorch-post-training-quantization-nncf/112-pytorch-post-training-quantization-nncf.ipynb )

—— 将 int8 量化应用于 PyTorch 模型

Quantization of Image Classification Models

(https://github.com/openvinotoolkit/openvino_notebooks/blob/main/notebooks/113-image-classification-quantization/113-image-classification-quantization.ipynb )

—— 将 int8 量化应用于 MobileNet V2 PyTorch 模型

Visual Question Answering and Image Captioning using BLIP and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/233-blip-visual-language-processing )

—— 优化 BLIP PyTorch 模型

Text-to-Image Generation and Infinite Zoom with Stable Diffusion v2 and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/236-stable-diffusion-v2 )

—— 在 Stable Diffusion 2.0 流水线中优化模型

Object masks from prompts with SAM and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/237-segment-anything#object-masks-from-prompts-with-sam--and-openvino )

—— 优化基于 PyTorch 的 Segment Anything Model (SAM) 模型

Optimizing PyTorch models with Neural Network Compression Framework of OpenVINO by 8-bit quantization

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/302-pytorch-quantization-aware-training )

—— PyTorch 模型量化感知训练(QAT)

我们还加入了一些 notebooks 代码示例,展示如何转换和优化模型,包括来自 TensorFlow Hub, TorchVision, and Hugging Face Hub 的模型。

TorchaVision Zoo with OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/125-torchvision-zoo-to-openvino )

—— 下载和直接优化基于 PyTorch 的预训练模型

Hugging Face Model Hub with OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/124-hugging-face-hub )

—— 学习如何下载和优化 Hugging Face hub 的预训练模型

TensorFlow Hub models + OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/126-tensorflow-hub )

—— 学习如何下载和优化 TensorFlow Hub 的预训练模型

Convert Detectron2 Models to OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/123-detectron2-to-openvino )

—— 优化来自 Facebook Research 流行的目标检测和分割模型

Convert TensorFlow Object Detection and Instance Segmentation Models to OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/120-tensorflow-object-detection-to-openvino)

—— 优化来自于 TensorFlow Hub 的使用 Resnet-50 V1 的 Faster R-CNN

Visual-language assistant with LLaVA and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/257-llava-multimodal-chatbot )

—— 使用 LLaVA (Large Language and Vision Assistant) 的端到端多模态演示

Subject-driven image generation and editing using BLIP Diffusion and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/258-blip-diffusion-subject-generation )

—— 优化用于零样本主题驱动的图像生成的 BLIP 扩散模型

SoftVC VITS Singing Voice Conversion and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/262-softvc-voice-conversion#softvc-vits-singing-voice-conversion-and-openvino )

—— 优化以音频作为输入的声音转换模型 SoftVC 及 VITS

Object segmentations with FastSAM and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/261-fast-segment-anything )

—— 优化用于目标分割的 Fast Segment Anything Model (FastSAM) 模型

Image Generation with DeciDiffusion

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/259-decidiffusion-image-generation )

—— 优化用于文生图的 DeciDiffusion 1.0 模型

Document Visual Question Answering Using Pix2Struct and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/260-pix2struct-docvqa )

—— 利用 OCR 和语言模型进行多模态问答的演示

924a7614-959a-11ee-8b88-92fbcf53809c.png

图1:文档视觉问答

最后,我们还提供了几个具有开箱即用、优化性能的流行的生成式 AI 的 notebooks 代码示例:

Create an LLM-powered Chatbot using OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/254-llm-chatbot#create-llm-powered-chatbot-using-openvino )

—— 在 CPU 和 GPU 上运行具有 int8 权重压缩的 Llama2 等聊天机器人,令人印象深刻的是,它将在只有 24GB RAM 的笔记本电脑上运行。

Image generation with Latent Consistency Model and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/263-latent-consistency-models-image-generation )

—— 用低得多的计算机资源实现卓越的图像生成

Generate creative QR codes with ControlNet QR Code Monster and OpenVINO

(https://github.com/openvinotoolkit/openvino_notebooks/tree/main/notebooks/264-qrcode-monster )

—— 使用 ControlNet 和 Stable Diffusion 创建您自己的图形二维码。

926205ae-959a-11ee-8b88-92fbcf53809c.png

图2:使用OpenVINO 优化基于大语言模型的聊天机器人

92da8222-959a-11ee-8b88-92fbcf53809c.png

图3: ControlNet二维码 Monster 以及 OpenVINO

新的分发渠道

在这个版本中,我们继续改进您访问和使用 OpenVINO 进行 AI 应用程序开发的方式,我们已经开发了一个Conan(https://conan.io)软件包管理器。Conan允许您为大型项目执行包管理,我们很高兴看到已经有开发者对此做出的积极回应。

有关如何使用 OpenVINO Conan 软件包的更多详细信息,请参阅此处:

https://docs.openvino.ai/2023.1/openvino_docs_install_guides_installing_openvino_conan.html

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

OpenVINO 是在开源中开发的,一旦在我们的初步测试中验证了这些功能,我们的最新功能就可以在我们的主分支上获得。因此,如果您想尝试新功能,您可以随时从源代码构建我们的包。对于 pip 用户,我们通过引入 openvino-nightly 包来简化这一点。你可以使用这个每日构建的包来尝试最新的功能,并在我们的下一个官方版本中预览一下!

开源贡献对我们来说很重要!

OpenVINO 已经是一个超过 5 年的开源项目了。最近,我们准备了一系列贡献任务,通过向 OpenVINO 贡献,可以更好地帮助社区围绕人工智能生态系统和开源项目构建知识。这包括支持新的编译选项和添加更多需要注意的操作等任务。

查看我们在 GitHub 上的链接,看看有没有你感兴趣的任务!

如上所述,我们非常感谢迄今为止我们看到的所有被合并进来的开源贡献。我们还要公开感谢我们最近的一些贡献者!他们是Siddhant Chauhan、rsa-10、Santhosh Mamidisetti 和 Mahimai Raja J.。由于您的帮助,产品变得更好!

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

    关注

    1776

    文章

    43879

    浏览量

    230631
  • 生态系统
    +关注

    关注

    0

    文章

    681

    浏览量

    20529
  • 开源项目
    +关注

    关注

    0

    文章

    36

    浏览量

    7099
  • 生成式AI
    +关注

    关注

    0

    文章

    354

    浏览量

    224

原文标题:OpenVINO™ 2023.2 发布:让生成式 AI 在实际场景中更易用

文章出处:【微信号:SDNLAB,微信公众号:SDNLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Vitis2023.2使用之—— updata to Vitis Unified IDE

    上一章聊了一下vitis2023.2怎样使用classic Vitis IDE,这章我们来说一说基于classic Vitis IDE的工程怎么样更新到新版本的Vitis Unified IDE
    发表于 03-24 17:14

    Vitis2023.2使用之—— classic Vitis IDE

    Vitis 已经更新到2023.2了,新版本相较于旧版本更新了嵌入平台,新版平台增加了Versal™ AI 引擎 DSP 设计的增强功能,全新的独立 Vitis 嵌入软件,最新 V
    发表于 03-24 16:15

    NanoEdge AI的技术原理、应用场景及优势

    硬件设计则是为了确保设备执行这些任务时能够保持低能耗,从而提高其续航能力。 2、应用场景 NanoEdge AI 可以广泛应用于各种物联网设备和传感器,如智能家居、工业自动化、智能交通、医疗健康
    发表于 03-12 08:09

    HarmonyOS SDK 助力新浪新闻打造精致易用的新闻应用

    致、更易用 HarmonyOS SDK 将高频场景整合为场景化能力,通过提供标准化服务以支撑鸿蒙原生应用高效开发。“HarmonyOS SDK 不同层次的 AI 能力开放,满足了我们
    发表于 02-07 15:51

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

    OpenVINO Notebooks是Jupyter Notebook形式的OpenVINO范例程序大集合,方便开发者快速学习并掌握OpenVINO推理程序,并通过Copy&Paste方式将范例中的关键程序应用到自己的
    的头像 发表于 12-12 14:40 647次阅读
    如何快速下载<b class='flag-5'>OpenVINO</b> Notebooks中的<b class='flag-5'>AI</b>大模型

    OpenVINO场景文字检测与文字识别教程

    OpenVINO是英特尔推出的深度学习模型部署框架,当前最新版本是OpenVINO2023版本。OpenVINO2023自带各种常见视觉任务支持的预训练模型库Model Zoo,其中支持场景
    的头像 发表于 09-24 15:31 735次阅读
    <b class='flag-5'>OpenVINO</b><b class='flag-5'>场景</b>文字检测与文字识别教程

    阿里平头哥发布首个 RISC-V AI 软硬全栈平台

    转自https://m.ithome.com/html/714391.htm 2023 RISC-V 中国峰会8月23日北京召开,平头哥会上发布了首个自研 RISC-V AI 平台
    发表于 08-26 14:14

    无法OpenVINO trade Docker运行OpenCV怎么解决?

    运行命令:docker run -ditu root:root --name=openvino -h \"openvino\" --privileged \\ --device
    发表于 08-15 08:29

    Raspberry Pi上从源代码构建OpenVINO 2021.3收到错误怎么解决?

    Raspberry Pi 上从源代码构建 OpenVINO™2021.3。 运行OpenVINO™推理,并收到错误消息: ModuleNotFoundError:没有
    发表于 08-15 08:24

    如何为PyInstaller命令行添加OpenVINO依赖性,从OpenVINO python脚本生成功能 .exe文件?

    执行此命令行以从 OpenVINO python 脚本创建 build.exe 文件: pyinstaller --onefile --add-data \"D
    发表于 08-15 07:16

    《开放加速规范AI服务器设计指南》发布,应对生成AI算力挑战

    》面向生成AI应用场景,进一步发展和完善了开放加速规范AI服务器的设计理论和设计方法,将助力社区成员高效开发符合开放加速规范的AI加速卡,
    的头像 发表于 08-14 09:49 515次阅读

    NVIDIA Omniverse让AI训练变得更加简单易用

    Rendered.ai 将 NVIDIA Omniverse Replicator 集成到其合成数据生成平台,使 AI 训练变得更加简单易用
    的头像 发表于 07-24 09:14 835次阅读
    NVIDIA Omniverse让<b class='flag-5'>AI</b>训练变得更加简单<b class='flag-5'>易用</b>

    钉钉AI具备文生文、文生图、应用生成AI能力

    钉钉AI具备文生文、文生图、应用生成AI能力 此前在4月18日的钉钉2023春钉峰会上宣布全面接入通义千问大模型,并实际演示了AI部分能力
    的头像 发表于 05-31 18:50 1340次阅读

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

    《在AI爱克斯开发板上用OpenVINO加速YOLOv8分类模型》介绍了在AI爱克斯开发板上使用OpenVINO 开发套件部署并测评YOLOv8的分类模型,本文将介绍在
    的头像 发表于 05-26 11:03 721次阅读
    <b class='flag-5'>AI</b>爱克斯开发板上使用<b class='flag-5'>OpenVINO</b>加速YOLOv8目标检测模型

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

    《在 AI 爱克斯开发板上用 OpenVINO 加速 YOLOv8 分类模型》介绍了在 AI 爱克斯开发板上使用 OpenVINO 开发套件部署并测评 YOLOv8 的分类模型,本文将
    的头像 发表于 05-12 09:08 851次阅读
    在<b class='flag-5'>AI</b>爱克斯开发板上用<b class='flag-5'>OpenVINO</b>™加速YOLOv8目标检测模型