River

River

โ˜… 4 ๐Ÿ”– 2500 saves ๐Ÿ’ฐ Free GitHub

River is an open-source Python library for online machine learning, where models learn incrementally from streaming data one observation at a time. It has collected about 6,100 stars on GitHub, is licensed under BSD-3-Clause, and is actively maintained with updates in 2026.

Overview

Most ML libraries assume a fixed dataset you train on once. River is built for the opposite world: data that arrives continuously, distributions that drift over time, and models that must update in real time. It provides online versions of common algorithms, from linear models and trees to anomaly detection and recommender systems, together with tools for progressive evaluation, concept-drift detection and streaming feature engineering. Its API deliberately mirrors scikit-learn conventions, so practitioners can move from batch to streaming workflows without relearning everything.

Key Features

  • Incremental learning algorithms that update with each new sample
  • Online classification, regression, clustering and anomaly detection
  • Concept-drift detectors and adaptive models for changing data
  • Streaming feature engineering and preprocessing tools
  • Progressive validation methods designed for data streams
  • scikit-learn-inspired API that feels familiar to Python users
  • BSD-3-Clause licensed and actively developed

River is the successor of the creme library and has become the reference toolkit for streaming ML in Python, used in both academic benchmarks and production systems that cannot pause for batch retraining. Its design keeps memory footprints small enough for edge and high-throughput scenarios, and its modular pipeline API lets you compose preprocessing, modeling and evaluation into a single online workflow. The project maintains extensive documentation with worked examples covering classification, regression, anomaly detection and incremental recommendation on real streaming datasets.

๐Ÿ’ณ Pricing

River is completely free and open source under the BSD-3-Clause license. There are no paid plans; install it from PyPI and use it in research or production at no cost.

Who Is It For

River is for data scientists and engineers working with streaming or time-evolving data, such as fraud detection, sensor analytics, recommendations and monitoring, where retraining from scratch is too slow or wasteful.

๐Ÿš€ Visit River Official Site

๐Ÿšฉ Report an issue