33 neural recsys models, one config file, zero hand-rolled TensorFlow
NeuRec bundles three decades of recommender research into a single Python library with a C++ evaluator for speed.

What it does
NeuRec is a TensorFlow-based library that packages 33 neural recommender models for general, social, and sequential recommendation tasks. You pick a model and dataset in a .properties file, run main.py, and it trains and evaluates. A C++ evaluator compiles via setup.py and falls back to a slower Python implementation if the build fails.
The interesting bit The breadth is the point. The README catalogs everything from 2008 matrix factorization (WRMF) to 2020 graph convolutions (LightGCN), plus session-based GRUs, self-attention, and GAN-based recommenders. It reads less like a codebase and more like a curated reading list with runnable implementations.
Key highlights
- 33 models across general, social, and sequential recommendation, each with paper citations
- C++ multi-thread evaluator with automatic Python fallback
- Docker images for cross-platform runs
- Configuration-driven: no code changes needed to swap models or datasets
- Tutorial provided as a Jupyter notebook (
tutorial.ipynb)
Caveats
- Built on TensorFlow 1.x-era patterns (no mention of TF2 or PyTorch)
- “State-of-the-art” claim is frozen at 2020; newer architectures are absent
- Documentation depth is unclear beyond the single tutorial notebook
Verdict Grab it if you need a fast baseline sweep across classic neural recsys literature. Skip it if you want modern transformer-based or large-scale retrieval architectures, or if you need PyTorch.