|驱动固件|24.1.RC3| |CANN版本|8.3.RC1| |python版本|3.10.19| |torch版本|2.1.0| |torch_npu版本|2.1.0| |Transformers版本|4.40.1|
TimerXL.py: 运行脚本ETTh2.csv: 数据集
提前下载
HuggingFace模型权重下载路径:https://huggingface.co/thuml/timer-base-84m/tree/maindevice = torch.device('npu:7') :将模型放到那张卡上跑model = model.to(device)TimerXL.py
import torch_npu# 旧代码
model = AutoModelForCausalLM.from_pretrained('thuml/timer-base-84m', trust_remote_code=True)
# 新代码
model = AutoModelForCausalLM.from_pretrained(
'/root/TimerXL/thumltimer-base-84m', #更换到本地路径
trust_remote_code=True
)# 旧代码
df = pd.read_csv(
"https://raw.githubusercontent.com/WenWeiTHU/TimeSeriesDatasets/main/ETT-small/ETTh2.csv"
)
# 新代码(适配后)
df = pd.read_csv(
"/root/TimerXL/ETTh2.csv" #更换为本地数据集路径
)# 旧代码
seqs = torch.tensor(df["OT"][:lookback_length]).unsqueeze(0).float()
# 新代码(适配后)
seqs = torch.tensor(df["OT"][:lookback_length]).unsqueeze(0).float()
seqs = seqs.to(device):数据移动到npu中# 旧代码
output = model.generate(seqs, max_new_tokens=prediction_length)
# 新代码(适配后)
with torch.no_grad(): #节省内存和加速
output = model.generate(seqs, max_new_tokens=prediction_length)打开 ETTh2.csv ,按需求复制文档中的数据url进行手动下载(需要科学上网),本指南以 https://raw.githubusercontent.com/WenWeiTHU/TimeSeriesDatasets/main/ETT-small/ETTh2.csv 为例。
下载完成后,解压缩,将数据中的文件夹拷贝到 /home/xxx/TimerXL 路径下。以下以 ETTh2.csv 为例。
参考https://github.com/thuml/Timer-XL,提供模型适配相关材料
python /home/xxx/TimerXL/TimerXL.py若执行输出预测结果表示成功,则其他任务可参考以上方法修改对应的文件以达到目标。
根据不同任务,修改的主要文件是: 启动脚本 .py 文件。查看https://github.com/thuml/Timer-XL可了解更多关于时序模型的信息。
如果硬件环境只有一张卡,则在 .py 中,要在device = torch.device('npu:7')中指定对应卡名.