Skip to content

Recommenders

Python notebooks and utilities for building and testing recommendation systems.

Stars
22k
Forks
3.3k
Licence
MIT
Language
Python
Last update
4 days ago
Type
Library

What it is

Recommenders is a Python package and collection of Jupyter notebooks that show how to build recommendation systems, such as suggesting movies or articles to users. It covers preparing data, training many classic and deep learning algorithms, evaluating them, tuning them, and deploying them to production. It is maintained under the Linux Foundation of AI and Data.

  • Run the SAR (sar_movielens) quick start notebook to get movie recommendations on MovieLens data
  • Compare several algorithms such as ALS, LightGCN, or xDeepFM on the same dataset
  • Split training and test data and compute offline evaluation metrics for model outputs
  • Tune hyperparameters using the model selection and optimization examples

Great for

  • Data scientists prototyping recommendation models
  • Developers who want working examples of common recommendation algorithms
  • Students learning how recommenders are built and evaluated
  • Engineers who need data-splitting and evaluation utilities for their own models

Not ideal for

  • People who want a finished recommendation product with no coding, since it is a library and set of notebooks
  • Teams not using Python, since the package and examples are Python-based
  • Anyone needing production deployment outside Azure, since the README describes operationalization on Azure
Step-by-step guide: how to use RecommendersInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python 3.11 (as used in the README example) · uv or another virtual environment tool · gcc (on Linux/WSL, as noted in the README)

    Install uv

    curl -LsSf https://astral.sh/uv/install.sh | sh

    Create virtual environment

    uv venv ~/.venvs/recommenders --python 3.11

    Install core package

    uv pip install recommenders

    Clone the repository

    git clone https://github.com/recommenders-team/recommenders.git
  2. 2

    Run it

    • Activate the virtual environment with source ~/.venvs/recommenders/bin/activate
    • Install ipykernel and register a Jupyter kernel named recommenders
    • Clone the repository and open examples/00_quick_start/sar_movielens.ipynb
    • Select the Python (recommenders) kernel and run the notebook
  3. 3

    Get the most out of it

    • Install the [gpu] extra if you need GPU models, as described in the README
    • Install the [spark] extra for Spark-based models such as ALS
    • Read the Setup Guide (SETUP.md) for Windows, macOS, and other configurations
    • Use the Deep dive notebooks to understand the math and implementation behind each algorithm
    • Check the documentation site linked on the project homepage for more detail

Downloads

Strengths

  • Covers the full workflow from data preparation to evaluation and tuning in one repository
  • Includes many algorithms, with notebooks marked as quick starts or deep dives
  • Released under the permissive MIT license and backed by a Linux Foundation project

Trade-offs

  • Mostly notebooks and examples, so it is more for experimentation than turnkey use
  • Some algorithms need extra installs (GPU, Spark) or are marked experimental and not thoroughly tested
  • Production guidance in the README is centered on Azure

How it compares

ProjectStarsTypeLevelUpdatedBest for
recommenders (this)22kLibraryintermediate4 days agoData scientists prototyping recommendation models
fg-data-profiling13.7kLibrarybeginner6 days agoAnalysts who want a quick first look at an unfamiliar dataset
nni14.4kLibraryintermediate2.3 years agoResearchers comparing hyperparameter tuning algorithms such as TPE, Hyperband, or Bayesian methods
netron33.6kAppbeginner4 days agoEngineers who need to check a model's layers and tensor connections before deploying it
deepface23.6kLibraryintermediate5 days agoPython developers prototyping face verification or face search
onnxruntime22.2kLibraryintermediate4 days agoDevelopers who want to deploy a trained model inside an application or service

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.