Qué es
TimesFM (Time Series Foundation Model) es el modelo fundacional de Google Research para pronóstico de series temporales: un transformer decoder-only preentrenado, con paper publicado en ICML 2024 y el código open source (Apache 2.0). Le pasás una serie histórica —ventas, temperatura, tráfico, cotizaciones— y te devuelve la proyección a futuro sin reentrenar nada: pronóstico zero-shot.
Cómo funciona por dentro
A diferencia de un modelo que armás a mano para cada serie, TimesFM aprende de ~100 mil millones de puntos temporales (series reales + sintéticas) durante el preentrenamiento. La arquitectura es un transformer decoder-only con patching: la serie se corta en parches y cada parche entra como un token, igual que un LLM. La atención causal solo mira el pasado y decodifica el horizonte patch a patch.
La versión actual es de 200M de parámetros: corre en una GPU común, e incluso en Apple Silicon con el backend MLX nativo, sin PyTorch.
La evolución de TimesFM
- 1.0 (2024): el original, 200M de parámetros, zero-shot que dominó los benchmarks de la época.
- 2.0: contexto de hasta 2.048 puntos y mejor precisión.
- 2.5 (sept. 2025): contexto de hasta 16k puntos, cuantiles continuos hasta horizonte 1.000 y soporte de covariables (XReg).
- 3.0 (agosto 2026): el salto grande — multivariado nativo, covariables pasadas y pasadas+futuras, y #1 en los tres benchmarks.
Lo nuevo de TimesFM 3.0
La 3.0 pronostica series multivariadas: varias señales que se mueven juntas —todas las métricas de un producto, todos los sensores de una planta— en una sola pasada, con covariables opcionales (solo pasadas, o pasadas+futuras como un calendario de promociones) sin tunear por tarea. Resultado: rank #1 overall en fev-bench (100 tareas reales), TIME (50 datasets / 98 tareas) y GIFT-Eval.
Ojo con la licencia: el código sigue Apache 2.0, pero los pesos de 3.0 hoy se distribuyen con una licencia separada no comercial (
timesfm-non-commercial-license-v1.0). Los checkpoints hasta 2.5 siguen Apache 2.0.
Cómo usarlo
Instalación directa desde PyPI:
pip install timesfm[torch] # PyTorch
pip install timesfm[mlx] # Apple Silicon, sin PyTorch
Y pronosticar es casi una línea:
import numpy as np
from timesfm3 import TimesFM3Evaluator, ModelConfig
config = ModelConfig(checkpoint_path="google/timesfm-3.0-pytorch")
forecaster = TimesFM3Evaluator(config)
series = np.sin(np.linspace(0, 24, 72)).astype(np.float32)
outputs = list(forecaster.predict_batch([series], horizon=12, return_quantiles=True))
# outputs[0].forecast -> (12,) puntos proyectados
# outputs[0].quantiles -> (12, 9) deciles
Por qué importa
- Zero-shot real: sin feature engineering ni reentrenamiento por dataset. El caso clásico: una tienda que quiere pronosticar stock ayer mismo.
- Estándar de la industria: ya corre en Vertex AI, en BigQuery ML (pronóstico directo en SQL) y hasta en Google Sheets para la planilla diaria.
- Abierto y portable: MLX en Apple Silicon, Flax para producción y fine-tuning con LoRA vía HuggingFace Transformers + PEFT.
- Medido, no marketing: ser #1 en TIME y GIFT-Eval —los benchmarks de la comunidad— es la prueba de que el zero-shot generalista funciona.
Siguiente paso
Si tenés una serie a mano —las métricas de tu blog, tu historial de ventas, el clima— instalá el paquete, pegá tus datos y compará el pronóstico con el método que uses hoy. Son cinco líneas de código y la diferencia se ve.
Repo: github.com/google-research/timesfm · Paper: arxiv.org/abs/2310.10688