[D] Why are so many ML packages still released using “requirements.txt” or “pip inside conda” as the only installation instruction?

These are often on the “what you are not supposed to do” list, so why are they so commonplace in ML? Bare pip / requirements.txt is quite bad at managing conflicts / build environments and is very difficult to integrate into an existing project. On the other hand, if you are already using conda, why not actually use conda? pip inside a conda environment is just making both package managers’ jobs harder.

There seem to be so many better alternatives. Conda env yml files exist, and you can easily add straggler packages with no conda distribution in an extra pip section. uv has decent support for pytorch now. If reproducibility or reliable deployment is needed, docker is a good option. But it just seems we are moving backwards rather than forwards. Even pytorch is reversing back to officially supporting pip only now. What gives?

submitted by /u/aeroumbria
[link] [comments]

Liked Liked