facebookresearch / r3m

Pre-training Reusable Representations for Robotic Manipulation Using Diverse Human Video Data
https://sites.google.com/view/robot-r3m/
MIT License
292 stars 45 forks source link

Pinned old versions of PyTorch in setup.py #4

Closed notmahi closed 2 years ago

notmahi commented 2 years ago

Hi, As I was trying to set up this repo, I realized that some dependencies are pinned to a version that is significantly older than the current versions, for example torch==1.7.1 and torchvision==0.8.2. However, pinning such an old version makes this library incompatible with newer CUDA versions such as 11.3, which makes it hard to use this model on the latest consumer GPUs, like [1].

Is there a specific reason why the dependency is pinned this way? Would you consider relaxing this requirement if we were to test and ensure that the code works without a problem with the later versions of PyTorch?
Thank you for your time!
Mahi

[1]: I am using an nvidia 3080, for example.

suraj-nair-1 commented 2 years ago

Hello, By default we set the dependency this was to reproduce our exact evaluation setup. However it should be fine to use a newer version of pytorch and CUDA. If you do find that it works without a problem we can relax the requirement.

Best, Suraj

notmahi commented 2 years ago

Thank you for the quick response!

I ran some tests with torch==1.10.2, torchvision==0.11.3, and it can load the model and calculate representations without a problem, although it gets a warning about torch/nn/_reduction.py:42: UserWarning: size_average and reduce args will be deprecated, please use reduction='none' instead.

Since this works now, I am closing this issue. But, if you could make the versioning a little more flexible, I believe this would simplify the workflow for a lot of researchers. Otherwise, the way forward for a lot of researchers would be to do what I did, either create a fork or a clone to use it themselves, which creates a lot of unnecessary friction.