Nixtla/nixtla

TimeGPT-2.1: production ready pre-trained Time Series Foundation Model for forecasting and anomaly detection. Generative pretrained transformer for time series trained on over 100B data points. It's capable of accurately predicting various domains such as retail, electricity, finance, and IoT with just a few lines of code 🚀.

📦 什么是 Niixla?

Nixtla 是一个 SDK,可让您与 TimeGPT 交互,TimeGPT 是一个专为时间序列预测和异常检测而构建的大规模 Transformer 模型。该模型本身作为服务托管(需要 API 密钥),而 Python 包则提供了一个轻量级客户端、辅助工具和集成(Snowflake、其他语言),使您能够从自己的代码中调用该模型。


🚀 核心功能

功能 作用 如何使用
零样本预测 无需任何本地训练,即可为任意时间序列生成点预测和预测区间。 client.forecast(df, h=24, level=[80,90])
异常检测 识别历史数据(批量)或在线流中的异常值。 client.detect_anomalies(df, …)(批量) / client.detect_anomalies_online(df, h, detection_size)
微调 将预训练模型适应到您自己的领域以提高准确性。 通过 API 提供(未在 README 中展示)。
外生变量 添加额外的回归变量(节假日、价格等)以提高预测精度。 通过 API 请求传递。
多序列支持 一次调用即可预测多个序列,节省计算资源。 同一个 forecast 方法适用于包含多个 ID 的 DataFrame。
交叉验证与自定义损失 内置工具用于模型验证和自定义微调目标。 通过 API 暴露。
部署 在 Snowflake 内运行服务,或从 JavaScript、Go 等语言调用。 pip install nixtla[snowflake] 然后运行安装脚本。

🛠️ 快速入门

pip install "nixtla>=0.8.0"
import pandas as pd
from nixtla import NixtlaClient

# 1️⃣ 在 https://nixtla.io/free-trial 获取免费试用 API 密钥
client = NixtlaClient(api_key="YOUR_KEY")

# 2️⃣ 加载时间序列数据(示例:电力需求)
df = pd.read_csv(
    "https://raw.githubusercontent.com/Nixtla/transfer-learning-time-series/main/datasets/electricity-short.csv"
)

# 3️⃣ 预测接下来的 24 步
forecast = client.forecast(df, h=24, level=[80, 90])

# 4️⃣ (可选)绘图
client.plot(df, forecast, level=[80, 90])

异常检测也使用相同模式,只需将 forecast 替换为 detect_anomalies 即可。


📚 文档与社区

  • 文档 – https://docs.nixtla.io – 完整的 API 参考、教程(微调、使用 Spark/Dask/Ray 扩展、处理不规则时间戳等)。
  • Slack 社区 – 通过 README 中的徽章加入。
  • GitHub – CI 状态、问题追踪器、贡献指南。

⚙️ 架构概览

TimeGPT 是一个在超过 1000 亿个数据点(来自金融、IoT、天气、网络流量等多个领域)上训练的 仅解码器 Transformer。它使用自注意力机制捕捉长时间范围内的模式,并将输出向量线性投影到预测时间范围。该模型 不是通用 LLM;它是专为时间序列设计的基座模型。


📈 何时使用它

使用场景 为什么 TimeGPT 适合
快速原型开发 – 今天就需要预测,而不是花几周构建模型。 零样本推理开箱即用。
多序列 – 数千个 SKU 销售或传感器流。 一次 API 调用可处理多个序列,节省计算资源。
机器学习经验有限 – 业务分析师或产品团队。 低代码 Python 客户端,只需几行代码。
生产工作负载 – 需要可靠、可版本控制的服务。 提供 SLA 的托管模型,支持本地部署。

📝 许可与访问

  • SDK(nixtla 包)是 Apache 2.0 开源。
  • TimeGPT 本身是闭源服务;您必须提供 API 密钥(提供免费试用)或在获得商业许可后本地部署模型。

🎯 总结

Nixtla 的 SDK 是一个轻量、文档齐全的客户端,通过简单的 Python API 使强大的、专为时间序列设计的基座模型(TimeGPT)易于使用,并额外支持 Snowflake、其他语言以及微调和自定义损失函数等企业级功能。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目