Skip to content

Unifying Academic Rigor and Industrial Scale

A high-performance, backend-agnostic framework for reproducible, scalable, and responsible Recommender Systems.

Innovation in Recommender Systems is impeded by a fractured ecosystem. Researchers must choose between the ease of in-memory academic tools and the costly, complex rewriting required for distributed industrial engines. WarpRec eliminates this trade-off. Models defined in WarpRec transition seamlessly from local debugging to distributed training on Ray clusters, without changing a single line of code.

65+ Algorithms From matrix factorization to graph-based and sequential architectures, spanning 6 model families.
40 GPU-Accelerated Metrics Accuracy, rating, coverage, novelty, diversity, bias, fairness, and multi-objective evaluation.
19 Data Strategies 13 filtering and 6 splitting strategies for rigorous, leak-free experimental protocols.
Backend-Agnostic Write once, run anywhere: Pandas, Polars, or Spark via the Narwhals abstraction layer.
Distributed Training Scale from a laptop to a multi-node GPU cluster with Ray. Grid, Bayesian, and bandit-based HPO built in.
Green AI First RS framework with native CodeCarbon integration for real-time energy and carbon tracking.
Agentic AI Ready Native MCP server turns any trained model into a queryable tool for LLMs and autonomous agents.
Statistical Rigor Automated hypothesis testing with Bonferroni, Holm-Bonferroni, and FDR corrections.

Quick Start

Define the complete experimental pipeline through a single YAML configuration file. To explore the full capabilities of the framework, refer to the reference test configuration located at config/quick_start.yml, which provides a minimal yet comprehensive example of the supported settings and components.

reader:
  loading_strategy: dataset
  data_type: transaction
  reading_method: local
  local_path: path/to/my/dataset.csv
  rating_type: explicit
  sep: ','
  labels:
    user_id_label: user_id
    item_id_label: item_id
    rating_label: rating
    timestamp_label: timestamp
writer:
  dataset_name: MyExperiment
  writing_method: local
  local_experiment_path: experiments/test/
splitter:
  test_splitting:
    strategy: temporal_holdout
    ratio: 0.1
models:
  ItemKNN:
    k: 100
    similarity: cosine
evaluation:
  top_k: [10, 20, 50]
  metrics: [nDCG, Precision, Recall, HitRate]
  strategy: sampled
  num_negatives: 99

Start your local instance of Ray:

ray start --head

Then run the following command:

python -m warprec.run -c config/quick_start.yml -p train

Note

WarpRec supports five execution pipelines: Training (full HPO), Swarm (fully parallel training), Design (rapid prototyping), Evaluation (pre-trained checkpoints), and Estimate (resource and runtime profiling). See Quick Start for detailed examples covering local, distributed, and agentic workflows.