benfred / implicit

Fast Python Collaborative Filtering for Implicit Feedback Datasets
https://benfred.github.io/implicit/
MIT License
3.57k stars 612 forks source link

Support for linux built distributions on Pypi #539

Closed tristanjsmith closed 2 years ago

tristanjsmith commented 2 years ago

Hi all,

I am trying to run the implicit module on an AWS Lambda python 3.7 runtime (that uses linux). For any packages that are not natively supported by this AWS runtime, I have to include the built distribution files to a zip file when uploading the lambda function to AWS. However, on https://pypi.org/project/implicit/#files only the source distribution files are available, which are not working. Is there any advice someone can give me, or any possibility that you can add the built distribution files as wheel files that are linux compatible to Pypi.org as well?

Many Thanks.

benfred commented 2 years ago

Agreed - I think it would be super useful to get binary wheels up on pypi for linux.

I'd also like to see GPU enabled wheels up, building the GPU code from scratch can take a significant amount of time now

benfred commented 2 years ago

I've added building binary wheels to the CI - and have manually uploaded to pypi. This includes the GPU extension on linux, which is the time consuming part to build. The next release should have these wheels automatically added to the github release page and pypi

I've tested these out quick on google colab and my local desktop, and seems to work well. I'd appreciate another set of eyes though if you have a chance,