Lightning-Universe / lightning-flash

Your PyTorch AI Factory - Flash enables you to easily configure and run complex AI recipes for over 15 tasks across 7 data domains
https://lightning-flash.readthedocs.io
Apache License 2.0
1.74k stars 213 forks source link

Incorrect version of `segmentation-models-pytorch` dependency #1408

Closed ligaz closed 2 years ago

ligaz commented 2 years ago

🐛 Bug

I'm using poetry for dependency management which results in incompatible behavior when lightning-flash[image] is installed.

The image extra depends on segmentation-models-pytorch without a version specifier. However it is using classes that are not available in all versions of the module. For example UnetPlusPlus, MAnet were introduced in version 0.1.3 and 0.2.0 respectively. This yields that the version specifier in lightning-flash[image] should be segmentation-models-pytorch>=0.2.0.

Why poetry is surfacing this issue?

Good questions indeed. When poetry resolve segmentation-models-pytorch it chooses version 0.1.0, because this version does not depend on timm. Newer versions of segmentation-models-pytorch depend on a specific version of timm (0.4.12) which is not compatible with the one used in lightning-flash[image].

krshrimali commented 2 years ago

Hi, @ligaz - I apologize for the delay in my response.

Thank you for the context around what's happening, and for helping with details. Would you like to create a PR to fix the version specifier, to change it to >=0.2.0? It should be fairly straightforward w.r.t the change but will take some effort to monitor the CI in case anything unusual happens, and I can do that for you! Just thought you would like to contribute as you already shared a possible solution :) Please let me know if you are interested, or else I can help attempt the change! ⚡