我可以为您进行翻译。以下是您需要翻译的内容:
有没有一种方法使
我正在使用 pyproject
和 poetry
构建 Python 包。我的 pyproject.toml
如下所示:
[tool.poetry]
authors = ["test"]
description = ""
name = "test"
version = "0.1.0"
[tool.poetry.dependencies]
spacy = {extras = ["cuda113"], version = "^3.2.3"}
faiss-gpu = {version = "1.7.2", optional = true}
[tool.poetry.extras]
gpu = ["faiss-gpu"]
使用 poetry install -E gpu
安装faiss-gpu
可以成功。
然而,我希望只有在提供 poetry install -E gpu
命令时才安装spacy[cuda113]
(GPU 版本),而普通的 poetry install
应该只安装spacy
(CPU 版本)。
我尝试使用以下配置,但这使得所有的spacy
都成为可选项,并且不安装它。只有spacy[cuda113]
(GPU 版本)必须是可选的。
[tool.poetry]
authors = ["test"]
description = ""
name = "test"
version = "0.1.0"
[tool.poetry.dependencies]
spacy = {extras = ["cuda113"], version = "^3.2.3", optional = true}
faiss-gpu = {version = "1.7.2", optional = true}
[tool.poetry.extras]
gpu = ["faiss-gpu", "spacy"]
有没有一种方法使
spacy[cuda113]
成为可选项,但要求使用 spacy
作为必需依赖项?
poetry install -E gpu
,只会安装普通的spacy版本,无法满足要求。 - azizbropoetry install -E gpu
,它会拉取cupy-cuda113
(请在shell选项卡中检查pip freeze)。唯一的方法是通过spacy的gpu extra安装cupy-cuda113
。 - wim