python-3.x - 在 Elixir 中加载 Python 模块
问题描述
我刚开始使用 Elixir,我想从 Elixir 运行 Python 程序。我使用mix创建了一个 Elixir 项目。我已经在 priv/python3 文件夹中添加了所需的 python 文件,并且能够运行所需的 Python 程序。但问题是我的 Python 应用程序首先需要加载多个库、ML 模型和 Pandas Dataframe。这需要 10-20 秒。所以每次我从 Elixir 调用 Python 函数时,所有这些库、模型和数据帧都会被加载,并且运行一个简单的函数需要更多的时间。有没有办法在 Elixir 中首先加载所有模型和数据帧,并在调用 Python 函数时使用它们,而不是每次都加载它们?
让我知道是否有人需要更多详细信息。谢谢你。
解决方案
您应该能够使用 Erlport(它明确支持 Python 和 Ruby)来做您需要的事情。
http://erlport.org/docs/python.html
Elixir 包装器也不是必需但可能有用:https ://github.com/fazibear/export
我可能只会从 Elixir 调用 Erlang 版本。
Erlport 应该允许您将 python 代码作为端口启动一次,然后根据需要运行函数。我认为这可以解决您的问题。(我注意到它很旧,但我没有全部输入)。
推荐阅读
- scheme - 当 mit-scheme 评估一个列表时,输出值是什么意思?
- php - WordPress BlogInfo() 不工作!到底是怎么回事?
- google-maps - 无法获得有关 Google Places API 的额外详细信息,例如“opening_hours”
- nginx - 让 nginx 在返回页面前等待 x 秒
- swiftui - 如何在循环中更新状态时显示所有中间视图,swiftUI
- .net - .Net Framework 4.7 调用 .net standard 2.0 dll 但出现以下错误
- python - 为什么我不能从 Python 调用 SSH 终端命令?
- .net - 我可以从保存的 XML 文件构建 OData 模型吗?
- javascript - 所有猫鼬模型方法都基于承诺吗?
- python - MongoDB在python中更新对象数组