如何使用诗歌进行递归安装?

How to use poetry for recursive installation?

我正在尝试使用诗歌包管理器安装 this 存储库。 这是使用 pip 完成的方法:

git clone --recursive https://github.com/parlance/ctcdecode.git
cd ctcdecode && pip install .

但如果我尝试 运行

poetry add ctcdecode

它失败了,回溯很大(我认为超过 200 行)。 所以我用

安装了它
poetry run git clone --recursive https://github.com/parlance/ctcdecode.git
poetry run pip install ./ctcdecode

但是这种方式不适合分享给其他开发者。 我可以用 pyproject.toml 来做吗?

poetry add <packagename> 为您的项目添加并安装 pypi 上可用的依赖项(或者如果配置了其他包存储库)。

如果要添加包,源代码位于 git 存储库中,请使用 poetry add git+<url_of_git>.

ctcdecode 两种方式的问题是,它需要构建。为此需要 torch。根据 PEP 518.

ctcdecode 未在 pyproject.toml 中声明此构建依赖项

您可以通过克隆 git 存储库并将包含以下内容的 pyproject.toml 放入项目文件夹来解决这个问题:

[build-system]
requires = ["setuptools", "torch"]
build-backend = "setuptools.build_meta"

然后回到你当前的项目,像这样添加本地路径依赖:

$ poetry add <relative_path_to_ctcdecode>