ScriptSmith's picture
ONNX exports of TabICLv2, KumoTabular (small, medium, large), KumoRelational, Chronos-2 and Kumo-Anomaly for Tabular Data Workbench
b043bdf verified
|
Raw History Blame Contribute Delete
5.75 kB
metadata
license: apache-2.0
library_name: onnx
base_model:
  - amazon/chronos-2
  - autogluon/chronos-2-small
  - nvidia/Kumo-Anomaly
base_model_relation: quantized
pipeline_tag: time-series-forecasting
tags:
  - onnx
  - onnxruntime-web
  - webgpu
  - time-series-forecasting
  - anomaly-detection
  - chronos
  - time-series-foundation-model

Chronos-2 and Kumo-Anomaly for onnxruntime-web

Unofficial ONNX conversions of three time-series models, made for Tabular Data Workbench, which runs them in the browser with onnxruntime-web on WebGPU or WebAssembly:

The weights are the upstream weights: unchanged in the fp32 variant, and with the larger ones rounded to float16 in the f16w variant. Amazon and NVIDIA have not reviewed or endorsed these conversions. NVIDIA's model card describes Kumo-Anomaly as "for research and development only".

Files

file inputs output
chronos-2.<v>.onnx, chronos-2-small.<v>.onnx features (batch, tokens, 48), token_mask (batch, tokens), group_mask (batch, batch), reg_mask (tokens, 1), rope_cos, rope_sin (tokens, 64) quantiles (batch, tokens, Q × 16)
kumo-anomaly.<v>.onnx x (batch, 40, 100, 2), step_onehot (1, 500), strategy_onehot (1, 2), time (100) eps (batch, 40, 100)

Each graph comes in two variants (<v>), listed here with the sizes of Chronos-2, Chronos-2 small and Kumo-Anomaly:

  • fp32: the checkpoints' weights as they are (478 MB, 112 MB and 10 MB).
  • f16w: every float32 weight of 1,024 or more elements stored as float16 and cast back to float32 on load (239 MB, 56 MB and 5 MB). Compute stays float32.

The Chronos-2 graphs take the encoder's input already assembled: instance scaling, arcsinh, patching, time encodings, the rotary tables and the masks built from group ids are computed outside the graph, so one graph serves every context length up to 8,192 and every horizon up to 1,024 without int64 shape arithmetic. Q is 21 quantiles for Chronos-2 and 13 for Chronos-2 small.

The Kumo-Anomaly graph is the denoiser only. The masks, the noise, the DPM-Solver++ sampling loop, the median over samples and the scores run outside it, one graph call per solver step.

manifest.json lists every file with its size and sha256, each model's configuration (context length, quantile levels, patch size, diffusion schedule) and the parity figures below.

How they were made

Sources: amazon/chronos-2 at 29ec3766d36d6f73f0696f85560a422f50e8498c, autogluon/chronos-2-small at ddec01313e50b6bc58ebaa92ede81bc24a3d9f9a (with chronos-forecasting 2.3.2), and nvidia/Kumo-Anomaly at 226c5003b0582adc1cac433123f47324bfae39f2 (with NVIDIA's structured-data-models at commit 2b1696f4fdc22004cc757c44703a69cf326c0a11).

cd models/tsfm
uv run export_chronos2.py   # Chronos-2 and Chronos-2 small
uv run export_kumo.py       # Kumo-Anomaly

Both scripts (in models/tsfm/ of Tabular Data Workbench) export with torch.onnx (dynamo, opset 18, PyTorch 2.14 on CPU), remove the exporter's node metadata and doc strings, and check the graphs against the reference packages before writing the manifest.

Parity

Chronos-2: the whole forecast (numpy preparation, the ONNX graph in onnxruntime 1.30 on CPU, decoding) against Chronos2Pipeline.predict_quantiles, maximum absolute difference over all quantiles, divided by the forecast's widest spread between the lowest and highest quantile:

case Chronos-2 fp32 Chronos-2 f16w small fp32 small f16w
AirPassengers, 24 months 1.3e-6 2.3e-4 1.2e-6 3.8e-4
AirPassengers with gaps, 36 months 1.0e-6 2.6e-4 8.0e-7 1.7e-4
daily series, weekly cycle, 28 days 9.3e-7 4.6e-4 7.9e-7 3.3e-4
the same with a known covariate 9.3e-7 2.7e-4 9.5e-7 4.9e-4

Kumo-Anomaly: the sampling loop with the fp32 graph against sdm.models.KumoAnomaly on a series with injected anomalies, with the same noise (4 samples, 6 solver steps): anomaly scores agree to 1.0e-6 (scores up to 1.06).

Licence

All three models are licensed under the Apache License, Version 2.0 (LICENSE). NOTICE carries the copyright notices (Amazon.com, Inc. or its affiliates for Chronos-2; NVIDIA CORPORATION & AFFILIATES for Kumo-Anomaly) and states how these files differ from the originals. LICENSE.structured-data-models is NVIDIA's copy of the licence from the code the Kumo-Anomaly graph was exported from. Kumo-Anomaly's sampler derives from DPM-Solver (Copyright (c) 2022 Cheng Lu, MIT License), whose licence is in THIRD-PARTY-NOTICES.txt.

Keep LICENSE, NOTICE, THIRD-PARTY-NOTICES.txt and LICENSE.structured-data-models with the graphs when redistributing them.

Citation

@article{ansari2025chronos2,
  title  = {Chronos-2: From Univariate to Universal Forecasting},
  author = {Abdul Fatir Ansari and Oleksandr Shchur and Jaris Küken and Andreas Auer and Boran Han and Pedro Mercado and Syama Sundar Rangapuram and Huibin Shen and Lorenzo Stella and Xiyuan Zhang and Mononito Goswami and Shubham Kapoor and Danielle C. Maddix and Pablo Guerron and Tony Hu and Junming Yin and Nick Erickson and Prateek Mutalik Desai and Hao Wang and Huzefa Rangwala and George Karypis and Yuyang Wang and Michael Bohlke-Schneider},
  year   = {2025},
  url    = {https://arxiv.org/abs/2510.15821}
}