Recursive Moirai 2
An independent, from-scratch implementation inspired by Moirai 2. Instead of autoregressing decoded quantiles for long forecasts, it rolls the transformer's latent state forward.
- Parameters: 9.1M
- Direct prediction length: 64 observations
- Training reach: 12 rollouts / 768 observations
- Output: nine quantiles from 0.1 through 0.9
- Implementation: JAX and Flax NNX
See the blog post for motivation and ablations, and the exact training and evaluation code for reproduction.
GIFT-Eval results
The checkpoint was evaluated on all 97 GIFT-Eval dataset-horizon combinations. Metrics below are normalized by Seasonal Naive; lower is better.
| Metric | Overall | Short | Medium | Long |
|---|---|---|---|---|
| CRPS | 0.5345 | 0.5638 | 0.5012 | 0.4956 |
| MASE | 0.7709 | 0.7487 | 0.7923 | 0.8096 |
Overall calibration error is 0.0534.
Training
The model trained for 100,000 steps with batch size 64. Its training mixture was:
| Source | Weight |
|---|---|
| GIFT-Eval Pretrain | 10% |
| Chronos TSMixup | 50% |
| Chronos KernelSynth | 20% |
| GIFT-Eval train/validation histories | 20% |
GIFT-Eval test regions were excluded. Because the model uses GIFT-Eval training histories, it is a pretrained rather than zero-shot submission under the benchmark's definitions.
The exact recipe is stored in config.json, and dataset revisions and generation
parameters are recorded in data_manifest.json.
Reproducing evaluation
Clone the code and download this repository into a run directory:
git clone https://github.com/ecntu/recursive-tsfm.git
cd recursive-tsfm
git checkout ceb9e54fdaead0c0f4ef92a4eb6d9eb86782e18e
hf download emiliocantuc/recursive-moirai-2 --local-dir runs/recursive-moirai-2
uv run --script scripts/prep_eval_data.py --context_len 8192
uv run python gifteval.py eval_windows --run_dir runs/recursive-moirai-2
The checkpoint uses Orbax format. gifteval.py reconstructs the architecture
from config.json and restores the latest checkpoint automatically.
Limitations
The model is univariate and produces quantile forecasts rather than samples. It was trained and evaluated at research scale; performance can vary substantially across domains, frequencies, and forecast lengths. This checkpoint has not been validated for safety-critical decisions.
Citation
@misc{cantu2026recursivemoirai2,
author = {Cantu Cervini, Emilio},
title = {To Improve Long-Horizon Time-Series Forecasting},
year = {2026},
url = {https://ecntu.com/posts/recursive-moirai}
}
- Downloads last month
- -