New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Poetry unable to find installation candidates for Nvidia c11 dependencies #6939
Comments
no distribution is available for your platform. There is nothing poetry can do about this. This is not a bug. https://pypi.org/project/nvidia-cublas-cu11/11.10.3.66/#files |
Ok cool -- what's confusing is that |
If you're changing tools, I wouldn't change until everything is known to work. Does pipenv install exactly the same version? Often poetry tries to install the latest version, not the older one that works. |
does Pipenv install the cuda dependencies? or does Pipenv just install torch (without the different cuda dependencies)? pip installs torch without those dependencies (as it should), I'm not sure why poetry is trying to add them. They aren't needed for torch on a Mac. Any ideas? |
It sounds like torch may have different metadata in individual wheels. This is not supported by Poetry and can lead to surprising behavior, even though it is (obviously) possible. Instead, environment markers should be used to control whether dependencies are required or not on a platform-specific basis. I don't have time to investigate this myself right now, but if anyone could confirm in this issue whether or not metadata is consistent across wheel tags, it would be appreciated. |
Between these two packages:
The diff of the
So it looks like the metadata does change between versions... |
Ah! From
This is... unfortunate. Looks like this is a new problem with 1.13.0 (1.12.1 installs without the Nvidia dependencies). |
Looks like a torch bug then -- this is the use case markers are intended for. Poetry does not support packages that rely on different metadata per wheel instead of using markers. |
Seems to have been reported in pytorch: Edit [Nov 18 2022]: Edit [Dec 17 2022]: |
I believe the torch 1.13.1 version with the fixes in it has indeed landed in PyPI: https://pypi.org/project/torch/ |
Is no one else still having problems with this? I get same error with 1.13.1. |
Same here |
Same. |
For the new influx of people with the Mac M1 chip bumping into this thread, the current workaround is adding the correct wheel directly to your
If you're developing locally but using docker for publishing, you can add markers as seen here. |
@remy-radix Thanks. The solution with the markers is nice, but I'm running into some odd issue with it where I have to do poetry install twice on the mac. Here is a simple
When I run
It's like it doesn't recognize the torch version. If I then subsequently run However, if I do the same thing inside a docker container (without the lock file), it works fine the first time. And (thankfully) a poetry install inside the docker container using a lock file from the mac does work. |
Make sure you’re not using Python 3.11 (or 3.12, for that matter). I just downgraded to 3.10, and I was able to successfully install PyTorch! |
torch 2.0.1 also shows the same problem :( |
For python 3.9 I had to add
to my |
I solved it by using 2.0.0 |
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
-vvv
option) and have included the output below.Issue
Hi there,
Having trouble using poetry with certain NLP libraries that have Nvidia c11 related dependencies. In this case I'm using EasyNMT for machine text translation, which has a dependency on
torch
.The
torch
related issue #4231 was recently closed, so I wanted to open a new separate issue here.I'm unable to install the 4 Nvidia c11 dependencies:
Would appreciate any advice on whether this issue is due to my setup, or an issue with poetry. Please let me know if you're able to reproduce this issue, so I can review my environment accordingly. I have been able to lock and install these dependencies with
pipenv
, and then run the relevant EasyNMT code.Thanks for the help!
Alex
pyproject.toml
Checking works correctly:
Locking works correctly:
Install does not work correctly:
The text was updated successfully, but these errors were encountered: