Build a music or product recommendation engine from user listening or purchase history without asking anyone to rate anything.
Train an ALS model on click or purchase data and generate personalized top-N item recommendations for each user.
Find items similar to a given product using collaborative filtering on a user-interaction matrix.
Speed up recommendation model training with GPU acceleration on a machine with an Nvidia graphics card.
GPU acceleration requires the Nvidia CUDA Toolkit, CPU-only training works out of the box with a single pip install.
Implicit is a Python library for building recommendation systems, specifically designed for situations where you have behavioral data rather than explicit ratings. Most recommendation research focuses on cases where users rate items on a scale, like giving a movie five stars. Implicit handles the more common real-world case where you only know what a user clicked, listened to, or purchased, which is indirect evidence of preference rather than a direct score. The library provides several algorithms for learning patterns from this kind of data. These include Alternating Least Squares, Bayesian Personalized Ranking, Logistic Matrix Factorization, and nearest-neighbor models using different similarity measures. All of them are designed to train quickly. The code uses multithreading to spread work across all available CPU cores, and two of the main algorithms also have GPU-accelerated versions for machines with compatible Nvidia graphics cards. Installation is a single pip command. Basic usage follows a short pattern: you initialize a model, train it on a matrix of user-item interaction data, and then ask it to recommend items for a specific user or find items similar to a given one. The README includes a code example and points to a worked demonstration using music listening data from Last.fm. The library is tested across Python 3.9 through 3.14 on Linux, macOS, and Windows. GPU support requires the Nvidia CUDA Toolkit. The author has written several blog posts explaining the mathematical ideas behind each algorithm, which are linked from the README for anyone who wants to understand what is happening under the hood. The library is released under the MIT license.
← benfred on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.