Giter Club home page Giter Club logo

timesfm's Introduction

TimesFM

TimesFM (Time Series Foundation Model) is a pretrained time-series foundation model developed by Google Research for time-series forecasting.

This repo contains the code to load public TimesFM checkpoints and run model inference. Please visit our Hugging Face checkpoint repo to download model checkpoints.

This is not an officially supported Google product.

Checkpoint timesfm-1.0-200m

timesfm-1.0-200m is the first open model checkpoint:

  • It performs univariate time series forecasting for context lengths up to 512 timepoints and any horizon lengths, with an optional frequency indicator.
  • It focuses on point forecasts, and does not support probabilistic forecasts. We experimentally offer quantile heads but they have not been calibrated after pretraining.
  • It requires the context to be contiguous (i.e. no "holes"), and the context and the horizon to be of the same frequency.

Benchmarks

Please refer to our result tables on the extended benchmarks and the long horizon benchmarks.

Please look into the README files in the respective benchmark directories within experiments/ for instructions for running TimesFM on the respective benchmarks.

Installation

We recommend at least 16GB RAM to load TimesFM dependencies.

For calling TimesFM, We have two environment files. Inside timesfm, for GPU installation (assuming CUDA 12 has been setup), you can create a conda environment tfm_env from the base folder through:

conda env create --file=environment.yml

For a CPU setup please use,

conda env create --file=environment_cpu.yml

to create the environment instead.

Follow by

conda activate tfm_env
pip install -e .

to install the package.

Note:

  1. Running the provided benchmarks would require additional dependencies. Please use the environment files under experiments instead.

  2. The dependency lingvo does not support ARM architectures, and the code is not working for machines with Apple silicon. We are aware of this issue and are working on a solution. Stay tuned.

Usage

Initialize the model and load a checkpoint.

Then the base class can be loaded as,

import timesfm

tfm = timesfm.TimesFm(
    context_len=<context>,
    horizon_len=<horizon>,
    input_patch_len=32,
    output_patch_len=128,
    num_layers=20,
    model_dims=1280,
    backend=<backend>,
)
tfm.load_from_checkpoint(repo_id="google/timesfm-1.0-200m")

Note that the four parameters are fixed to load the 200m model

input_patch_len=32,
output_patch_len=128,
num_layers=20,
model_dims=1280,
  1. The context_len here can be set as the max context length of the model. It needs to be a multiplier of input_patch_len, i.e. a multiplier of 32. You can provide a shorter series to the tfm.forecast() function and the model will handle it. Currently, the model handles a max context length of 512, which can be increased in later releases. The input time series can have any context length. Padding / truncation will be handled by the inference code if needed.

  2. The horizon length can be set to anything. We recommend setting it to the largest horizon length you would need in the forecasting tasks for your application. We generally recommend horizon length <= context length but it is not a requirement in the function call.

  3. backend is one of "cpu", "gpu" or "tpu", case sensitive.

Perform inference

We provide APIs to forecast from either array inputs or pandas dataframe. Both forecast methods expect (1) the input time series contexts, (2) along with their frequencies. Please look at the documentation of the functions tfm.forecast() and tfm.forecast_on_df() for detailed instructions.

In particular regarding the frequency, TimesFM expects a categorical indicator valued in {0, 1, 2}:

  • 0 (default): high frequency, long horizon time series. We recommend using this for time series up to daily granularity.
  • 1: medium frequency time series. We recommend using this for weekly and monthly data.
  • 2: low frequency, short horizon time series. We recommend using this for anything beyond monthly, e.g. quarterly or yearly.

This categorical value should be directly provided with the array inputs. For dataframe inputs, we convert the conventional letter coding of frequencies to our expected categories, that

  • 0: T, MIN, H, D, B, U
  • 1: W, M
  • 2: Q, Y

Notice you do NOT have to strictly follow our recommendation here. Although this is our setup during model training and we expect it to offer the best forecast result, you can also view the frequency input as a free parameter and modify it per your specific use case.

Examples:

Array inputs, with the frequencies set to low, medium and high respectively.

import numpy as np
forecast_input = [
    np.sin(np.linspace(0, 20, 100)),
    np.sin(np.linspace(0, 20, 200)),
    np.sin(np.linspace(0, 20, 400)),
]
frequency_input = [0, 1, 2]

point_forecast, experimental_quantile_forecast = tfm.forecast(
    forecast_input,
    freq=frequency_input,
)

pandas dataframe, with the frequency set to "M" monthly.

import pandas as pd

# e.g. input_df is
#       unique_id  ds          y
# 0     T1         1975-12-31  697458.0
# 1     T1         1976-01-31  1187650.0
# 2     T1         1976-02-29  1069690.0
# 3     T1         1976-03-31  1078430.0
# 4     T1         1976-04-30  1059910.0
# ...   ...        ...         ...
# 8175  T99        1986-01-31  602.0
# 8176  T99        1986-02-28  684.0
# 8177  T99        1986-03-31  818.0
# 8178  T99        1986-04-30  836.0
# 8179  T99        1986-05-31  878.0

forecast_df = tfm.forecast_on_df(
    inputs=input_df,
    freq="M",  # monthly
    value_name="y",
    num_jobs=-1,
)```

timesfm's People

Contributors

rajatsen91 avatar siriuz42 avatar kashif avatar sarthak405 avatar sitic avatar zgeor avatar

Stargazers

Ashutosh Titoria avatar Viktor Medvedev avatar  avatar João Mesquita avatar  avatar GanymedeNil avatar  avatar  avatar  avatar  avatar  avatar  avatar li-ronghui avatar hshang avatar alexgo avatar  avatar  avatar  avatar  avatar allen.hu avatar hiyyg avatar 16-bit cat avatar David González Romero avatar Oleslav Antamoshkin avatar victor avatar guoozy avatar Vidura Sumanasena avatar Tay Jun Jie avatar Alphonse Lin avatar Bismarck Liu avatar Hideyuki Doi avatar  avatar Taehwan Kwag avatar  avatar  avatar  avatar Moyo avatar  avatar Dongfei Cui avatar  avatar  avatar Shunsuke Tsuchiya avatar Runze Yan avatar Yunbo Wang avatar  avatar Serdar avatar NING SHAO avatar Alvin Kimata avatar wrmsr avatar  avatar  avatar  avatar  avatar  avatar zijian zhu avatar  avatar  avatar Thomas avatar  avatar Joowhan Song avatar Williampunk avatar LZ1 avatar Fangrui Wu avatar  avatar Defu Cao avatar Yaser Alraddadi avatar Vincent Koc avatar  avatar flyer avatar Wen Jiang avatar  avatar Javad Razi avatar pluto avatar Jeffrey Hu avatar Ivan A avatar 汪商炯 avatar 乔乔 avatar Xinyun Wang avatar Rei avatar Taylor Fore avatar lekai avatar  avatar  avatar littlepaddy avatar  avatar Anbc avatar Ethan avatar Omid Gholami avatar  avatar  avatar LT_lrsoft avatar  avatar  avatar Mingjia Huo avatar  avatar Carl Chang avatar guozhang chan avatar Ripper avatar zhtsh avatar Josephbkt avatar

Watchers

Todsaporn Banjerdkit avatar Mike avatar  avatar  avatar Francisco Marco-Serrano avatar Salvatore Rossitto avatar Baolin avatar  avatar Jiang Huajun avatar  avatar Jim Steele avatar  avatar  avatar  avatar Chidubem Iddianozie avatar  avatar  avatar  avatar  avatar  avatar

timesfm's Issues

BTC price forecasting

Not issue. Just share my results, to save your time.
This lib does not suit for stock forecasting or something like that, but I tried 2fun 😈
I found out it good forecasting cyclic moving, but that's all.
I experimented all day, changing all possible parameters.
A results differs not enough from random to be useful.
Some typical pictures below.

SOME PICTURES

Red line have minimum difference 1st predicted point and last input point. Green is mean_outputs)

2024-06-22_18-49
2024-06-22_18-20
2024-06-22_18-25
2024-06-22_18-27
2024-06-22_18-29
2024-06-22_18-30

The training code

Will you release the training code? That would be great if you will.

`import timesfm` failed

import timesfm
Throw an error

RuntimeError: jaxlib version 0.4.28 is newer than and incompatible with jax version 0.4.26. Please update your jax and[/or](https://noam-jl.nioint.com/or) jaxlib packages.

The problem of making predictions with multiple input features

I have been able to predict the result through single input, such as stock data, and forecast the following data through input of the closing price of the stock. Such prediction effect is not good, so I want to use more characteristic data to predict the closing price, such as trading volume, opening price and so on. However, I also encountered the problem of input dimension, the data input shape was (512,) (my 'context_len' set 512); With multiple inputs, the data input shape is (512, 5) (I used 5 features), and the following error occurs:

ValueError: Input shape must have rank matching LHS. LHS expects rank 2 but actual input has rank 3

So how do I solve this problem?

Problem installing requirement.yml

When I try to install the requirement.yml I get this error:

INFO: pip is looking at multiple versions of jax[cuda12] to determine which version is compatible with other requiremen.

Pip subprocess error:
ERROR: Ignored the following versions that require a different python version: 1.6.2 Requires-Python >=3.7,<3.10; 1.6.30
ERROR: Could not find a version that satisfies the requirement jax-cuda12-plugin==0.4.26; extra == "cuda12" (from jax[c)
ERROR: No matching distribution found for jax-cuda12-plugin==0.4.26; extra == "cuda12"

My CUDA 12.1 has been setup, so I can't understand the error. I've tried to change for jax[cuda12] but then I get another error:

The conflict is caused by:
praxis 1.4.0 depends on lingvo==0.12.7
praxis 1.3.1 depends on lingvo
praxis 1.3.0 depends on lingvo
praxis 1.2.0 depends on lingvo
praxis 1.1.0 depends on lingvo==0.12.7
praxis 1.0.0 depends on jaxlib==0.4.7
praxis 0.4.0 depends on lingvo
praxis 0.3.0 depends on lingvo
praxis 0.2.1 depends on lingvo
praxis 0.2.0 depends on lingvo
praxis 0.1 depends on lingvo

Installation Failed: conda env create --file=environment_cpu.yml

Pip failed on Centos7 when creating cpu version. Looks like conficting dependencies about jax version.

(base) [root@localhost timesfm]# conda env create --file=environment_cpu.yml
Collecting package metadata (repodata.json): done
Solving environment: done

Downloading and Extracting Packages

Preparing transaction: done
Verifying transaction: done
Executing transaction: done
Installing pip dependencies: \ Ran pip subprocess with arguments:
['/opt/anaconda310/envs/tfm_env/bin/python', '-m', 'pip', 'install', '-U', '-r', '/root/timesfm/condaenv.je05r6k8.requirements.txt', '--exists-action=b']
Pip subprocess output:
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting utilsforecast (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 2))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/25/67/af4b349a4e3c057a456caf3a583cd374a1239780c77c76d929d2f67add0f/utilsforecast-0.1.10-py3-none-any.whl (40 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ae/b2/23f3d8ac48ed91abbbbfa9b479e0d4f3c70848066632983a3b125ce64925/praxis-1.4.0-py3-none-any.whl (772 kB)
Collecting paxml (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/21/ec/817b8148fb56cdc4b0ff179ea9af3ff48c0e9f282a9af5521f5f81411d0a/paxml-1.4.0-py3-none-any.whl (440 kB)
Collecting jax==0.4.26 (from jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (1.9 MB)
Collecting einshape (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 6))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/71/bb/34cc02f13b438d550e4709216ee1df9da8e55e15b0cc87a2cb5dee19a729/einshape-1.0-py3-none-any.whl (21 kB)
Collecting huggingface_hub[cli] (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/92/27/1a30d8082ef3c8615ae198b9d451fafffdab815b96727ec3c06befc27ebe/huggingface_hub-0.23.1-py3-none-any.whl (401 kB)
Collecting ml-dtypes>=0.2.0 (from jax==0.4.26->jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/9d/15/e5af59287e712b26ce776f00911c45c97ac9f4cd82d46500602cc94127ed/ml_dtypes-0.4.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.2 MB)
Collecting numpy>=1.22 (from jax==0.4.26->jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4b/d7/ecf66c1cd12dc28b4040b15ab4d17b773b87fa9d29ca16125de01adb36cd/numpy-1.26.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.2 MB)
Collecting opt-einsum (from jax==0.4.26->jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/bc/19/404708a7e54ad2798907210462fd950c3442ea51acc8790f3da48d2bee8b/opt_einsum-3.3.0-py3-none-any.whl (65 kB)
Collecting scipy>=1.9 (from jax==0.4.26->jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/b9/9d/39dbcf49a793157f9d4f5b8961855677eb4dbb4b82700dcee7042ad2310c/scipy-1.13.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (38.6 MB)
Collecting jaxlib==0.4.26 (from jax[cpu]==0.4.26->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 5))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d2/9e/395ce17fe64fc0e528edbb47ecc3e2369ad0a5cd7b4cf0eea0924c7fe8c6/jaxlib-0.4.26-cp310-cp310-manylinux2014_x86_64.whl (78.8 MB)
Collecting filelock (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/41/24/0b023b6537dfc9bae2c779353998e3e99ac7dfff4222fc6126650e93c3f3/filelock-3.14.0-py3-none-any.whl (12 kB)
Collecting fsspec>=2023.5.0 (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ba/a3/16e9fe32187e9c8bc7f9b7bcd9728529faa725231a0c96f2f98714ff2fc5/fsspec-2024.5.0-py3-none-any.whl (316 kB)
Requirement already satisfied: packaging>=20.9 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (24.0)
Requirement already satisfied: pyyaml>=5.1 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (6.0.1)
Requirement already satisfied: requests in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (2.32.1)
Collecting tqdm>=4.42.1 (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/18/eb/fdb7eb9e48b7b02554e1664afd3bd3f117f6b6d6c5881438a0b055554f9b/tqdm-4.66.4-py3-none-any.whl (78 kB)
Requirement already satisfied: typing-extensions>=3.7.4.3 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (4.11.0)
Collecting InquirerPy==0.3.4 (from huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ce/ff/3b59672c47c6284e8005b42e84ceba13864aa0f39f067c973d1af02f5d91/InquirerPy-0.3.4-py3-none-any.whl (67 kB)
Collecting pfzy<0.4.0,>=0.3.1 (from InquirerPy==0.3.4->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/8c/d7/8ff98376b1acc4503253b685ea09981697385ce344d4e3935c2af49e044d/pfzy-0.3.4-py3-none-any.whl (8.5 kB)
Requirement already satisfied: prompt-toolkit<4.0.0,>=3.0.1 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from InquirerPy==0.3.4->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (3.0.42)
Collecting pandas>=1.1.1 (from utilsforecast->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 2))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/89/1b/12521efcbc6058e2673583bb096c2b5046a9df39bd73eca392c1efed24e5/pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.0 MB)
Collecting absl-py==1.4.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/dd/87/de5c32fa1b1c6c3305d576e299801d8655c175ca9557019906247b994331/absl_py-1.4.0-py3-none-any.whl (126 kB)
Collecting chex>=0.1.85 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/e6/ed/625d545d08c6e258d2d63a93a0bf8ed8a296c09d254208e73f9d4fb0b746/chex-0.1.86-py3-none-any.whl (98 kB)
Collecting clu==0.0.11 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/9f/e8/5eaabe29899ff70deec7cbaa9b46e32f19d1cf37182b53ccbef0e8fa0718/clu-0.0.11-py3-none-any.whl (101 kB)
Collecting einops==0.7.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/29/0b/2d1c0ebfd092e25935b86509a9a817159212d82aa43d7fb07eca4eeff2c2/einops-0.7.0-py3-none-any.whl (44 kB)
Collecting etils==1.7.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/37/10/dd5b124f037a636783e416a2fe839edd7ec63c0dce7ce4f3c1da029aeb80/etils-1.7.0-py3-none-any.whl (152 kB)
Collecting fiddle==0.3.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/3b/98/a38e949a91ff9e15874487fd8329ff53c25f3413c0cfc809eb6ff7eb7fa1/fiddle-0.3.0-py3-none-any.whl (419 kB)
Collecting flax==0.8.2 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/b9/92/59b0a2b5df281206433fa6496b176e95249eb0a8192586f88309d7d5df27/flax-0.8.2-py3-none-any.whl (686 kB)
Collecting jax-bitempered-loss==0.0.2 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a3/01/0da045844722971066d9d53a9b2e31786cf5048e3b2707fd774566e5ece9/jax_bitempered_loss-0.0.2-py3-none-any.whl (12 kB)
Collecting jaxtyping==0.2.28 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/9a/0c/8055b6e60e6b2795c1cee6058287c39f168466e5937d6437b58b6c7e77f7/jaxtyping-0.2.28-py3-none-any.whl (40 kB)
Collecting lingvo==0.12.7 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/bb/4d/c317d15abc48f3a288c3aaf95d9966a178149e5ff5af3a4d3467ec8e1c3c/lingvo-0.12.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (18.0 MB)
Collecting optax-shampoo==0.0.6 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/80/3b/6609f0b3a98527a7fe2c2b4b48944b455ab65a3c9223e86d3cd5cf823a5e/optax_shampoo-0.0.6-py3-none-any.whl (32 kB)
Collecting optax==0.2.2 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/16/04/74ec9cf76c9e3d222251ac38de67404a41b3b673d9227611c9f5aecccb18/optax-0.2.2-py3-none-any.whl (223 kB)
Collecting sentencepiece==0.1.99 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7f/e5/323dc813b3e1339305f888d035e2f3725084fc4dcf051995b366dd26cc90/sentencepiece-0.1.99-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)
Collecting tensorflow-datasets==4.8.3 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/70/d9/1deca2b3feb31b27d54755607e22746c0b09807900b878d7ea44cb5c02d9/tensorflow_datasets-4.8.3-py3-none-any.whl (5.4 MB)
Collecting tensorflow-metadata==1.12.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7e/cb/1a1dd9e8495d3932c056120127d18695bca50c2f754013b6bf0d51557c47/tensorflow_metadata-1.12.0-py3-none-any.whl (52 kB)
Collecting tensorflow-text~=2.9.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/16/71/706cc8cdce44b96ceb8452382e0537bee9e94ea49bdcebd00e6878e4afc3/tensorflow_text-2.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.6 MB)
Collecting tensorflow~=2.9.2 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/47/be/71409bd5a941c89e1ae993eeaa8393ead2b65a79ae99a6573023ae839053/tensorflow-2.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (511.8 MB)
INFO: pip is looking at multiple versions of praxis to determine which version is compatible with other requirements. This could take a while.
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/6d/f7/f1935875b3ae67214c4512043e35807c2d398b9bea332f131f2bc132630a/praxis-1.3.1-py3-none-any.whl (761 kB)
Collecting absl-py (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a2/ad/e0d3c824784ff121c03cc031f944bc7e139a8f1870ffd2845cc2dd76f6c4/absl_py-2.1.0-py3-none-any.whl (133 kB)
Collecting einops (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/44/5a/f0b9ad6c0a9017e62d4735daaeb11ba3b6c009d69a26141b258cd37b5588/einops-0.8.0-py3-none-any.whl (43 kB)
Collecting fiddle==0.2.11 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/f7/7d/5e867a4ef4702c4304ae0087290541cb7a6021a3b430e629e2639d08ab22/fiddle-0.2.11-py3-none-any.whl (396 kB)
Collecting flax==0.8.1 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/8d/4a/7e78abc8392ff21b0257deb79e842f80647b63b745447df94893732d60fd/flax-0.8.1-py3-none-any.whl (677 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/fc/ea/f852b24a387648527ae7d361b860f0f7899c6c0ce52c7757f8a5bdc7f438/praxis-1.3.0-py3-none-any.whl (760 kB)
Collecting chex==0.1.85 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/9a/82/257141baabfaf8b0187521ddb83e996f2a71cdd4f7796d9599ca3e3ea4a9/chex-0.1.85-py3-none-any.whl (95 kB)
Collecting clu (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/08/04/8651aacf8a55b1cd46f620e629c6c1658181dacb684b5a09aadda32ff11d/clu-0.0.12-py3-none-any.whl (101 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/39/91/ccd8bfb5e8e542c69c6c3e4f7c617da921997bd533228b5bd79b63e193fe/praxis-1.2.0-py3-none-any.whl (711 kB)
Collecting flax (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/83/86/1555e6217f062bd3c09d46e529ca2bbd6a2a1cfa6166662a49b8fbc2f6be/flax-0.8.3-py3-none-any.whl (685 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7b/6b/0b8359c42aa6847d23d9ef139e31663d0bca3f71b99d3e30e67614f25815/praxis-1.1.0-1-py3-none-any.whl (692 kB)
Collecting clu==0.0.9 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/84/c7/0057f7ed8f813306a532cef5a1bd0c881a74c60a5cdf2ca4bd0436dfc502/clu-0.0.9-py3-none-any.whl (98 kB)
Collecting einops==0.6.1 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/68/24/b05452c986e8eff11f47e123a40798ae693f2fa1ed2f9546094997d2f6be/einops-0.6.1-py3-none-any.whl (42 kB)
Collecting etils==1.4.1 (from etils[enp,epath,epy]==1.4.1->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4a/6a/d58ec120f5e4babbf5001c144266ba623dcdae8e81dc6cdb422a98d0e0ce/etils-1.4.1-py3-none-any.whl (135 kB)
Collecting flax==0.7.2 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/72/a7/147bd0682ff39a4e59352506a7d858e1e003f05a2d96e431fabb8a5491e4/flax-0.7.2-py3-none-any.whl (226 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1b/cf/680f9274c0cc9466cb8746579f4e79b450ae637855a78c244b8118060736/praxis-1.0.0-2-py3-none-any.whl (595 kB)
Collecting clu==0.0.8 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/6a/76/6b5ed34981cbd25634bc34ad4d2bd74fe43e9c857994726c352c6cb901d9/clu-0.0.8-py3-none-any.whl (96 kB)
Collecting einops==0.6.0 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4b/f7/8557c683501eb14462b60e32d21fc51317ab2ba39688db1b8b7cebe1a274/einops-0.6.0-py3-none-any.whl (41 kB)
Collecting fiddle==0.2.6 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/42/7b/e77f3840f970c92e903aef10187abb0dc108a293516527fa86d6b0dd853d/fiddle-0.2.6-py3-none-any.whl (338 kB)
Collecting flax==0.6.8 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/c9/8f/843602fce11aec76bb28f310f6ec7fd696b7d9ef21b11bd624dd9a654278/flax-0.6.8-py3-none-any.whl (216 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/48/2b/71addcd087b029a50170aa739f526117bd0abfac5971c059ab044ce323b3/praxis-0.4.0-py3-none-any.whl (595 kB)
Collecting lingvo (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a3/76/e2c4e7d70eafb4695d6402344a8bd47a0b39e88e4cfe78e5c96d13d594f9/lingvo-0.13.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (9.8 MB)
Collecting graphviz==0.20.1 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/de/5e/fcbb22c68208d39edff467809d06c9d81d7d27426460ebc598e55130c1aa/graphviz-0.20.1-py3-none-any.whl (47 kB)
Collecting orbax-checkpoint==0.5.9 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/0f/c0/124c09fcf09d134bfa92ee28f70b3dab97d12a3b527c4789fcbf9729d853/orbax_checkpoint-0.5.9-py3-none-any.whl (168 kB)
Collecting protobuf==3.19.6 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/26/ef/bd6ba3b4ff9a35944bdd325e2c9ee56f71e855757f7d43938232499f0278/protobuf-3.19.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)
Collecting pyglove==0.4.4 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/0e/bd/6e5db8f7ed2f7547d4133f1e10448dabf14e6f1816839c70189f1f2419a9/pyglove-0.4.4-py3-none-any.whl (577 kB)
INFO: pip is looking at multiple versions of paxml to determine which version is compatible with other requirements. This could take a while.
Collecting paxml (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/2a/dd/0672e937e63a1db95dc1ae548f715601cca6ecab93a0b24d8e5c0180d853/paxml-1.3.1-py3-none-any.whl (430 kB)
Collecting graphviz (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/00/be/d59db2d1d52697c6adc9eacaf50e8965b6345cc143f671e1ed068818d5cf/graphviz-0.20.3-py3-none-any.whl (47 kB)
Collecting orbax-checkpoint (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/c2/7f/22962db60e8e2765c310a64c1b5df766850a62b1573870703527e1499ed1/orbax_checkpoint-0.5.11-py3-none-any.whl (203 kB)
Collecting paxml (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7e/b5/a2bd2cf38626f26f9da08dfd0c75851950df9f07c990d3106876cbeac452/paxml-1.3.0-py3-none-any.whl (429 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/62/95/26fec0d7a3af94310d7a70bbd41297ed98131f533f54c90a3fbc2bd9d754/paxml-1.2.0-py3-none-any.whl (418 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/2a/6a/d2be1c4c7ba3a258bf8d2a5749ead4cbae5b482fda03f4ff0af225482959/paxml-1.1.0-py3-none-any.whl (415 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d4/78/709f856eb80c300ccd97ab006b57d3535f3068407dfc17f14da20b21692f/paxml-1.0.0-2-py3-none-any.whl (289 kB)
Collecting etils==1.1.1 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7f/a9/c141aef287daeb58a12b7ea261452bb47a2e1e6f6014b5a6b09388266223/etils-1.1.1-py3-none-any.whl (115 kB)
Collecting paxml (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a6/2e/df2240d0edd30285a45210843c3d49eef6ed193fabbd5a35535cc46dca30/paxml-0.4.0-1-py3-none-any.whl (289 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d7/84/9e7a11a2579b53e8c366c02a324b4edfc6e89829ace1a297ef60e6e587c6/paxml-0.3.0-py3-none-any.whl (263 kB)
Collecting orbax (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/c7/78/0e144f12703c95d4495e9abc390c2f548ee9f24d2e487137108a921b1d81/orbax-0.1.9.tar.gz (1.6 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting protobuf==3.19.5 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1e/74/c824fcf7972d1b2a2934313ce3018a550aa287de26b8d4e2dfb1617f098b/protobuf-3.19.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB)
Collecting seqio (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/16/32/875446777bf4c98d74834399d1bbb49c5eb33c81884af519c0ca84b571d9/seqio-0.0.19-py3-none-any.whl (354 kB)
Collecting t5 (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/8f/ea/4efa24fb3706c565c60b2fa2f59a0344df9229db2d014d51e23f1ce03f98/t5-0.9.4-py2.py3-none-any.whl (164 kB)
Collecting tensorstore (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/29/41/a7fe4e274b182ec406dd0e29e861283be9b4acbf50198e0371f8eda2a6e8/tensorstore-0.1.59-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.7 MB)
Requirement already satisfied: python-dateutil>=2.8.2 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from pandas>=1.1.1->utilsforecast->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 2)) (2.9.0)
Requirement already satisfied: pytz>=2020.1 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from pandas>=1.1.1->utilsforecast->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 2)) (2024.1)
Collecting tzdata>=2022.7 (from pandas>=1.1.1->utilsforecast->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 2))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/65/58/f9c9e6be752e9fcb8b6a0ee9fb87e6e7a1f6bcab2cdc73f02bb7ba91ada0/tzdata-2024.1-py2.py3-none-any.whl (345 kB)
Collecting astunparse>=1.6.0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/2b/03/13dde6512ad7b4557eb792fbcf0c653af6076b81e5941d36ec61f7ce6028/astunparse-1.6.3-py2.py3-none-any.whl (12 kB)
Collecting flatbuffers<2,>=1.12 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/eb/26/712e578c5f14e26ae3314c39a1bdc4eb2ec2f4ddc89b708cf8e0a0d20423/flatbuffers-1.12-py2.py3-none-any.whl (15 kB)
Collecting gast<=0.4.0,>=0.2.1 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/b6/48/583c032b79ae5b3daa02225a675aeb673e58d2cb698e78510feceb11958c/gast-0.4.0-py3-none-any.whl (9.8 kB)
Collecting google-pasta>=0.1.1 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a3/de/c648ef6835192e6e2cc03f40b19eeda4382c49b5bafb43d88b931c4c74ac/google_pasta-0.2.0-py3-none-any.whl (57 kB)
Collecting grpcio<2.0,>=1.24.3 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/bf/de/ae73fc754236a4c5663027b4efe3ec240d68fd264b7dc56dcc7f713e016f/grpcio-1.64.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.6 MB)
Collecting h5py>=2.9.0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/94/00/94bf8573e7487b7c37f2b613fc381880d48ec2311f2e859b8a5817deb4df/h5py-3.11.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.3 MB)
Collecting keras<2.10.0,>=2.9.0rc0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ff/ff/f25909606aed26981a8bd6d263f89d64a20ca5e5316e6aafb4c75d9ec8ae/keras-2.9.0-py2.py3-none-any.whl (1.6 MB)
Collecting keras-preprocessing>=1.1.1 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/79/4c/7c3275a01e12ef9368a892926ab932b33bb13d55794881e3573482b378a7/Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB)
Collecting libclang>=13.0.0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1d/fc/716c1e62e512ef1c160e7984a73a5fc7df45166f2ff3f254e71c58076f7c/libclang-18.1.1-py2.py3-none-manylinux2010_x86_64.whl (24.5 MB)
Requirement already satisfied: setuptools in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3)) (69.5.1)
Requirement already satisfied: six>=1.12.0 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3)) (1.16.0)
Collecting tensorboard<2.10,>=2.9 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ee/0d/23812e6ce63b3d87c39bc9fee83e28c499052fa83fddddd7daea21a6d620/tensorboard-2.9.1-py3-none-any.whl (5.8 MB)
Collecting tensorflow-io-gcs-filesystem>=0.23.1 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/00/8d/0ae26214229e314db511b62fc719d5e70d3de46b0d66b94c14df867c6664/tensorflow_io_gcs_filesystem-0.37.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (5.1 MB)
Collecting tensorflow-estimator<2.10.0,>=2.9.0rc0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/61/e1/a72ec68403d91ba433018db58859fd4706642aa9d0fb44ff778934fc4c2c/tensorflow_estimator-2.9.0-py2.py3-none-any.whl (438 kB)
Collecting termcolor>=1.1.0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d9/5f/8c716e47b3a50cbd7c146f45881e11d9414def768b7cd9c5e6650ec2a80a/termcolor-2.4.0-py3-none-any.whl (7.7 kB)
Collecting wrapt>=1.11.0 (from tensorflow~=2.9.2->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/49/83/b40bc1ad04a868b5b5bcec86349f06c1ee1ea7afe51dc3e46131e4f39308/wrapt-1.16.0-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (80 kB)
Collecting tensorflow-hub>=0.8.0 (from tensorflow-text~=2.9.0->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/e5/50/00dba77925bf2a0a1e45d7bcf8a69a1d2534fb4bb277d9010bd148d2235e/tensorflow_hub-0.16.1-py2.py3-none-any.whl (30 kB)
Collecting ml-collections (from clu->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached ml_collections-0.1.1-py3-none-any.whl
Collecting libcst (from fiddle==0.3.0->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/37/00/b80b0c701b73ee6b8ce63bfd5de7129c36c8120ce1eebd5f1fe6e92dce68/libcst-1.3.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.3 MB)
Collecting msgpack (from flax->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d9/96/a1868dd8997d65732476dfc70fef44d046c1b4dbe36ec1481ab744d87775/msgpack-1.0.8-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (385 kB)
Collecting rich>=11.1 (from flax->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/87/67/a37f6214d0e9fe57f6ae54b2956d550ca8365857f42a1ce0392bb21d9410/rich-13.7.1-py3-none-any.whl (240 kB)
Requirement already satisfied: attrs in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3)) (23.2.0)
Collecting apache-beam (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1e/c1/9b660c3ed37f593acec18f1f7957b6c09c4c508eb1a8a8b5ebf2103cdc96/apache_beam-2.56.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (14.5 MB)
Collecting backports.lzma (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/21/0f/1a9990233076d48aa2084100ba289ca162975e73a688f3a56c0ee2bb441a/backports.lzma-0.0.14.tar.gz (47 kB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting graph-compression-google-research (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/95/be/f5191f6f720a978bbed3d2e7a3eac890d9b3228c791d575ee48cb5f9193f/graph_compression_google_research-0.0.4-py3-none-any.whl (90 kB)
Requirement already satisfied: ipykernel in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3)) (6.29.3)
Collecting jupyter-http-over-ws (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/71/b8/d0047d068facc913a354d14c4664b0ba99b8f30f8d66a1800e98549c06ce/jupyter_http_over_ws-0.0.8-py2.py3-none-any.whl (18 kB)
Collecting jupyter (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/83/df/0f5dd132200728a86190397e1ea87cd76244e42d39ec5e88efd25b2abd7e/jupyter-1.0.0-py2.py3-none-any.whl (2.7 kB)
Collecting matplotlib (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a7/68/16e7b9154fae61fb29f0f3450b39b855b89e6d2c598d67302e70f96883af/matplotlib-3.9.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (8.3 MB)
Collecting model-pruning-google-research (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/cc/f2/13380796d3fc07620803685ba29dc984ff0bdd89e7f4d18410382040305d/model_pruning_google_research-0.0.5-py3-none-any.whl (52 kB)
Collecting Pillow~=10.0.0 (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/7a/07/e896b096a77375e78e02ce222ae4fd6014928cd76c691d312060a1645dfa/Pillow-10.0.1-cp310-cp310-manylinux_2_28_x86_64.whl (3.6 MB)
Collecting scikit-learn (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/1e/7d/1a2ea8eb5b4df373c30c7418cf26305a4a05e2a0e56c80a8043b791595f3/scikit_learn-1.5.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (13.3 MB)
Collecting sentencepiece (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/a6/27/33019685023221ca8ed98e8ceb7ae5e166032686fa3662c68f1f1edf334e/sentencepiece-0.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.3 MB)
Collecting sympy (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d2/05/e6600db80270777c4a64238a98d442f0fd07cc8915be2a1c16da7f2b9e74/sympy-1.12-py3-none-any.whl (5.7 MB)
Collecting tensorflow-datasets (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/fe/18/4865973f5469cfe33bbe1cfc2f1918335eb44f4cc3d316c1bce22c1af2bc/tensorflow_datasets-4.9.4-py3-none-any.whl (5.1 MB)
Collecting tensorflow-probability (from lingvo->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/6c/c9/93e9e34703269d5ec3f6a8f49f6748df8737fede8bb1f34165f6ef3d861b/tensorflow_probability-0.24.0-py2.py3-none-any.whl (6.9 MB)
INFO: pip is looking at multiple versions of lingvo to determine which version is compatible with other requirements. This could take a while.
Collecting Pillow (from lingvo==0.12.7->praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/b5/a2/7a09695dc636bf8d0a1b63022f58701177b7dc6fad30f6d6bc343e5473a4/pillow-10.3.0-cp310-cp310-manylinux_2_28_x86_64.whl (4.5 MB)
Collecting docstring-parser>=0.12 (from pyglove==0.4.4->paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d5/7c/e9fcff7623954d86bdc17782036cbf715ecab1bec4847c008557affe1ca8/docstring_parser-0.16-py3-none-any.whl (36 kB)
Requirement already satisfied: charset-normalizer<4,>=2 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from requests->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (3.3.2)
Requirement already satisfied: idna<4,>=2.5 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from requests->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (3.7)
Requirement already satisfied: urllib3<3,>=1.21.1 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from requests->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (2.2.1)
Requirement already satisfied: certifi>=2017.4.17 in /opt/anaconda310/envs/tfm_env/lib/python3.10/site-packages (from requests->huggingface_hub[cli]->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 1)) (2024.2.2)
Collecting editdistance (from seqio->paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/c2/fb/2940d26ebda12efd280ae939436f17ac482930d862df9e774cb8b771ab03/editdistance-0.8.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (401 kB)
INFO: pip is looking at multiple versions of seqio to determine which version is compatible with other requirements. This could take a while.
Collecting seqio (from paxml->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/fc/60/86eb8eaed99866e96f28b0b4dabd84e8d6b961f97d934ab69cdaeceb715b/seqio-0.0.18-py3-none-any.whl (351 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/19/b3/3286d016a35ef3b1b1a9bf8109875231563fd72fee0751710d18ff7148ca/seqio-0.0.17-py3-none-any.whl (351 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/02/c8/5648d410d7ce627f180b2c8ebca13519dd1df4052dfad8c881e0809a094f/seqio-0.0.16-py3-none-any.whl (332 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/00/2c/53bd70f1af2bbb765961085197e610ac040ffb1ec6d29839d5e54bfe12cb/seqio-0.0.15-py3-none-any.whl (325 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4e/e6/a2ca56c1409fe86527e6be27b6d8c2b6fb9dca502b8b0a9dd32df0e64ac9/seqio-0.0.14-py3-none-any.whl (320 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/20/f0/f7097c02e67342bde0e6050dd22483d7fcee678127728750c9c08648ed3c/seqio-0.0.13-py3-none-any.whl (319 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/cb/e7/292a008e1667cff6a36c338eae52b793065e334d81f9556178f01a10b879/seqio-0.0.12-py3-none-any.whl (316 kB)
INFO: pip is still looking at multiple versions of seqio to determine which version is compatible with other requirements. This could take a while.
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/f5/7f/13255278552a6af77ba214307f5ccb086cf263133a82e035c695671be07f/seqio-0.0.11-py3-none-any.whl (314 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/46/c8/3bdf7780e606a45c533a1e7b537d237ed23403cf3ead93e7d22a5f111364/seqio-0.0.10-py3-none-any.whl (311 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/d1/4a/bb724ea908969864c4573dd24b0660fe1a1ca16f04fb5cda7df75110c371/seqio-0.0.9-py3-none-any.whl (306 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/ad/9d/36eb0a7c0406a9bf4a3d1efcc9afe8c1e076c0a3de8f221d8785d861e29b/seqio-0.0.8-py3-none-any.whl (305 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/17/48/1192bff5c2c86f018f92d473652cb34a47adc2caec1757da9bca8bd54572/seqio-0.0.7-py3-none-any.whl (286 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/45/86/c65ca790d79d371e9df1bacfd23d68de82ea2eb9524c0063766869725cde/seqio-0.0.6-py3-none-any.whl (269 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/37/28/0a58b6eae1eaf11cac66969cb231826b8c4a9eef3479cc96ba085361af6d/seqio-0.0.5-py3-none-any.whl (249 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/4b/76/afc6d757e70292e2aa88b6e98dbcf7cb04100daa3ccc8c24da19f5766836/seqio-0.0.4-py3-none-any.whl (106 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/30/21/8161f170208b4da94036aa74c6974caaeca82a9a634e80bf98e1a0cd6e10/seqio-0.0.3-py3-none-any.whl (241 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/13/40/af79ace67cd6fbee07186e0c59685c4dcd2fbb338949b6d8f066989808fd/seqio-0.0.2-py3-none-any.whl (241 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/79/9f/f731e88445f6b46089df8680414d7018d0d66271a56bd28bbb9fb55b86f4/seqio-0.0.1-py3-none-any.whl (98 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/f7/d3/269e942196a4e9c263fa9a7bfce1155116a85fd26b350bca6761ff01e282/seqio-0.0.0-py3-none-any.whl (1.3 kB)
INFO: pip is still looking at multiple versions of paxml to determine which version is compatible with other requirements. This could take a while.
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
Collecting paxml (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 4))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/51/22/7e2d9ef4d360c0e0a42b1df5194381cd8a1febf8bdba148a728a8413cc5a/paxml-0.2.1-py3-none-any.whl (237 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/e0/bd/be2bdf893a70f806ea3e07ae126522663bd37842a5b77bf465ade121fd83/paxml-0.2.0-py3-none-any.whl (215 kB)
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/48/d6/312382294c9f737e7f5f9b4a794a904ae8fd3dffe0330ccdb29834f31cd4/paxml-0.1-py3-none-any.whl (128 kB)
INFO: pip is still looking at multiple versions of praxis to determine which version is compatible with other requirements. This could take a while.
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/e1/f7/6eb03b2dd0a457a9aef61f8d112f240a5af3f5ec20a5e08f3550114818b9/praxis-0.3.0-py3-none-any.whl (538 kB)
INFO: This is taking longer than usual. You might need to provide the dependency resolver with stricter constraints to reduce runtime. See https://pip.pypa.io/warnings/backtracking for guidance. If you want to abort this run, press Ctrl + C.
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/99/f2/ebe2dc2d12016f2d1dba63c795af16cbbbc2bdd7ab6662a8b32ee898dee3/praxis-0.2.1-py3-none-any.whl (486 kB)
Collecting fiddle==0.2.5 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/73/0a/f6098dae8372081fb9a1d14a7d8697c06bf87132213b870cd2f97483690a/fiddle-0.2.5-py3-none-any.whl (262 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/10/63/a6232ce5c74a8fc0ca68d047ffa6aeade4d841b699ddd37fd17a52aa0374/praxis-0.2.0-py3-none-any.whl (482 kB)
Collecting protobuf==3.15 (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/aa/fe/bc869e1ee9d402079d7af42bcbb9da1a492ed811baaef58351257604af66/protobuf-3.15.0-py2.py3-none-any.whl (173 kB)
Collecting praxis (from -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/f1/cf/19b97d076e425ca09ca208e6d58ba6b49e502095502e5359527ab60447d6/praxis-0.1-1-py3-none-any.whl (401 kB)
Collecting fiddle-config (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/c9/26/836b178387babd4355adafbf8450466e2f44064be47215e9759dad2776e5/fiddle_config-0.2.2-py3-none-any.whl (233 kB)
Collecting protobuf (from praxis->-r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3))
  Using cached https://pypi.tuna.tsinghua.edu.cn/packages/2c/2a/d2741cad35fa5f06d9c59dda3274e5727ca11075dfd7de3f69c100efdcad/protobuf-5.26.1-cp37-abi3-manylinux2014_x86_64.whl (302 kB)

The conflict is caused by:
    praxis 1.4.0 depends on tfds-nightly==4.8.3.dev202303280045
    The user requested jax==0.4.26
    jax[cpu] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
    praxis 1.3.1 depends on jax==0.4.24
    The user requested jax==0.4.26
    jax[cpu] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
    praxis 1.3.0 depends on jax==0.4.24
    The user requested jax==0.4.26
    jax[cpu] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
    praxis 1.2.0 depends on jax==0.4.18
    The user requested jax==0.4.26
    jax[cpu] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
    praxis 1.1.0 depends on jax==0.4.14
    The user requested jax==0.4.26
    jax[cpu] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
    praxis 1.0.0 depends on jax==0.4.7
    praxis 0.3.0 depends on t5x
    praxis 0.2.1 depends on t5x
    praxis 0.2.0 depends on t5x
    praxis 0.1 depends on t5x

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict


Pip subprocess error:
ERROR: Cannot install -r /root/timesfm/condaenv.je05r6k8.requirements.txt (line 3), jax==0.4.26 and jax[cpu]==0.4.26 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts
                                                                                                                                      failed

CondaEnvException: Pip failed

Finetuning

Any resources / advises on how to finetune this model on a specific timeseries dataset?

what is the problem about 'train_state_unpadded_shape_dtype_struct'?

Restoring checkpoint from /opt/tfm/timesfm-1.0-200m/checkpoints/.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured CheckpointManager using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume train_state is unpadded.
ERROR:absl:For checkpoint version > 1.0, we require users to provide
train_state_unpadded_shape_dtype_struct during checkpoint
saving/restoring, to avoid potential silent bugs when loading
checkpoints to incompatible unpadded shapes of TrainState.
Restored checkpoint in 0.50 seconds.
Jitting decoding.
Jitted decoding in 11.02 seconds.
Traceback (most recent call last):
File "/opt/tfm/timesfm/test.py", line 71, in
point_forecast, experimental_quantile_forecast = tfm.forecast(
File "/opt/tfm/timesfm/src/timesfm.py", line 430, in forecast
inp_min = np.min([np.min(ts) for ts in inputs])
File "/opt/tfm/timesfm/src/timesfm.py", line 430, in
inp_min = np.min([np.min(ts) for ts in inputs])
File "/home/anaconda3/envs/tfm_env/lib/python3.10/site-packages/numpy/core/fromnumeric.py", line 2953, in min
return _wrapreduction(a, np.minimum, 'min', axis, None, out,
File "/home/anaconda3/envs/tfm_env/lib/python3.10/site-packages/numpy/core/fromnumeric.py", line 88, in _wrapreduction
return ufunc.reduce(obj, axis, dtype, out, **passkwargs)
TypeError: '<=' not supported between instances of 'str' and 'float

Documents?

Thanks for the great work!
Wonder if there will be any documents about this?
I'm confused about several things, what is unique_id, horizontal_len, and what is q-0.1 - q-0.9 in the output?

So many errors I'm unsure where to begin

I'm using lightning.ai 's hosting service. I installed with the CPU on a CPU instance, but it's throwing errors for all kinds of stuff. Do you guys have a complete, functioning example somewhere?

Perhaps a docker image?

Processing dataframe with multiple processes.
2024-05-13 19:05:50.022496: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2024-05-13 19:05:50.022513: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2024-05-13 19:05:50.030911: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
2024-05-13 19:05:50.031158: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory
Multiprocessing context has already been set.
Constructing model weights.
Multiprocessing context has already been set.
Constructing model weights.
Multiprocessing context has already been set.
Constructing model weights.
Multiprocessing context has already been set.
Constructing model weights.
Constructed model weights in 5.59 seconds.
Restoring checkpoint from ./checkpoints.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
Constructed model weights in 5.61 seconds.
Restoring checkpoint from ./checkpoints.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
Constructed model weights in 5.77 seconds.
Restoring checkpoint from ./checkpoints.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
Constructed model weights in 5.75 seconds.
Restoring checkpoint from ./checkpoints.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
/commands/python: line 37: 230787 Killed                  "$@"
ERROR:absl:For checkpoint version > 1.0, we require users to provide                                                      
          `train_state_unpadded_shape_dtype_struct` during checkpoint
          saving/restoring, to avoid potential silent bugs when loading
          checkpoints to incompatible unpadded shapes of TrainState.
Restored checkpoint in 3.21 seconds.
Jitting decoding.
ERROR:absl:For checkpoint version > 1.0, we require users to provide
          `train_state_unpadded_shape_dtype_struct` during checkpoint
          saving/restoring, to avoid potential silent bugs when loading
          checkpoints to incompatible unpadded shapes of TrainState.
Restored checkpoint in 3.29 seconds.
Jitting decoding.
⚡ main ~/timesfm ERROR:absl:For checkpoint version > 1.0, we require users to provide
          `train_state_unpadded_shape_dtype_struct` during checkpoint
          saving/restoring, to avoid potential silent bugs when loading
          checkpoints to incompatible unpadded shapes of TrainState.
Restored checkpoint in 3.53 seconds.
Jitting decoding.
ERROR:absl:For checkpoint version > 1.0, we require users to provide
          `train_state_unpadded_shape_dtype_struct` during checkpoint
          saving/restoring, to avoid potential silent bugs when loading
          checkpoints to incompatible unpadded shapes of TrainState.
Restored checkpoint in 3.72 seconds.
Jitting decoding.
Jitted decoding in 35.71 seconds.
.....
[503 rows x 6 columns]
            ds      Open      High       Low     Close    Volume  unique_id
1   2014-09-28 -0.143312 -0.056853 -0.026526 -0.054260  0.190367          1
2   2014-10-05 -0.055555 -0.113639 -0.227167 -0.150249  0.481255          1
3   2014-10-12 -0.149999 -0.022109  0.045849  0.181083  0.233122          1
4   2014-10-19  0.179569  0.075699  0.219252  0.029050 -0.540083          1
5   2014-10-26  0.029927 -0.046277 -0.070535 -0.089443 -0.275396          1
..         ...       ...       ...       ...       ...       ...        ...
498 2024-04-07  0.060972 -0.005376 -0.027930 -0.027632  0.060569         11
499 2024-04-14 -0.027630  0.019249 -0.056394 -0.052245  0.256362         11
500 2024-04-21 -0.052231 -0.080268 -0.020810 -0.012353 -0.105307         11
501 2024-04-28 -0.012230  0.005313  0.046492 -0.027930 -0.317417         11
502 2024-05-05 -0.028171 -0.037639 -0.094024 -0.086910 -0.076448         11

[502 rows x 7 columns]
Processing dataframe with multiple processes.
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 116, in spawn_main
    exitcode = _main(fd, parent_sentinel)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 125, in _main
    prepare(preparation_data)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 236, in prepare
    _fixup_main_from_path(data['init_main_from_path'])
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 287, in _fixup_main_from_path
    main_content = runpy.run_path(main_path,
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/runpy.py", line 289, in run_path
    return _run_module_code(code, init_globals, run_name,
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/runpy.py", line 96, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/runpy.py", line 86, in _run_code
    exec(code, run_globals)
  File "/teamspace/studios/this_studio/timesfm/btc_predict.py", line 63, in <module>
    forecast_df = tfm.forecast_on_df(
  File "/teamspace/studios/this_studio/timesfm/src/timesfm.py", line 568, in forecast_on_df
    with multiprocessing.Pool(processes=num_jobs) as pool:
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/context.py", line 119, in Pool
    return Pool(processes, initializer, initargs, maxtasksperchild,
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/pool.py", line 215, in __init__
    self._repopulate_pool()
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/pool.py", line 306, in _repopulate_pool
    return self._repopulate_pool_static(self._ctx, self.Process,
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/pool.py", line 329, in _repopulate_pool_static
    w.start()
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/process.py", line 121, in start
    self._popen = self._Popen(self)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/context.py", line 288, in _Popen
    return Popen(process_obj)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/popen_spawn_posix.py", line 32, in __init__
    super().__init__(process_obj)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/popen_fork.py", line 19, in __init__
    self._launch(process_obj)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/popen_spawn_posix.py", line 42, in _launch
    prep_data = spawn.get_preparation_data(process_obj._name)
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 154, in get_preparation_data
    _check_not_importing_main()
  File "/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/spawn.py", line 134, in _check_not_importing_main
    raise RuntimeError('''
RuntimeError: 
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

        The "freeze_support()" line can be omitted if the program
        is not going to be frozen to produce an executable.
/home/zeus/miniconda3/envs/cloudspace/lib/python3.10/multiprocessing/resource_tracker.py:224: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown
  warnings.warn('resource_tracker: There appear to be %d '

Questions regarding `frequency_input` in the example on readme

In this code:

import numpy as np
forecast_input = [
    np.sin(np.linspace(0, 20, 100)),
    np.sin(np.linspace(0, 20, 200)),
    np.sin(np.linspace(0, 20, 400)),
]
frequency_input = [0, 1, 2]

point_forecast, experimental_quantile_forecast = tfm.forecast(
    forecast_input,
    freq=frequency_input,
)

the 3 input arrays have different length, what's the semantics of putting them together to pass as in as input? Are they:

-- represents the same time window? From the np.sin call with the same start and end (0, 20) (and this model only do univariate time series forecasting), guess they are. But then why the high frequency 0 has fewer data points (100) than the low frequency 2 (400)? This is confusing. Should the frequency_input array be reversed?

-- or different time windows, but end aligned?

-- or different time windows, but appended together one by one (in time)?

Thanks.

Improve dependencies specification

Hi,

I tried to install in a clean miniconda Docker container on Mac M2 but I am getting a dependency conflict, as per #1 .

I also tried to manually install via pip both on MacOS and Linux, and I entered a deep dependency hell.

In general, I think you should provide better dependencies specification, limiting them to the essential ones (why including datasetsforecast? It's just a demo dataset basically) and most importantly pinpointing them in order to both allow installing in different context than yours and ensure reproducibility over time.

ImportError: Failed to load native TensorFlow runtime during timesfm import

Environment Details:

  • Operating System: Ubuntu 20.04.6 LTS
  • Python Version: 3.10.14
  • TensorFlow Version: 2.9.3

Issue Description:
I followed the instructions to run the timesfm model on the cpu and set up the conda environment based on the environment_cpu.yml file. The setup of the conda environment ran through without any errors or warnings. However, when attempting to import the timesfm module and create the model, I encountered an ImportError related to TensorFlow's native runtime.

Error Message:

File "pywrap_tensorflow.py", line 77, in <module>
    raise ImportError(ImportError: Traceback (most recent call last):
  File "pywrap_tensorflow.py", line 62, in <module>
    from tensorflow.python._pywrap_tensorflow_internal import *
ImportError: /.../_pywrap_tensorflow_internal.so: undefined symbol: _ZNK10tensorflow4data11DatasetBase8FinalizeEPNS_15OpKernelContextESt8functionIFNS_8StatusOrISt10unique_ptrIS1_NS_4core15RefCountDeleterEEEEvEE

Failed to load the native TensorFlow runtime.

Additional Information:
I am seeking help to understand this error and find a possible fix. The detailed ImportError suggests an issue with _pywrap_tensorflow_internal.so, which could be related to an improper TensorFlow build or configuration specific to CPU environments.

Memory guidance

Can you provide approximate memory requirement guidance for using the model?

Unable to run timesfm due to dependency issue

When I am trying to run timesfm on my cpu device, I am unable to install lingvo package.
Getting this error:
Could not find a version that satisfies the requirement lingvo while using pip.

Any idea on how to resolve this.

Error loading from checkpoint

timesfm-1.0-200m downloaded by huggingface-cli is 777M. It is stored in the docker folder /home/suily/timesfm/model/checkpoints/checkpoint_1100000/state/checkpoint
I set the address as

_MODEL_PATH = flags.DEFINE_string(  
    "model_path", "model/checkpoints", "Path to model"
)

and

_MODEL_PATH = flags.DEFINE_string(  
    "model_path", "/home/suily/timesfm/model/checkpoints", "Path to model"
)

The following error has occurred:

Traceback (most recent call last):
  File "/home/suily/timesfm/experiments/extended_benchmarks/run_timesfm.py", line 150, in <module>
    main()
  File "/home/suily/timesfm/experiments/extended_benchmarks/run_timesfm.py", line 108, in main
    tfm.load_from_checkpoint(   # 检查点,加载模型
  File "/home/suily/timesfm/src/timesfm.py", line 269, in load_from_checkpoint
    self._train_state = checkpoints.restore_checkpoint(
  File "/usr/local/lib/python3.10/site-packages/paxml/checkpoints.py", line 225, in restore_checkpoint
    checkpoint_manager = checkpoint_managers.OrbaxCheckpointManager(
  File "/usr/local/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line 379, in __init__
    self._manager = _CheckpointManagerImpl(
  File "/usr/local/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line 216, in __init__
    super().__init__(directory, *args, **kwargs)
  File "/usr/local/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager.py", line 617, in __init__
    self._checkpoints = self._load_checkpoint_infos()
  File "/usr/local/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager.py", line 1289, in _load_checkpoint_infos
    checkpoint_infos = [futures[step].result() for step in steps]
  File "/usr/local/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager.py", line 1289, in <listcomp>
    checkpoint_infos = [futures[step].result() for step in steps]
  File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 458, in result
    return self.__get_result()
  File "/usr/local/lib/python3.10/concurrent/futures/_base.py", line 403, in __get_result
    raise self._exception
  File "/usr/local/lib/python3.10/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager.py", line 1278, in build_checkpoint_info
    step_metadata = self._step_name_format.find_step(self.directory, step)
  File "/usr/local/lib/python3.10/site-packages/orbax/checkpoint/path/step.py", line 341, in find_step
    raise ValueError(
ValueError: No step path found with name=1100000, NameFormat=_StandardNameFormat(step_prefix=None, step_format_fixed_length=None) for step=1100000 under /home/suily/timesfm/model/checkpoints.

Does anyone know the reason for this? The current guess may be that the model is not downloaded fully or is not stored enough. However, it is still 777M after changing several methods. The system I use is Linux.

installed failed

Has anyone effectively configured timesfm? Could you kindly provide details of the operating system and hardware configuration used?

checkpoint loading issue

i have downloaded the checkpoint from the provided repo on huggingface. However, when I ran the code, there was an error when loading the checkpoint,
'tfm.load_from_checkpoint('checkpoint')'

ValueError: Dimension to ungroup is not divisible by its index sizes. Group "(np)" expects size 228, but its indices "p" have combined specified size 32.
ERROR conda.cli.main_run:execute(124): conda run python /opt/project/test.py failed. (See above for error)

Preloading model driver mismatch issue

SO after i run this

# Preload the pretrained TimesFM model
tfm = timesfm.TimesFm(
    context_len=SEQ_LEN,
    horizon_len=PRED_LEN,
    input_patch_len=32,
    output_patch_len=128,
    num_layers=20,
    model_dims=1280,
    backend="gpu" if torch.cuda.is_available() else "cpu",
)

I get The NVIDIA driver's CUDA version is 12.2 which is older than the ptxas CUDA version (12.5.40). Because the driver is older than the ptxas version, XLA is disabling parallel compilation, which may slow down compilation. You should update your NVIDIA driver or use the NVIDIA-provided CUDA forward compatibility packages.

meaning that the jax which is compatible with 12.2 needs to be 0.4.23 however the paxml and praxis need it to be 0.4.26

How can i solve this so the inference or the model overall runs faster??

Random Result

I would like to ask why the results are different each time even though I have fixed the random seed.

Installation conflict (praxis / lingvo)

Hi!

Thanks for sharing; looks interesting!

Attempting to install conda env create --file=environment_cpu.yml yields:

Collecting fiddle-config (from praxis->-r /Users/x775/dev/google/timesfm/condaenv.onqwchk0.requirements.txt (line 10))
  Downloading fiddle_config-0.2.2-py3-none-any.whl.metadata (2.0 kB)

The conflict is caused by:
    praxis 1.4.0 depends on lingvo==0.12.7
    praxis 1.3.1 depends on lingvo
    praxis 1.3.0 depends on lingvo
    praxis 1.2.0 depends on lingvo
    praxis 1.1.0 depends on lingvo==0.12.7
    praxis 1.0.0 depends on lingvo==0.12.6
    praxis 0.4.0 depends on lingvo
    praxis 0.3.0 depends on lingvo
    praxis 0.2.1 depends on lingvo
    praxis 0.2.0 depends on lingvo
    praxis 0.1 depends on lingvo

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict


Pip subprocess error:
  Running command git clone --filter=blob:none --quiet https://github.com/awslabs/gluon-ts.git /private/var/folders/rx/3ng5q4ld33n6ks7mm8nrqmrm0000gq/T/pip-req-build-f10csovl
  Running command git clone --filter=blob:none --quiet https://github.com/amazon-science/chronos-forecasting.git /private/var/folders/rx/3ng5q4ld33n6ks7mm8nrqmrm0000gq/T/pip-req-build-a6gv6ye5
ERROR: Cannot install -r /Users/x775/dev/google/timesfm/condaenv.onqwchk0.requirements.txt (line 10) because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

failed

CondaEnvException: Pip failed

running conda 24.4.0 on MacOS Sonoma 14.4.1 w/ M1 Max.

Attempting to install with pip directly yields

INFO: pip is looking at multiple versions of paxml to determine which version is compatible with other requirements. This could take a while.
ERROR: Ignored the following versions that require a different python version: 1.6.2 Requires-Python >=3.7,<3.10; 1.6.3 Requires-Python >=3.7,<3.10; 1.7.0 Requires-Python >=3.7,<3.10; 1.7.1 Requires-Python >=3.7,<3.10; 1.8.0 Requires-Python >=3.11
ERROR: Could not find a version that satisfies the requirement lingvo==0.12.7 (from paxml) (from versions: none)
ERROR: No matching distribution found for lingvo==0.12.7

installing timesfm on databricks

Hello,
I would like to test timesfm on databricks notebook.
Since i cannot set up an environment, I simply did
(1) git clone, and install by (2) pip install -e . however am getting below error.

ERROR: File "setup.py" not found. Directory cannot be installed in editable mode: /databricks/driver/timesfm
(A "pyproject.toml" file was found, but editable mode currently requires a setup.py based build.)

Any ideas how i can install it ??

Installation Failed: conda env create --file=environment.yml

\ Ran pip subprocess with arguments:
['C:\\conda_py312\\envs\\timesfm\\python.exe', '-m', 'pip', 'install', '-U', '-r', 'C:\\LLM\\timesfm-master\\condaenv.c]
Pip subprocess output:
Looking in links: https://storage.googleapis.com/jax-releases/jax_cuda_releases.html
Collecting utilsforecast (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 2))
  Using cached utilsforecast-0.1.9-py3-none-any.whl.metadata (7.4 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.4.0-py3-none-any.whl.metadata (1.2 kB)
Collecting paxml (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 4))
  Using cached paxml-1.4.0-py3-none-any.whl.metadata (1.3 kB)
Collecting einshape (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 7))
  Using cached einshape-1.0-py3-none-any.whl.metadata (706 bytes)
Collecting huggingface_hub[cli] (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 1))
  Using cached huggingface_hub-0.23.0-py3-none-any.whl.metadata (12 kB)
Collecting jax[cuda12_pip] (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 6))
  Using cached jax-0.4.28-py3-none-any.whl.metadata (23 kB)
Collecting filelock (from huggingface_hub[cli]->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 1))
  Using cached filelock-3.14.0-py3-none-any.whl.metadata (2.8 kB)
Collecting fsspec>=2023.5.0 (from huggingface_hub[cli]->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (li)
  Using cached fsspec-2024.3.1-py3-none-any.whl.metadata (6.8 kB)
Requirement already satisfied: packaging>=20.9 in c:\conda_py312\envs\timesfm\lib\site-packages (from huggingface_hub[c)
Requirement already satisfied: pyyaml>=5.1 in c:\conda_py312\envs\timesfm\lib\site-packages (from huggingface_hub[cli]-)
Requirement already satisfied: requests in c:\conda_py312\envs\timesfm\lib\site-packages (from huggingface_hub[cli]->-r)
Collecting tqdm>=4.42.1 (from huggingface_hub[cli]->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 1)
  Using cached tqdm-4.66.4-py3-none-any.whl.metadata (57 kB)
Requirement already satisfied: typing-extensions>=3.7.4.3 in c:\conda_py312\envs\timesfm\lib\site-packages (from huggin)
Collecting InquirerPy==0.3.4 (from huggingface_hub[cli]->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (l)
  Using cached InquirerPy-0.3.4-py3-none-any.whl.metadata (8.1 kB)
Collecting pfzy<0.4.0,>=0.3.1 (from InquirerPy==0.3.4->huggingface_hub[cli]->-r C:\LLM\timesfm-master\condaenv.cz448nkw)
  Using cached pfzy-0.3.4-py3-none-any.whl.metadata (4.9 kB)
Requirement already satisfied: prompt-toolkit<4.0.0,>=3.0.1 in c:\conda_py312\envs\timesfm\lib\site-packages (from Inqu)
Collecting numpy (from utilsforecast->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 2))
  Using cached numpy-1.26.4-cp310-cp310-win_amd64.whl.metadata (61 kB)
Collecting pandas>=1.1.1 (from utilsforecast->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 2))
  Using cached pandas-2.2.2-cp310-cp310-win_amd64.whl.metadata (19 kB)
Collecting absl-py==1.4.0 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached absl_py-1.4.0-py3-none-any.whl.metadata (2.3 kB)
Collecting chex>=0.1.85 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached chex-0.1.86-py3-none-any.whl.metadata (17 kB)
Collecting clu==0.0.11 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached clu-0.0.11-py3-none-any.whl.metadata (1.9 kB)
Collecting einops==0.7.0 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached einops-0.7.0-py3-none-any.whl.metadata (13 kB)
Collecting etils==1.7.0 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached etils-1.7.0-py3-none-any.whl.metadata (6.4 kB)
Collecting fiddle==0.3.0 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached fiddle-0.3.0-py3-none-any.whl.metadata (2.3 kB)
Collecting flax==0.8.2 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached flax-0.8.2-py3-none-any.whl.metadata (10 kB)
Collecting jax-bitempered-loss==0.0.2 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3)
  Using cached jax_bitempered_loss-0.0.2-py3-none-any.whl.metadata (4.0 kB)
Collecting jax==0.4.26 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jax-0.4.26-py3-none-any.whl.metadata (23 kB)
Collecting jaxtyping==0.2.28 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jaxtyping-0.2.28-py3-none-any.whl.metadata (6.4 kB)
INFO: pip is looking at multiple versions of praxis to determine which version is compatible with other requirements. T.
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.3.1-py3-none-any.whl.metadata (1.1 kB)
Collecting absl-py (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached absl_py-2.1.0-py3-none-any.whl.metadata (2.3 kB)
Collecting einops (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached einops-0.8.0-py3-none-any.whl.metadata (12 kB)
Collecting fiddle==0.2.11 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached fiddle-0.2.11-py3-none-any.whl.metadata (2.2 kB)
Collecting flax==0.8.1 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached flax-0.8.1-py3-none-any.whl.metadata (10 kB)
Collecting jax==0.4.24 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jax-0.4.24-py3-none-any.whl.metadata (24 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.3.0-py3-none-any.whl.metadata (1.1 kB)
Collecting chex==0.1.85 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached chex-0.1.85-py3-none-any.whl.metadata (17 kB)
Collecting clu (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached clu-0.0.12-py3-none-any.whl.metadata (1.9 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.2.0-py3-none-any.whl.metadata (1.0 kB)
Collecting flax (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached flax-0.8.3-py3-none-any.whl.metadata (10 kB)
Collecting jax==0.4.18 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jax-0.4.18-py3-none-any.whl.metadata (23 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.1.0-1-py3-none-any.whl.metadata (1.1 kB)
Collecting clu==0.0.9 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached clu-0.0.9-py3-none-any.whl.metadata (2.0 kB)
Collecting einops==0.6.1 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached einops-0.6.1-py3-none-any.whl.metadata (12 kB)
Collecting etils==1.4.1 (from etils[enp,epath,epy]==1.4.1->praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requireme)
  Using cached etils-1.4.1-py3-none-any.whl.metadata (5.9 kB)
Collecting flax==0.7.2 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached flax-0.7.2-py3-none-any.whl.metadata (10.0 kB)
Collecting jax==0.4.14 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jax-0.4.14.tar.gz (1.3 MB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Preparing metadata (pyproject.toml): finished with status 'done'
Collecting jaxtyping==0.2.21 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jaxtyping-0.2.21-py3-none-any.whl.metadata (6.0 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-1.0.0-2-py3-none-any.whl.metadata (951 bytes)
Collecting clu==0.0.8 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached clu-0.0.8-py3-none-any.whl.metadata (2.0 kB)
Collecting einops==0.6.0 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached einops-0.6.0-py3-none-any.whl.metadata (12 kB)
Collecting fiddle==0.2.6 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached fiddle-0.2.6-py3-none-any.whl.metadata (2.1 kB)
Collecting flax==0.6.8 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached flax-0.6.8-py3-none-any.whl.metadata (9.9 kB)
Collecting jax==0.4.7 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached jax-0.4.7.tar.gz (1.2 MB)
  Preparing metadata (setup.py): started
  Preparing metadata (setup.py): finished with status 'done'
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-0.4.0-py3-none-any.whl.metadata (776 bytes)
  Using cached praxis-0.3.0-py3-none-any.whl.metadata (830 bytes)
INFO: pip is still looking at multiple versions of praxis to determine which version is compatible with other requireme.
  Using cached praxis-0.2.1-py3-none-any.whl.metadata (840 bytes)
Collecting fiddle==0.2.5 (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached fiddle-0.2.5-py3-none-any.whl.metadata (2.0 kB)
Collecting praxis (from -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached praxis-0.2.0-py3-none-any.whl.metadata (828 bytes)
  Using cached praxis-0.1-1-py3-none-any.whl.metadata (823 bytes)
Collecting fiddle-config (from praxis->-r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3))
  Using cached fiddle_config-0.2.2-py3-none-any.whl.metadata (2.0 kB)

The conflict is caused by:
    praxis 1.4.0 depends on lingvo==0.12.7
    praxis 1.3.1 depends on lingvo
    praxis 1.3.0 depends on lingvo
    praxis 1.2.0 depends on lingvo
    praxis 1.1.0 depends on lingvo==0.12.7
    praxis 1.0.0 depends on jaxlib==0.4.7
    praxis 0.4.0 depends on lingvo
    praxis 0.3.0 depends on lingvo
    praxis 0.2.1 depends on lingvo
    praxis 0.2.0 depends on lingvo
    praxis 0.1 depends on lingvo

To fix this you could try to:
1. loosen the range of package versions you've specified
2. remove package versions to allow pip attempt to solve the dependency conflict


Pip subprocess error:
ERROR: Cannot install -r C:\LLM\timesfm-master\condaenv.cz448nkw.requirements.txt (line 3) because these package versio.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-des

failed

CondaEnvException: Pip failed

Jitting fails with cpu, gpu & cuda

Tried running this library:
https://github.com/gabaid971/ts-forecaster

Doesn't matter If I try with my CPU, GPU (radeon 780 integrated), or cuda (RTX 4060).
When i run it in a jupyter notebook it crashes during "jitting decoding" when I load from checkpoint

My parameters:
tfm = timesfm.TimesFm(
context_len=128,
horizon_len=14,
input_patch_len=32,
output_patch_len=128,
num_layers=20,
model_dims=1280,
backend="cpu",
)

circular import

(tfm_env) root@debian:~/timesfm# python timesfm.py
Traceback (most recent call last):
File "/root/timesfm/timesfm.py", line 7, in
from timesfm import TimesFm
File "/root/timesfm/timesfm.py", line 7, in
from timesfm import TimesFm
ImportError: cannot import name 'TimesFm' from partially initialized module 'timesfm' (most likely due to a circular import) (/root/timesfm/timesfm.py)


Iuse this code: https://github.com/lhw828/timesfm/blob/main/timesfm.py

Cannot offset times with data type: 'dbdate'

I was running the following code
forecast_df = tfm.forecast_on_df(
inputs=df,
freq="D", # daily
value_name="y",
num_jobs=-1,
)
It shows the following message
'Processing dataframe with multiple processes.
Finished preprocessing dataframe.
Finished forecasting.
'
Then failed with this message
'ValueError: Cannot offset times with data type: 'dbdate' using a frequency of type: '<class 'pandas._libs.tslibs.offsets.Day'>'.'

Pretraining Datasets

Hi,

TimesFM is a very inspring work. I'm wondering if you guys are planning to also release the pretraining datasets, especially the google trends dataset. I believe those datasets will definitely further boost the development of the forecasting community.

Thanks,
Xue

Access to model google/timesfm-1.0-200m is restricted

Hi, I am trying to utilize the package, but got the error for

Cannot access gated repo for url https://huggingface.co/api/models/google/timesfm-1.0-200m/revision/main.
Access to model google/timesfm-1.0-200m is restricted. You must be authenticated to access it.

Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory

Try to install timesfm in docker, using
conda env create --file=environment.yml
conda activate tfm_env
pip install -e .
get:

>>> import timesfm
2024-05-22 12:33:11.430855: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'libcudart.so.11.0'; dlerror: libcudart.so.11.0: cannot open shared object file: No such file or directory

Installation is rather difficult, could you offer a docker image or in any certain way?
Thanks inadvance.

Please publish train_state_unpadded_shape_dtype_struct

We really need this file very soon the model will not run at all

Restored checkpoint in 6.29 seconds. Jitting decoding. ERROR:absl:For checkpoint version > 1.0, we require users to provide train_state_unpadded_shape_dtype_struct during checkpoint saving/restoring, to avoid potential silent bugs when loading checkpoints to incompatible unpadded shapes of TrainState.

Error in loading checkpoint

Background

Linux x86
timesfm cpu version
use slurm to submit job. already ensure that conda env is activated after using SBATCH and before running python code

Code that ran into error

tfm = timesfm.TimesFm(
        context_len=480,
        horizon_len=14,
        input_patch_len=32, # fixed
        output_patch_len=128, # fixed
        num_layers=20, # fixed
        model_dims=1280, # fixed
        backend="cpu",
        )
    
tfm.load_from_checkpoint(checkpoint_path=my_checkpoint_path, step=1100000)

Description

I downloaded the model checkpoint from a huggingface mirror website, and stored to this path:
/repo/timesfm_model/checkpoints/checkpoint_1100000/state/checkpoint. I'm not sure what is the right path to input checkpoint_path in tfm.load_from_checkpoint(checkpoint_path=my_checkpoint_path)

The questions i want to ask is

  1. What should be my_checkpoint_path in my case? I tried all possible choices and didn't work out, with error messages showing below
  2. What is the size of the checkpoint for those of you having a working example? I use curl -L to download the checkpoint from a mirror website to the server, and the size is 777 Mb, which is weird as if I download from the same link directly to my local machine (Mac), the size is 814.3 Mb.

Error message

  1. When I use
my_checkpoint_path = "/repo/timesfm_model/checkpoints"
tfm.load_from_checkpoint(checkpoint_path=my_checkpoint_path)

the corresponding error message is:

WARNING:jax._src.xla_bridge:An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not in
stalled. Falling back to cpu.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHan
dler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at ht
tps://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
ERROR:absl:For checkpoint version > 1.0, we require users to provide
          `train_state_unpadded_shape_dtype_struct` during checkpoint
          saving/restoring, to avoid potential silent bugs when loading
          checkpoints to incompatible unpadded shapes of TrainState.
  1. When i use
my_checkpoint_path = "/repo/timesfm_model/checkpoints/checkpoint_1100000" 
# or my my_checkpoint_path = "/repo/timesfm_model/checkpoints/checkpoint_1100000/state" 
tfm.load_from_checkpoint(checkpoint_path=my_checkpoint_path)

the error message is like this

WARNING:jax._src.xla_bridge:An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not in
stalled. Falling back to cpu.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHan
dler'>
WARNING:absl:Configured `CheckpointManager` using deprecated legacy API. Please follow the instructions at ht
tps://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
WARNING:absl:train_state_unpadded_shape_dtype_struct is not provided. We assume `train_state` is unpadded.
Constructing model weights.
Constructed model weights in 2.28 seconds.
Restoring checkpoint from /repo/timesfm_model/checkpoints/checkpoint_1100000.
Traceback (most recent call last):
  File "/./bin/python_script/timesfm_pred.py", line 92, in <module>
    main()
  File "/./bin/python_script/timesfm_pred.py", line 72, in main
    tfm.load_from_checkpoint(checkpoint_path="/ssd1/cache/hpc_t0/hy/repo/timesfm_model/checkpoints/checkpoint
_1100000", step=1100000)
  File "repo/timesfm/src/timesfm.py", line 270, in load_from_checkpoint
    self._train_state = checkpoints.restore_checkpoint(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoints.py", line 246, in
 restore_checkpoint
    output = checkpoint_manager.restore(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line
 568, in restore
    restored = self._manager.restore(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager
.py", line 1054, in restore
    restore_directory = self._get_read_step_directory(step, directory)
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/orbax/checkpoint/checkpoint_manager
.py", line 811, in _get_read_step_directory
    return self._options.step_name_format.find_step(root_dir, step).path
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/orbax/checkpoint/path/step.py", lin
e 66, in find_step
    raise ValueError(
ValueError: No step path found for step=1100000 with NameFormat=PaxStepNameFormat(checkpoint_type=<Checkpoint
Type.FLAX: 'flax'>, use_digit_step_subdirectory=False) under /ssd1/cache/hpc_t0/hy/repo/timesfm_model/checkpo
ints/checkpoint_1100000
  1. When i use
my_checkpoint_path = "/repo/timesfm_model/checkpoints/checkpoint_1100000/state/checkpoint" 
tfm.load_from_checkpoint(checkpoint_path=my_checkpoint_path)

the error message is

WARNING:jax._src.xla_bridge:An NVIDIA GPU may be present on this machine, but a CUDA-enabled jaxlib is not in
stalled. Falling back to cpu.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHan
dler'>
Constructing model weights.
Constructed model weights in 2.42 seconds.
Restoring checkpoint from /repo/timesfm_model/checkpoints/checkpoint_1100000/state/check
point.
Traceback (most recent call last):
  File "/./bin/python_script/timesfm_pred.py", line 92, in <module>
    main()
  File "/./bin/python_script/timesfm_pred.py", line 72, in main
    tfm.load_from_checkpoint(checkpoint_path="/ssd1/cache/hpc_t0/hy/repo/timesfm_model/checkpoints/checkpoint
_1100000/state/checkpoint", step=1100000)
  File "/ssd1/cache/hpc_t0/hy/repo/timesfm/src/timesfm.py", line 270, in load_from_checkpoint
    self._train_state = checkpoints.restore_checkpoint(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoints.py", line 227, in
 restore_checkpoint
    checkpoint_manager = checkpoint_managers.OrbaxCheckpointManager(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line
 451, in __init__
    self._manager = _CheckpointManagerImpl(
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line
 290, in __init__
    step = self.any_step()
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/paxml/checkpoint_managers.py", line
 370, in any_step
    any_step = ocp.utils.any_checkpoint_step(self.directory)
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/orbax/checkpoint/utils.py", line 71
4, in any_checkpoint_step
    for s in checkpoint_dir.iterdir():
  File "/miniconda3/envs/tfm_env/lib/python3.10/site-packages/etils/epath/gpath.py", line 156, in
 iterdir
    for f in self._backend.listdir(self._path_str):
  File "/envs/tfm_env/lib/python3.10/site-packages/etils/epath/backend.py", line 142,
in listdir
    return [p for p in os.listdir(path) if not p.endswith('~')]
NotADirectoryError: [Errno 20] Not a directory: '/ssd1/cache/hpc_t0/hy/repo/timesfm_model/checkpoints/checkpo
int_1100000/state/checkpoint'

the self._pmapped_decode interrupted, and does not output any errors

checkpoint_path is : checkpoints
Constructing model weights.
Constructed model weights in 1.39 seconds.
Restoring checkpoint from checkpoints.
WARNING:absl:No registered CheckpointArgs found for handler type: <class 'paxml.checkpoints.FlaxCheckpointHandler'>
WARNING:absl:Configured CheckpointManager using deprecated legacy API. Please follow the instructions at https://orbax.readthedocs.io/en/latest/api_refactor.html to migrate by May 1st, 2024.
Restored checkpoint in 1.00 seconds.
Jitting decoding

[ubuntu22.04][jax==0.4.26] Installation Failed: conda env create --file=environment.yml

The conflict is caused by:
praxis 1.4.0 depends on tfds-nightly==4.8.3.dev202303280045
The user requested jax==0.4.26
jax[cuda12] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
praxis 1.3.1 depends on jax==0.4.24
The user requested jax==0.4.26
jax[cuda12] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
praxis 1.3.0 depends on jax==0.4.24
The user requested jax==0.4.26
jax[cuda12] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
praxis 1.2.0 depends on jax==0.4.18
The user requested jax==0.4.26
jax[cuda12] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
praxis 1.1.0 depends on jax==0.4.14
The user requested jax==0.4.26
jax[cuda12] 0.4.26 depends on jax 0.4.26 (from https://pypi.tuna.tsinghua.edu.cn/packages/dc/d9/f387d9dfb2cf00f814b24e0f8bf6f4c68ae01870994dc436993fadd73563/jax-0.4.26-py3-none-any.whl (from https://pypi.tuna.tsinghua.edu.cn/simple/jax/) (requires-python:>=3.9))
praxis 1.0.0 depends on jax==0.4.7
praxis 0.3.0 depends on t5x
praxis 0.2.1 depends on t5x
praxis 0.2.0 depends on t5x
praxis 0.1 depends on t5x

To fix this you could try to:

  1. loosen the range of package versions you've specified
  2. remove package versions to allow pip attempt to solve the dependency conflict

Pip subprocess error:
ERROR: Cannot install -r /home/timesfm-master/condaenv.4cyxofwn.requirements.txt (line 3), jax==0.4.26 and jax[cuda12]==0.4.26 because these package versions have conflicting dependencies.
ERROR: ResolutionImpossible: for help visit https://pip.pypa.io/en/latest/topics/dependency-resolution/#dealing-with-dependency-conflicts

failed

CondaEnvException: Pip failed

ImportError: cannot import name 'patched_decoder' from 'src'

Hi,
I am trying to get it installed on Ubuntu 22.04 and followed the steps to create conda environment in GPU, installed all the pre-reqs and then when trying to import the timesfm, it gives following error:

(tfm_env) ubuntu@ip-10-218-241-180:/timesfm$ ls
LICENSE init.py docs environment_cpu.yml pyproject.toml
README.md datasets environment.yml experiments src
(tfm_env) ubuntu@ip-10-218-241-180:
/timesfm$ ls -ltr
total 52
-rw-rw-r-- 1 ubuntu ubuntu 231 May 11 06:28 environment_cpu.yml
-rw-rw-r-- 1 ubuntu ubuntu 318 May 11 06:28 environment.yml
drwxrwxr-x 2 ubuntu ubuntu 4096 May 11 06:28 docs
drwxrwxr-x 2 ubuntu ubuntu 4096 May 11 06:28 datasets
-rw-rw-r-- 1 ubuntu ubuntu 763 May 11 06:28 init.py
-rw-rw-r-- 1 ubuntu ubuntu 6207 May 11 06:28 README.md
-rw-rw-r-- 1 ubuntu ubuntu 11358 May 11 06:28 LICENSE
-rw-rw-r-- 1 ubuntu ubuntu 696 May 11 06:28 pyproject.toml
drwxrwxr-x 4 ubuntu ubuntu 4096 May 11 06:28 experiments
drwxrwxr-x 4 ubuntu ubuntu 4096 May 11 06:33 src
(tfm_env) ubuntu@ip-10-218-241-180:~/timesfm$ python
Python 3.10.14 | packaged by conda-forge | (main, Mar 20 2024, 12:45:18) [GCC 12.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.

import timesfm
Traceback (most recent call last):
File "", line 1, in
File "/home/ubuntu/timesfm/src/timesfm.py", line 38, in
from src import patched_decoder
ImportError: cannot import name 'patched_decoder' from 'src' (/home/ubuntu/.local/lib/python3.10/site-packages/src/init.py)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.