-
Notifications
You must be signed in to change notification settings - Fork 89
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
bug: Dependency conflict for most recent version #276
Comments
Thanks for this, @zombie-einstein can you please unpin chex in esquilax, that should fix it I think |
I just tested this and it seems to work fine for me @thomfoster. Can you try running the following:
Let me know if that works 😄 |
It's a bit tricky to run that exactly as I'm on a cluster where I cant
install things directly.
I have added a dockerfile inside `/jumanji` and added all the usual preamble
to run on our cluster.
At the bottom of the dockerfile, if I just add `pip install "jax[cuda12]"`
then everything non jumanji related is fine, as normal.
Adding in the `pip install -e ".[dev,train"` gives the same error as
reported in my ticket (where I had the dockerfile outside `/jumanji` in my
wider project)
```
jaxlib.xla_extension.XlaRuntimeError: INTERNAL: ptxas exited with
non-zero error code 65280, output: ptxas
/tmp/tempfile-52e69ff4284c-29c8e1127a9c1df8-29-62f96227086a7, line 5; fatal
: Unsupported .version 8.3; current version is '8.1'
ptxas fatal : Ptx assembly aborted due to errors
```
**EDIT: Sorry I ran docker build with a cache, I actually get** `4.016 ERROR: Project file:///home/duser/project has a 'pyproject.toml' and its build backend is missing the 'build_editable' hook. Since it does not have a 'setup.py' nor a 'setup.cfg', it cannot be installed in editable mode. Consider using a build backend that supports PEP 660.` when I try install jumanji in editable mode.
|
Hey, just saw this, still need me to make a change? |
Yes please |
Looking at this closer, what is the source off the issue here? There's several releases that satisfy the bounds, unless I'm missing something? |
@sash-a I created a fork with my current install setup at
@zombie-einstein if I run the fork above but run the jumanji install at the same time as the jax[cuda12] install ie |
Is there more to the version conflict message though?
Does not seem like a conflict right, versions Happy to make the change, just wondering what the best change is, given distrax requires |
It's weird pip looks at the versions
|
Yeah strange, I just tested the same install command on my machine and worked ok so not sure what is going on here. Is it easy to switch esquilax to install from a local build and update the dependency? Just to check the solution before running the release process. If that's a massive pain I can make a release, though still not clear what the solution is, removing the upper bound maybe, and the lower bound to match distrax?? Can't see what this would actually be doing though. |
Ye I don't think it's a version conflict, sorry @zombie-einstein. It seemed like it from the original error message where esquilax was the only thing with an upper bound on chex. @thomfoster can you please try use uv as I've found this worked perfectly for me, you can install uv in your dockerfile or via pip itself. Then remember to install the cuda version of jax as the last dependency you install 😄 |
@sash-a Thanks for the continued support. I ran the install with
My fork here has instructions to reproduce: |
No worries, give me a shout if it does turn out to be anything my end. Could it be some cuda 12.1 issue along these lines jax-ml/jax#25718 ? May be a clue. |
@sash-a I realised I had cloned the current main branch of jumanji, not 1.1.0. Sadly I wanted to use search and rescue! Looking at the changes from 1.1.0 -> main perhaps it is the commit "fix: Require jax below 0.4.36" causing the issue? |
@thomfoster that was just a temp change due to a short-lived bug in the |
Wanted to run this to check I'm not responsible for breaking something 😂. This truncated Docker file from yours seems to build ok from the current main with the new environment, can see the install in the uv virtual env:
|
Apologies! I see now this is a runtime error, seeing the same |
@thomfoster I think this an issue with a conflict older version of CUDA (12.1 in this case) and a newer version of Jax. The image above was selecting Another option could possibly be upgrading the CUDA version? But the max for this particular image is 12.2, and this still has the same issue. I think since Esquilax is trying to match to a minor version @sash-a I'll relax some of the bounds in Esquilax, probably better for it's use as a library. |
@tomdbar so cool that you want to use search and rescue! Given the ptax error I'd guess it is a cuda and jax version mismatch. Thanks for looking into this @zombie-einstein! If you can unpin your jax and chex version I think that would be great, maybe just keep a min version for both of them? I've found that a lot of the newer jax versions introduce serious fixes so I think Jumanji's strategy will just be to have a minimum version going forward |
Description
I cloned the latest version of the repo, and am trying to install in editable mode in order to run and edit the training scripts.
I am running the install via a requirements file that includes "jax[cuda12]" and "-e ./jumanji[dev,train]"
This results in a chex dependency conflict:
Specifying the chex==0.1.89 in requirements.txt leads to:
I tried this for python3.10 and python3.11
CUDA information is
What Jumanji version are you using?
jumanji 1.1.0
Which accelerator(s) are you using?
GPU
Additional System Info
No response
Additional Context
No response
(Optional) Suggestion
No response
The text was updated successfully, but these errors were encountered: