首页 > 解决方案 > 在 Elixir 中加载 Python 模块

问题描述

我刚开始使用 Elixir,我想从 Elixir 运行 Python 程序。我使用mix创建了一个 Elixir 项目。我已经在 priv/python3 文件夹中添加了所需的 python 文件,并且能够运行所需的 Python 程序。但问题是我的 Python 应用程序首先需要加载多个库、ML 模型和 Pandas Dataframe。这需要 10-20 秒。所以每次我从 Elixir 调用 Python 函数时,所有这些库、模型和数据帧都会被加载,并且运行一个简单的函数需要更多的时间。有没有办法在 Elixir 中首先加载所有模型和数据帧,并在调用 Python 函数时使用它们,而不是每次都加载它们?

让我知道是否有人需要更多详细信息。谢谢你。

标签: python-3.xelixir

解决方案


您应该能够使用 Erlport(它明确支持 Python 和 Ruby)来做您需要的事情。

http://erlport.org/docs/python.html

Elixir 包装器也不是必需但可能有用:https ://github.com/fazibear/export

我可能只会从 Elixir 调用 Erlang 版本。

Erlport 应该允许您将 python 代码作为端口启动一次,然后根据需要运行函数。我认为这可以解决您的问题。(我注意到它很旧,但我没有全部输入)。


推荐阅读