Home Projects Surprise
Surprise
Python

Surprise

A Python scikit for building and analyzing recommender systems

by NicolasHug · GitHub
Stars
Forks
Created
Last commit
Language
factorizationmachine-learningmatrixBSD-3-ClausePython
View on GitHub
In plain words

Build and test recommendation systems that suggest items based on user ratings and preferences.

You maintain this project?

Claim its page: indexed whatever its rank, translated into six languages, and enriched with what you write yourself.

Claim this page →
Surprise — GitHub preview card
📈 Star history
6 8036 801
2026-07-042026-08-31
📈 Track Surprise

Get an email alert on its next release or when it starts trending — never miss the moment.

Free · no card · unsubscribe anytime
Get email alerts →
📄 About

A Python scikit for building and analyzing recommender systems

Surprise has 6.8k stars on GitHub. It has been forked 1.1k times. Surprise is written mainly in Python. It has been in active development since 2016. Surprise is available under the BSD-3-Clause license. Its main topics are factorization, machine-learning, matrix, recommendation.

Frequently asked questions

What is Surprise?

A Python scikit for building and analyzing recommender systems

Is Surprise open source?

Surprise is an open-source project. It is released under the BSD-3-Clause license.

Is Surprise free?

Yes. Surprise is free and open source — you can use, modify and self-host it.

What license does Surprise use?

Surprise is available under the BSD-3-Clause license.

What language is Surprise written in?

Surprise is written mainly in Python.

🏅 Maintainer of this project?
olud.ai badge — Surprise

Add this live badge to your README — your GitHub stars and directory rank, refreshed daily.

[![olud.ai](https://olud.ai/badge.php?tool=nicolashug-surprise)](https://olud.ai/project/nicolashug-surprise.html)
More badge options →
🧬 Shares DNA with🧬 View the DNA map →

Measured from GitHub topics shared by both projects, weighted by how rare each topic is.