Temporal Conditioning for Human Behavioral Cloning in Chess

Weights and evaluation data for the IEEE GEM 2026 paper.

Code and reproduction instructions: https://github.com/Prof-it/temporal-chess-model

Models

Five checkpoints, each released as .onnx (to play) and .pt (to evaluate).

Model Steps
marvin_23m_cond_1700k 1.70M 23M time-conditioned, longest-trained and strongest
marvin_79m_cond_1650k 1.65M 79M time-conditioned, the model the paper compares to Maia-3
marvin_23m_cond_1M 1.00M 23M time-conditioned, ablation arm
marvin_23m_blind_1M 1.00M 23M time-blind twin, ablation baseline
marvin_79m_cond_1M 1.00M 79M time-conditioned, step-matched to the 23M pair

The three 1M checkpoints are step-matched, so those are the ones to compare against each other. Training of the time-blind arm stopped at 1M steps, which is why it has no later checkpoint.

checkpoints_MANIFEST.json records the role, sha256, step count, seeds, parameter count and training command for each.

Evaluation data

eval-data/testset_2026-05/ is the held-out test set every reported number is computed on: 1,500,029 positions from May 2026 Lichess games, one position per game, rated 1200-2500, across all time controls.

Use

git clone https://github.com/Prof-it/temporal-chess-model
cd temporal-chess-model
pip install -r requirements-engine.txt
python download_assets.py --engine
scripts/marvin-uci.sh          # or point a chess GUI at it

Every .pt embeds its own config_dict, so evaluation.backends.make_backend loads any of them without being told the architecture.

Citation

@inproceedings{dziwniel2026temporal,
  author    = {Victor Dziwniel and Tianxiang Lu},
  title     = {Temporal Conditioning for Human Behavioral Cloning in Chess},
  booktitle = {2026 IEEE Gaming, Entertainment and Media Conference (GEM)},
  year      = {2026},
  publisher = {IEEE}
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support