litian96 / p13n_benchmark_cross_silo

MIT License
3 stars 0 forks source link

Dependency deadlock in vehicle_school #1

Open prarabdhshukla opened 1 year ago

prarabdhshukla commented 1 year ago

I wanted to reproduce your results for the vehicle benchmark, however, while trying to install your requirements.txt file, I have run into a dependency issue.

At the first installation, (pip install -r requirements.txt) I get: dependency_cycle

To solve these issues, I run a force reinstall for the packages with the mentioned versions in the Error. pip install --force-reinstall -v "numpy==1.21" pip install --force-reinstall -v "jax==0.4.6" pip install --force-reinstall -v "typing-extensions==4.2.0"

Now, when I try to install jaxlib 0.4.7, I get the following error:

second_issue

Clearly, optax 0.1.0 which is a dependency for jaxlib 0.4.7 requires typing-extensions 3.10.0 but chex 0.1.7 which a dependency for another package, requires typing-extensions>=4.2.0

Can you help me with this issue? I would suggest that you update the repo with a pip freeze output in the requirements.txt file so that the dependencies are taken care of automatically. That way, the user can simply do a pip install --no-dependencies -r requirements.txt to install everything flawlessly.

kenziyuliu commented 1 year ago

Hi @prarabdhshukla

Thanks for your interest! I think the dependency requirements for JAX related packages are flexible and any version you can get working should generally be fine. The requirements.txt file was written a while ago and some of these packages are updated frequently.

You could probably just forget the specified versions in requirements.txt and install the newest versions of these packages, and I can help you with any runtime errors that occur. Alternatively you could also try the set of JAX related dependencies here which I wrote more recently.

I'll try to update the requirements.txt here hopefully soon. Feel free to follow up here if you have any additional questions.

prarabdhshukla commented 1 year ago

Hey @kenziyuliu ! Thanks for your response. Sure, I will try out these things and let you know if I face any problems.

Thanks again!