引子:数据存了几百 G,分析还在拉平均值

做工业项目的朋友跟我吐槽,厂里的设备传感器数据存了好几百 G,温度、振动、电流什么都有。真到分析的时候,报告里写的还是"平均值、最大值、最小值"这三件套。

数据越存越多,洞察原地踏步。

原因不复杂。传统时序分析门槛太高:要么靠老师傅拍脑袋定阈值,温度超过 80℃ 就报警;要么请数据团队做特征工程、训模型、调参,一个场景一套模型,周期按周算。等设备真出了问题,分析结果还没出来。

最近我上手试了天谋科技的时序大模型平台 TimechoAI,它把预训练时序大模型封装成开箱即用的云服务。这篇记录我的实测过程,看看它能不能把时序分析的门槛真正降下来。

在这里插入图片描述

一、TimechoAI 是什么:给时序数据请了个"老师傅"

先一句话解释。

TimechoAI 是把 Timer 系列时序大模型做成云服务的平台。Timer 来自清华大学软件学院 THUML 团队,是国内外有代表性的时序大模型系列。

它和我们平时聊的语言大模型不一样。语言大模型读的是文字,时序大模型读的是数值曲线,专门在海量时序数据上预训练,能看懂一条曲线背后的周期、趋势和突变。

打个比方,它就像给设备请了个经验丰富的老师傅。你给它一段历史数据,它看一眼就能说出个大概:接下来大概率怎么走,哪里不太对劲,缺了的数据该怎么补。而且不用你从头教它,零样本就能干活。

对使用者来说,最大的好处是不用懂 Transformer,不用搭训练环境。上传数据、点运行、看结果,三步搞定。

二、零代码上手:Web 控制台实测

2.1 三种喂数据的方式

打开 https://ai.timecho.com/ 新建会话,提供数据的方式有三种:

  1. 直接在页面上手绘一条曲线
  2. 手动录入数据点
  3. 上传 CSV 或 TsFile 文件

第三种对已经在用时序数据库的朋友很友好。TsFile 是 Apache IoTDB 的原生文件格式,库里存的数据直接导出上传就行,不用折腾格式转换。

CSV 的格式很简单,两列就够——时间戳加数值:

import pandas as pd

# 从官方示例数据集读取
raw_df = pd.read_csv("https://ai.timecho.com/data/sample.csv")
print(raw_df.head())
#    time  target
# 0  ...   120.0
# 1  ...   135.0
# 2  ...   142.0

2.2 没数据也能玩:内置示例任务

手头没现成数据也不用慌。平台内置了一批示例任务和数据集:电力变压器油温、交通流量、风机塔受力,还有空气质量、汇率、耶拿气候这些公开数据集。

我选了"电力变压器油温预测"这个示例。1312 条小时级油温数据加载进来,点运行,预测曲线就出来了。历史曲线是实线,往后延伸的虚线就是模型给出的预测结果,还带置信区间。

在这里插入图片描述

预测范围可以自定义,1 到 720 步都行。预测模式有三种:

预测模式 适用场景 大白话解释
纯目标变量 只有一列历史数据 只看油温本身预测油温
历史协变量 有影响因素的历史数据 把温度湿度这些"场外因素"也告诉模型
未来协变量 影响因素的未来值已知 比如已知明天高温,预测明天负荷更准

以电力负荷预测为例,温度、湿度、节假日都会显著影响负荷走势,把这些协变量一起交给模型,结果会明显更贴近真实业务。

2.3 应用示例:实时预测效果直接看

平台还有个"应用示例"页,内置了基于真实数据源的实时预测应用。我试的时候看到的是北京、广州的实时天气和空气质量预测,数据来自 Open-Meteo,每 15 分钟更新一次。历史曲线后面直接跟着模型的预测虚线,效果很直观。

三、模型广场:不确定选哪个就开 Auto

模型广场默认搭载最新一代 Timer-3.5,面向零样本单变量分位数预测的十亿级 MoE 基础模型。除此之外还有几个选择:

模型 特点
Timer-3.5 默认主力,零样本分位数预测
Timer-3.0 生成式基础模型
Chronos-2 Amazon 的通用零样本预测模型
AutoARIMA 经典统计方法
Holt-Winters 经典统计方法

不知道选哪个的时候,直接开 Auto 模式,它会根据数据特征自动匹配模型。对新手来说,这个入口很省心。
在这里插入图片描述

四、不只会预测:异常检测和缺失填补

预测之外,平台还有两个很实用的时序分析能力。

**智能异常检测。**传统做法是定固定阈值,超过就报警。问题是设备劣化往往是渐进的,等数值真超过阈值,可能已经晚了。TimechoAI 基于数据分布识别非正常波动,能更早捕捉到"看着正常但其实不对劲"的状态,适合设备预警场景。

**缺失值补全。**传感器断连、数据丢点太常见了。模型能根据上下文合理推断断点处的数据,把序列补完整,做数据治理的时候能省不少事。

这两类能力同样能通过 SDK 调用(接口名以官方文档为准):

# 异常检测与缺失填补 —— 伪代码示意,方法名以官方文档为准
# 完整接口见 https://ai.timecho.com/docs

# 返回每个时间点是否为异常
anomaly_result = client.detect_anomalies(targets=target_df)

# 返回补全后的完整序列
imputed_df = client.impute_missing(targets=target_df)

五、集成进业务系统:REST API 和 Python SDK

零代码适合探索和验证,真要进生产环境,还是得走接口。

在平台申请 API Key 之后,可以用标准 RESTful API 或官方 Python SDK 调用预测能力。Java、Go、C# 这些语言都能对接,嵌进现有的运维系统、告警系统都不麻烦。官方文档给的指标是单次推理平均不到 100ms,做实时预测也够用。

REST 调用是最直接的方式,一个 POST 就够:

curl -s -X POST https://ai.timecho.com/ai/api/v1/forecast \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <API-Key>" \
  -d '{
    "targets": [{
      "columns": ["value"],
      "data": [[120],[135],[142],[168],[195],[220],[285],[310],[345],[380],[420],[468],[125],[140],[155],[180],[210],[245],[295],[325],[360],[395],[440],[485]]
    }],
    "output_length": [5]
  }'

Python 这边有官方 SDK,包名叫 timecho_ai,核心就一个 forecast 方法:

import pandas as pd
from timecho_ai import TimechoAIClient

# 读取示例数据
raw_df = pd.read_csv("https://ai.timecho.com/data/sample.csv")

# 任务定义:输入 16 个点,预测 8 个点
INPUT_LENGTH = 16
OUTPUT_LENGTH = 8

# 创建客户端,换成你自己的 API Key
client = TimechoAIClient(api_key="your_timecho-ai_api_key")

# 取前 16 个点作为上下文
target_df = raw_df[["time", "target"]][:INPUT_LENGTH]

# 预测 target 未来 8 个点
forecast_dfs = client.forecast(
    targets=target_df,
    output_length=OUTPUT_LENGTH
)
print(forecast_dfs)

整体流程就三步:注册拿 Key、把数据 POST 上去、拿预测结果回写业务系统。

六、配合 TimechoDB:DB + AI 的完整闭环

这块值得单独说,也是我觉得整套方案里最有巧思的部分。

天谋科技的企业版产品 TimechoDB,是 Apache IoTDB 的企业发行版,支持单节点每秒千万级写入、毫秒级查询,专有压缩算法能把存储成本压掉 90% 以上,已经在国家电网、中车四方、长安汽车、宝武钢铁这些企业的生产系统里跑着。

因为底层用的是同一套 TsFile 格式,TimechoDB 里的数据可以无缝流进 TimechoAI 做分析,预测结果还能回写数据库。"采集、存储、分析、预测"一条链路打通,不用在数据库和 AI 平台之间另外维护一套 ETL 流程。用过的都知道,ETL 这块的脏活累活有多烦人。
在这里插入图片描述

回写这一步,用 IoTDB 官方 Python 客户端就能接上:

from iotdb.Session import Session

# 连接 TimechoDB(IoTDB 企业版)
session = Session(ip="127.0.0.1", port="6667", username="root", password="root")
session.open()

# 把 TimechoAI 返回的预测结果逐条写回时序库
for ts, row in forecast_dfs.iterrows():
    session.insert_record(
        "root.factory.turbine",
        ts,
        ["oil_temp_forecast"],
        [row["target"]]
    )

session.close()

七、避坑提醒:四条实操建议

结合平台文档和我的试用体验,给准备上手的朋友几个提醒:

  1. **数据量别太抠。**零样本不等于零数据,历史序列太短模型发挥不出来,上下文尽量给够(输入上限 2880 个点)。
  2. **协变量时间要对齐。**温度湿度这些辅助变量和目标变量的时间戳没对齐,预测结果会偏。
  3. **预测步长别贪长。**720 步是上限,不是推荐值,预测越远精度越打折,按需来。
  4. **别忽视置信区间。**区间变宽说明不确定性在变大,做决策时这个信息比单点数值更有参考价值。

八、适合谁

从我的体验来看,三类朋友可以重点关注:

  • 做设备运维的:对振动、温度测点做异常检测和趋势预测,把事后维修变成事前预警
  • 做能源电力的:应对新能源波动下的负荷预测,协变量模式很对口
  • 做数据分析的:产量预测、流量预测、行情分析,不用自己训模型就能出结果

结尾

时序数据的价值,存只是第一步,用起来才是关键。

TimechoAI 给我的感觉是,它把时序大模型的使用门槛降到了"上传数据、点击运行"的程度,同时留着 API 和 SDK 的深度集成空间,配合 TimechoDB 还能凑成完整的 DB + AI 方案。感兴趣的话直接上手试:

  • 企业版官方链接:https://timecho.com
  • 时序大模型 TimechoAI:https://ai.timecho.com/

在这里插入图片描述

Logo

一站式 AI 云服务平台

更多推荐