whatisgithub

What is unirank?

salmon1802/unirank — explained in plain English

Analysis updated 2026-05-18

23PythonAudience · researcherComplexity · 4/5Setup · moderate

In one sentence

A PyTorch research benchmark that lets researchers fairly compare recommendation ranking models on the same data, features, and metrics.

Mindmap

mindmap
  root((UniRank))
    Purpose
      Fair Model Comparison
      Shared Data Splits
      Shared Metrics
    Architectures
      Sequence Pooling First
      Layer Wise Interaction
      Dozen Plus Models
    Training
      Multi Feedback Objectives
      Multi GPU Support
      Chunked Data Loading
    Data
      Hugging Face Datasets
      Config Driven Runs

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Compare more than a dozen published ranking model architectures under the same data split and metrics.

USE CASE 2

Train ranking models that learn from multiple feedback signals at once, such as clicks, follows, and conversions.

USE CASE 3

Load and train on large recommendation datasets across multiple GPUs using chunked data loading.

USE CASE 4

Reproduce published ranking model experiments using preprocessed datasets available on Hugging Face.

What is it built with?

PythonPyTorch

How does it compare?

salmon1802/unirankaaravkashyap12/advise-project-approachabu-rayhan-alif/django-saas-kit
Stars232323
LanguagePythonPythonPython
Setup difficultymoderateeasymoderate
Complexity4/52/53/5
Audienceresearcherdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 1h+

Early-stage project at version 0.1.0, large datasets need multi-GPU and chunked data loading to train.

So what is it?

UniRank is a research toolkit for comparing different AI model designs that power recommendation systems, the kind of technology that decides which videos, products, or posts to show a user next. Companies like TikTok, YouTube, and e-commerce platforms use ranking models to sort through millions of candidates and pick what to show in a given moment. This project gives researchers a common testing environment so they can compare different model architectures fairly, using the same data splits and the same metrics. The specific problem UniRank focuses on is that modern ranking models need to juggle two things at once: they need to understand the relationships between many different features about a user and an item (age, category, context), and they need to track what a user has been doing over time (their history of clicks, likes, shares, and comments). Different research groups have proposed different ways to combine those two concerns. UniRank organizes these approaches into two camps: ones that first summarize the history into a compact form before mixing it with other features, and ones that keep history tokens and feature tokens together and let them interact throughout the whole model. The benchmark includes implementations of more than a dozen published models from industrial research papers. It supports training setups where the model learns from multiple types of user feedback at once, not just click-through rate but also follows, long views, and conversions. For large datasets, the project includes tools to load data in chunks and to run training across multiple GPUs. Three preprocessed datasets are available on Hugging Face for anyone who wants to reproduce experiments without hunting down raw data. The README describes this as a work in progress at version 0.1.0. Setup follows standard Python conventions with a requirements file. Training is launched from a single script that accepts experiment configuration files, and a separate script handles hyperparameter search.

Copy-paste prompts

Prompt 1
Help me set up UniRank from the requirements file and explain what version 0.1.0 work in progress means for stability.
Prompt 2
Explain the difference between the two ranking model paradigms UniRank organizes: sequence pooling first versus layer-wise unified interaction.
Prompt 3
Walk me through launching a training run with an experiment configuration file and what the hyperparameter search script does.
Prompt 4
Show me how to use the preprocessed Hugging Face datasets in this repo to reproduce an experiment without raw data.
Prompt 5
I want to train a ranking model on multiple feedback types like click, follow, and conversion. Show me how UniRank supports that.

Frequently asked questions

What is unirank?

A PyTorch research benchmark that lets researchers fairly compare recommendation ranking models on the same data, features, and metrics.

What language is unirank written in?

Mainly Python. The stack also includes Python, PyTorch.

How hard is unirank to set up?

Setup difficulty is rated moderate, with roughly 1h+ to a first successful run.

Who is unirank for?

Mainly researcher.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.