拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 Heroku在尝试部署时没有看到OpenVino

Heroku在尝试部署时没有看到OpenVino

白鹭 - 2022-02-10 1982 0 0
赏金过期5天此问题的答案有资格获得 50声望赏金。 NominalSystems希望引起对这个问题的更多关注

我有一个试图通过 Heroku 部署的 OpenVino 模型。该应用程序在机器上运行(因为 OpenVino 安装在机器上的 /opt/intel 目录中)。即使在使用 pip 成功安装 OpenVino 之后,我也会进行汇入,但仍然会收到错误讯息:

ImportError: dlopen(/opt/intel/openvino_2021/python/python3.9/openvino/inference_engine/ie_api.so, 2): Symbol not found: _PyCMethod_New
  Referenced from: /opt/intel/openvino_2021/python/python3.9/openvino/inference_engine/ie_api.so
  Expected in: flat namespace

尝试在脚本中汇入 OpenVino 时。出于这个原因,我放弃了使用 pip,而是在机器上从源代码构建 OpenVino。该脚本可以在机器上使用 OpenVino 正常运行,但问题是如何在不将 OpenVino 包含在使用 pip freeze 生成的 requirements.txt 档案中的情况下将其部署到 Heroku。

在 Heroku 的 requirements.txt 中指定 OpenVino 不起作用(如上所述,使用 pip 安装并不简单),因此我尝试将预期的 OpenVino 档案夹移动到 venv 档案夹中。在项目档案夹中,我将 OpenVino 档案夹复制到 venv > lib > python3.9 > sitepackages。但是,一旦部署到 Heroku 似乎没有任何效果,我仍然在 Heroku 日志中收到以下错误:

2022-01-06T19:39:59.115102 00:00 app[web.2]: File "./main.py", line 26, in <module>
2022-01-06T19:39:59.115206 00:00 app[web.2]: from openvino.inference_engine import IECore, IENetwork
2022-01-06T19:39:59.115219 00:00 app[web.2]: File "/app/.heroku/python/lib/python3.9/site-packages/openvino/inference_engine/__init__.py", line 30, in <module>
2022-01-06T19:39:59.115309 00:00 app[web.2]: from .ie_api import *
2022-01-06T19:39:59.115333 00:00 app[web.2]: ImportError: libpython3.9.so.1.0: cannot open shared object file: No such file or directory

所以预期的档案夹不存在。当然,对于 Heroku 来说,它也是一个不同的目录结构:

/app/.heroku/python/lib/python3.9/site-packages/

代替:

/venv/lib/python3.9/site-packages

但是,我需要在 Heroku 应用程序的站点包目录中获取 openvino。

如何手动将预期的 openvino 档案夹添加到 /app/.heroku/python/lib/python3.9/site-packages?如果这不可能,我如何编辑 buildpack 为 Heroku 应用程序安装 openvino?

任何帮助将非常感激。

谢谢!

uj5u.com热心网友回复:

您遇到的错误:ImportError: libpython3.9.so.1.0: cannot open shared object file: No such file or directory是由于缺少对 Heroku 的外部依赖。

请按照以下步骤解决此问题:

将 a 添加runtime.txt到应用程序的根目录以指定 Python 运行时。请参阅选择运行时

python-3.8.12

Aptfile在应用程序的根目录中添加一个,以在编译和运行时添加对基于 apt 的依赖项的支持。请参阅heroku-buildpack-apt

libpython3.8
标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *