t0-alpha Q8_0, WebGPU
Q8_0-quantized weights for theforecastingcompany/t0-alpha, packaged for client-side browser forecasting via WASM + WebGPU.
Runs entirely in the browser, no server required. Probabilistic multi-horizon time-series forecasting, ~102M parameters.
What you gain, what you lose
Nothing is lost compared with the official INT8 export, and accuracy is slightly better: on the head-to-head window, the largest deviation from the F32 reference is 0.20% of the series range for this Q8_0 file against 0.79% for the official INT8 ONNX export, at about the same size (109 MB), and the browser forecast is about 2x faster (34.5 ms vs 64.0 ms, single signal, Apple M2). On the full 97-config GIFT-Eval protocol it costs +0.04% MASE and +0.02% CRPS against our own F32 control, within 0.25% of the published t0-alpha card.
Files
| File | Size | Description |
|---|---|---|
t0-alpha-q8_0.gguf |
108.9 MB | Forecasting transformer weights (Q8_0 quantized) |
config.json |
<1 KB | Model architecture and quantile-level configuration |
Usage
These weights are consumed by t0-web, a Rust/WASM + WebGPU forecasting engine built with Burn.
await t0wasm.initBackend();
const modelBuf = await fetch('t0-alpha-q8_0.gguf').then(r => r.arrayBuffer());
const model = t0wasm.T0Wasm.load(new Uint8Array(modelBuf));
const context = series.slice(-512);
const quantiles = await model.forecast(context, 32);
Weights are fetched from this repo and cached by the browser.
Requirements
- Chrome 113+ or Edge 113+ (WebGPU required)
- HTTPS (required for WebGPU)
- ~109 MB download on first load (cached afterward)
Pipeline
Series โ patches of 32 (96-vector each)
โ 24 transformer blocks [WASM, WebGPU] โ time and group attention, embed 512
โ 32-step quantile decoder โ 5 quantile levels
โ autoregressive rollout for longer horizons
Benchmarks
GIFT-Eval, full 97 configs, normalized to Seasonal Naive
| variant | MASE | CRPS |
|---|---|---|
| Published t0-alpha card (F32) | 0.7240 | 0.4941 |
| Our F32 control | 0.7255 | 0.4942 |
| This Q8_0 | 0.7258 | 0.4943 |
Isolating quantization from any pipeline effect (Q8_0 vs our own F32 control): +0.04% MASE, +0.02% CRPS, at 0.27x the F32 file size. The same protocol on the Q4_0 export gives 0.7334 / 0.4973.
Drift vs our own F32 reference (54 synthetic cases)
| quant | mean drift worst % | point drift worst % |
|---|---|---|
| this Q8_0 | 0.53 | 1.78 |
Well inside typical acceptance gates for this checkpoint (2% mean / 10% point).
Browser latency (Chrome, headless Chromium, Apple M2, single signal, context 512)
| warm ms | batch-24 ms/signal | |
|---|---|---|
| Official ONNX WebGPU export | 64.0 | 8.87 |
| This file (Q8_0-resident WebGPU) | 34.5 | 11.2 |
Single-call latency beats the official ONNX export (34.5 vs 64.0 ms). Batched throughput is slower on this file (11.2 vs 8.87 ms/signal).
Model Details
- Base model: theforecastingcompany/t0-alpha by The Forecasting Company
- Architecture: Patch transformer, time and group attention
- Parameters: ~101.6M
- Quantization: Q8_0 for
attention.wQKV.weight,attention.wO.weight,mlp.0.weight,mlp.2.weightper layer; norms, embeddings, biases, and the quantile head kept at f16 - Quantile levels: 5 (0.1, 0.25, 0.5, 0.75, 0.9)
- License: Apache-2.0 (same as original)
Quantization
Weights-only quantization using standard GGUF Q8_0 blocks (32 values per block, fp16 scale), in ggml-compatible layout, dequantized on-GPU inside the WGSL matmul with F32 compute. Exported from the F32 safetensors by t0-web's own packer. The F32 path itself matches the PyTorch reference to 1.2e-6 max-abs.
Citation
@misc{tfc-t0,
title = {t0: A time-series forecasting foundation model},
author = {The Forecasting Company},
year = {2026},
url = {https://huggingface.co/theforecastingcompany/t0-alpha},
}
Disclaimer
This is an independent port by ilnmtlbnm@idle-intelligence, not affiliated with or endorsed by The Forecasting Company. Forecast values may differ slightly from the original PyTorch implementation due to quantization.
- Downloads last month
- 17
8-bit
Model tree for idle-intelligence/t0-alpha-q8_0-webgpu
Base model
theforecastingcompany/t0-alphaEvaluation results
- MASE on GIFT-Eval (97 configs, normalized to Seasonal Naive)self-reported0.726
- CRPS on GIFT-Eval (97 configs, normalized to Seasonal Naive)self-reported0.494