Poetry and PyTorch

I’ve recently found poetry to help out with all of the different dependencies for our group. In one project we also use PyTorch and I was wondering if anyone could help me out and point me to the direction on how to add this to poetry. We are working on machines that have no access to a CUDA GPU (for simple on the road inferencing/testing) and workstations where we do have access to CUDA CPU’s. Now I would love to use poetry to ensure every dev is using the same versions with the help of poetry but is this even possible?

There seems to be no obvious way to decide which PyTorch version to install. I thought about adding the different installation instructions as extra dependencies, but I fail to find an option to get the equivalent settings like:

pip3 install torch==1.3.1+cpu torchvision==0.4.2+cpu -f https://download.pytorch.org/whl/torch_stable.html

I would be fine with setting the total path to the different online wheels, like: https://download.pytorch.org/whl/torch_stable.html/cpu/torch-1.3.1%2Bcpu-cp36-cp36m-win_amd64.whl

But I would rather not but them in git directly… The closest option I’ve seen in poetry is either downloading them manually and then using file = X command.

I would appreciate any help. 🙂

Answer

Currently, Poetry doesn’t have a -f option (there’s an open issue and an open PR), so you can’t use the pip instructions. You can install the .whl files directly:

poetry add https://download.pytorch.org/whl/torch_stable.html/cpu/torch-1.3.1%2Bcpu-cp36-cp36m-win_amd64.whl

or add the dependency directly to your .toml file:

[tool.poetry.dependencies]
torch = { url = "https://download.pytorch.org/whl/torch_stable.html/cpu/torch-1.3.1%2Bcpu-cp36-cp36m-win_amd64.whl" }

Leave a Reply

Your email address will not be published. Required fields are marked *