使用 OpenVINO 进行部署

完成 OpenVINO 应用开发后,应用开发人员通常需要为最终用户部署应用。有几种方法可以实现这一点:

  • 设置对现有预构建包的依赖项(称为集中分发):

    • 使用 Debian/RPM 包。这是一系列 Linux 操作系统的推荐方式

    • 在 PyPi 上使用 pip 包管理器。这是基于 Python 的应用的默认方法

    • 使用 Docker 映像。如果需要将应用部署为 Docker 映像,开发人员可以使用预构建运行时 OpenVINO Docker 映像作为 Dockerfile 中应用容器映像的基础映像。您可以在面向 LinuxWindows 的安装指南中找到有关可用 OpenVINO Docker 映像的更多信息。此外,如果您需要自定义 OpenVINO Docker 映像,您可以使用 Docker CI 框架生成 Dockerfile 并对其进行构建。

  • 获取 OpenVINO 以及应用的必要功能(称为本地分发):

下表显示了根据不同目标操作系统可以使用的分发类型:

分发类型

操作系统

Debian 包

Ubuntu 18.04 长期支持 (LTS),64 位;Ubuntu 20.04 长期支持 (LTS),64 位

RMP 包

Red Hat Enterprise Linux 8,64 位

Docker 映像

Ubuntu 18.04 长期支持 (LTS),64 位;Ubuntu 20.04 长期支持 (LTS),64 位;Red Hat Enterprise Linux 8,64 位;Windows Server Core base LTSC 2019,64 位;Windows 10,20H2 版,64 位

PyPi(pip 包管理器)

请参阅 https://pypi.org/project/openvino/

OpenVINO 部署管理器

所有操作系统

本地分发

所有操作系统

以静态方式构建 OpenVINO 并链接到最终应用

所有操作系统

根据分发类型的不同,OpenVINO 包的粒度可能会有所不同:PyPi 分发 OpenVINO 有一个“openvino”包,其中包含所有运行时库和插件,而像本地分发这样可配置性更强的方法提供了更高的粒度,因此必需了解属于 OpenVINO™ 运行时包的一组库的一些详细信息:

_images/deployment_simplified.png
  • 主库 openvino 用于 C++ 用户的应用并与其链接在一起。该库为 OpenVINO API 2.0 和推理引擎 nGraph API 提供了所有 OpenVINO™ 运行时公共 API。对于 C 语言应用,分发时还需要 openvino_c

  • 可选插件库(如 openvino_intel_cpu_plugin(匹配 openvino_.+_plugin 模式))用于为特定设备提供推理功能或附加功能(如异构执行多设备执行)。

  • 可选插件库(如 openvino_ir_frontnend(匹配 openvino_.+_frontend)用于提供读取不同文件格式(如 OpenVINO IR、ONNX 或 Paddle)的模型的功能。

可选表示如果应用不使用插件支持的功能,最终分发中将无需插件的库或包。

以上信息涵盖了大多数分发类型粒度方面的信息,要了解更详细的信息,请参阅本地分发

备注

根据目标 OpenVINO 设备的不同,您还必须使用针对 GPU 的配置针对 GNA 的配置针对 NCS2 的配置针对 VPU 的配置来正确配置已部署的设备。