跳到主要内容
项目档案库 / SDK

TimesFM 时间序列基础模型:Google Research 预训练预测库安装与使用完整指南

TimesFM 是由 Google Research 开发的预训练时间序列基础模型,专为时间序列预测设计。本文详细介绍其安装步骤、使用方法、适用场景及核心特性,包括长上下文支持、协变量集成和不确定性量化。查看完整指南获取代码示例和最佳实践。

33,205PythonStar 于 2026年4月15日2026年9月19日 更新

AI 总结

TimesFM 是 Google Research 开发的预训练时间序列基础模型,提供开箱即用的预测能力,支持长上下文、协变量集成和不确定性量化,显著降低时间序列预测的入门门槛。

中文项目介绍

TimesFM 是由 Google Research 开发的时间序列基础模型,专注于时间序列预测任务。 该项目通过大规模预训练解决时间序列数据稀缺和模型泛化能力不足的问题,用户无需从零训练即可获得高质量的预测结果。 适用场景涵盖时间序列预测、异常检测、协变量影响分析以及模型微调等,特别适合需要快速部署预测能力的业务场景。 技术架构上,TimesFM 采用模块化设计,支持 PyTorch、Flax(JAX)和 XReg 三种后端,内置 RevIN 实例归一化,提供长达 16k 的上下文长度和连续分位数预测能力。 当前最新版本为 TimesFM 2.5(200M 参数),所有模型权重已发布至 Hugging Face,并提供了完整的示例代码、单元测试和详细文档。

详细信息与使用说明

1. 项目定位与用途

TimesFM 是 Google Research 开发的时间序列基础模型,核心定位为预训练预测库。它通过大规模预训练提供开箱即用的时间序列预测能力,用户可直接加载预训练权重进行推理,无需从头训练。主要用途包括单变量/多变量时间序列预测、异常检测、协变量影响分析以及模型微调,适用于金融、气象、零售、运维等多种领域的预测需求。项目提供标准化的 Python API,支持与 HuggingFace 生态集成。

2. 解决的问题

TimesFM 主要解决时间序列预测领域的两个核心问题:一是数据稀缺场景下的模型泛化能力不足,通过大规模预训练学习通用时间序列模式;二是预测不确定性量化困难,内置连续分位数预测头可提供预测区间。此外,项目通过内置 RevIN 归一化消除外部预处理依赖,通过协变量支持(XReg)解决外部因素影响建模问题,并通过参数高效微调(LoRA)降低领域适配成本。

3. 适用场景

TimesFM 适用于多种时间序列分析场景:基础预测任务如销售预测、需求规划;异常检测场景,通过历史残差分析和未来预测区间识别异常点;协变量预测场景,分析价格、促销、假日等外部因素的影响;模型微调场景,使用 LoRA 等技术适配特定领域数据。项目特别适合需要快速验证预测效果、缺乏大量标注数据或需要不确定性量化的生产环境。

4. 安装方式

TimesFM 使用 uv 进行依赖管理和安装。具体步骤:1) 克隆仓库:git clone https://github.com/google-research/timesfm.git && cd timesfm;2) 创建虚拟环境:uv venv 并激活:source .venv/bin/activate;3) 安装包:uv pip install -e .[torch](PyTorch 后端)或 uv pip install -e .[flax](Flax 后端)或 uv pip install -e .[xreg](协变量支持)。可选步骤:根据硬件环境单独安装 PyTorch 或 JAX 后端。项目要求 Python >= 3.10。

5. 使用方式

TimesFM 提供标准化的三步骤使用流程:1) 加载预训练模型:model = timesfm.TimesFM_2p5_200M_torch.from_pretrained('google/timesfm-2.5-200m-pytorch');2) 配置编译:model.compile(timesfm.ForecastConfig(max_context=1024, max_horizon=256, normalize_inputs=True, use_continuous_quantile_head=True));3) 执行预测:point_forecast, quantile_forecast = model.forecast(horizon=12, inputs=[np.array([...])])。完整示例参考 timesfm-forecasting/examples/ 目录下的异常检测、协变量预测和 LoRA 微调脚本。

6. 补充说明与实现特点

TimesFM 2.5 相比 2.0 版本主要改进包括:参数量从 500M 降至 200M,上下文长度从 2048 提升至 16000,移除频率指示器,新增连续分位数预测头(可选 30M 参数)。项目支持多后端架构,PyTorch 版本适合通用部署,Flax 版本提供更快的推理速度,XReg 扩展支持协变量集成。模型已集成至 Google 1P 产品如 BigQuery ML 和 Google Sheets。开源版本非官方支持产品,版本 1.x 代码归档于 v1/ 目录,可通过 pip install timesfm==1.3.0 安装。

思维导图

TimesFM
核心库
配置管理
TimesFM 2.5 模型
工具函数
后端实现
PyTorch 后端
Flax 后端
XReg 协变量
示例与文档
异常检测示例
协变量预测示例
LoRA 微调示例
全球温度案例
API 参考文档
测试与旧版
单元测试
v1 历史版本
实验脚本

常见问题

TimesFM 是什么?

TimesFM 是 Google Research 开发的预训练时间序列基础模型,基于 decoder-only 架构,支持时间序列预测任务。最新版本 2.5 拥有 200M 参数,支持 16k 上下文长度和连续分位数预测,可直接从 Hugging Face 加载预训练权重使用。

如何安装 TimesFM?

使用 uv 包管理器安装:克隆仓库后创建虚拟环境(uv venv),激活环境(source .venv/bin/activate),然后通过 uv pip install -e .[torch] 安装 PyTorch 后端,或使用 uv pip install -e .[flax] 安装 Flax 后端,或使用 uv pip install -e .[xreg] 安装 XReg 协变量支持。