changes to workflow
This commit is contained in:
+10
-14
@@ -1,4 +1,4 @@
|
||||
name: Poetry publish
|
||||
name: Python package build
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -7,24 +7,20 @@ on:
|
||||
branches: [ "master" ]
|
||||
|
||||
jobs:
|
||||
buildPush:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.10'
|
||||
- name: Install Poetry
|
||||
python-version: '3.11'
|
||||
- name: Install uv
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install poetry
|
||||
# use the hardcoded version number for now. if this is merged to the main repo, you can uncomment these lines to automatically tag the version number with the github run number
|
||||
# e.g. poetry version 0.1.${{ github.run_number }}
|
||||
- name: Set Version number
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
|
||||
- name: Install build dependencies
|
||||
run: |
|
||||
poetry version 1.3.0
|
||||
- name: Build and Publish to PyPI
|
||||
run: |
|
||||
poetry config pypi-token.pypi ${{ secrets.PYPI_API_TOKEN }}
|
||||
poetry publish --build
|
||||
uv pip install build
|
||||
- name: Build package
|
||||
run: python -m build
|
||||
@@ -0,0 +1,25 @@
|
||||
name: Manual PyPI Publish
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
build-and-publish:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v2
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.11'
|
||||
- name: Install uv
|
||||
run: |
|
||||
curl -LsSf https://astral.sh/uv/install.sh | sh
|
||||
echo "$HOME/.cargo/bin" >> $GITHUB_PATH
|
||||
- name: Install Poetry
|
||||
run: |
|
||||
uv pip install poetry
|
||||
- name: Build and Publish to PyPI
|
||||
run: |
|
||||
poetry config pypi-token.pypi ${{ secrets.PYPI_API_TOKEN }}
|
||||
poetry publish --build
|
||||
@@ -6,3 +6,4 @@ wandb/
|
||||
datasets/
|
||||
results/
|
||||
timesfm_jax.egg-info/
|
||||
development_setup.md
|
||||
|
||||
@@ -44,15 +44,28 @@ will be under construction over the next few weeks to
|
||||
|
||||
### Install
|
||||
|
||||
TODO(siriuz42): Package timesfm==2.0.0 and upload to PyPI .
|
||||
1. Clone the repository:
|
||||
```shell
|
||||
git clone https://github.com/google-research/timesfm.git
|
||||
cd timesfm
|
||||
```
|
||||
|
||||
Run
|
||||
2. Create a virtual environment and install dependencies using `uv`:
|
||||
```shell
|
||||
# Create a virtual environment
|
||||
uv venv
|
||||
|
||||
# Activate the environment
|
||||
source .venv/bin/activate
|
||||
|
||||
# Install the dependencies
|
||||
uv pip install -r requirements.txt
|
||||
```
|
||||
|
||||
```shell
|
||||
git clone https://github.com/google-research/timesfm.git
|
||||
cd timesfm
|
||||
pip install -e .
|
||||
```
|
||||
3. (Optional) If you plan to modify the source code, install the package in editable mode:
|
||||
```shell
|
||||
uv pip install -e .
|
||||
```
|
||||
|
||||
### Code Example
|
||||
|
||||
|
||||
+16
-18
@@ -1,31 +1,29 @@
|
||||
[tool.poetry]
|
||||
[project]
|
||||
name = "timesfm"
|
||||
version = "2.0.0"
|
||||
description = "A time series foundation model."
|
||||
authors = [
|
||||
"Rajat Sen <senrajat@google.com>",
|
||||
"Yichen Zhou <yichenzhou@google.com>",
|
||||
"Abhimanyu Das <abhidas@google.com>",
|
||||
"Petros Mol <pmol@google.com>",
|
||||
"Michael Chertushkin <chertushkinmichael@gmail.com>"
|
||||
{name = "Rajat Sen", email = "senrajat@google.com"},
|
||||
{name = "Yichen Zhou", email = "yichenzhou@google.com"},
|
||||
{name = "Abhimanyu Das", email = "abhidas@google.com"},
|
||||
{name = "Petros Mol", email = "pmol@google.com"},
|
||||
{name = "Michael Chertushkin", email = "chertushkinmichael@gmail.com"},
|
||||
]
|
||||
license = "Apache-2.0"
|
||||
license = {text = "Apache-2.0"}
|
||||
readme = "README.md"
|
||||
packages = [{include = "timesfm", from = "src"}]
|
||||
|
||||
[tool.poetry.dependencies]
|
||||
python = ">=3.11"
|
||||
numpy = ">=1.26.4"
|
||||
huggingface_hub = { version = ">=0.23.0", extras = ["cli"] }
|
||||
safetensors = ">=0.5.3"
|
||||
torch = { version = ">=2.0.0", extras = ["cuda"] }
|
||||
requires-python = ">=3.11"
|
||||
dependencies = [
|
||||
"numpy>=1.26.4",
|
||||
"huggingface_hub[cli]>=0.23.0",
|
||||
"safetensors>=0.5.3",
|
||||
"torch>=2.0.0",
|
||||
]
|
||||
|
||||
[tool.ruff]
|
||||
line-length = 88
|
||||
indent-width = 2
|
||||
|
||||
|
||||
[build-system]
|
||||
requires = ["poetry-core"]
|
||||
build-backend = "poetry.core.masonry.api"
|
||||
requires = ["setuptools>=61.0"]
|
||||
build-backend = "setuptools.build_meta"
|
||||
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
# This file was autogenerated by uv via the following command:
|
||||
# uv pip compile pyproject.toml -o requirements.txt
|
||||
certifi==2025.10.5
|
||||
# via requests
|
||||
charset-normalizer==3.4.3
|
||||
# via requests
|
||||
filelock==3.19.1
|
||||
# via
|
||||
# huggingface-hub
|
||||
# torch
|
||||
fsspec==2025.9.0
|
||||
# via
|
||||
# huggingface-hub
|
||||
# torch
|
||||
hf-xet==1.1.10
|
||||
# via huggingface-hub
|
||||
huggingface-hub==0.35.3
|
||||
# via timesfm (pyproject.toml)
|
||||
idna==3.10
|
||||
# via requests
|
||||
inquirerpy==0.3.4
|
||||
# via huggingface-hub
|
||||
jinja2==3.1.6
|
||||
# via torch
|
||||
markupsafe==3.0.3
|
||||
# via jinja2
|
||||
mpmath==1.3.0
|
||||
# via sympy
|
||||
networkx==3.5
|
||||
# via torch
|
||||
numpy==2.3.3
|
||||
# via timesfm (pyproject.toml)
|
||||
nvidia-cublas-cu12==12.8.4.1
|
||||
# via
|
||||
# nvidia-cudnn-cu12
|
||||
# nvidia-cusolver-cu12
|
||||
# torch
|
||||
nvidia-cuda-cupti-cu12==12.8.90
|
||||
# via torch
|
||||
nvidia-cuda-nvrtc-cu12==12.8.93
|
||||
# via torch
|
||||
nvidia-cuda-runtime-cu12==12.8.90
|
||||
# via torch
|
||||
nvidia-cudnn-cu12==9.10.2.21
|
||||
# via torch
|
||||
nvidia-cufft-cu12==11.3.3.83
|
||||
# via torch
|
||||
nvidia-cufile-cu12==1.13.1.3
|
||||
# via torch
|
||||
nvidia-curand-cu12==10.3.9.90
|
||||
# via torch
|
||||
nvidia-cusolver-cu12==11.7.3.90
|
||||
# via torch
|
||||
nvidia-cusparse-cu12==12.5.8.93
|
||||
# via
|
||||
# nvidia-cusolver-cu12
|
||||
# torch
|
||||
nvidia-cusparselt-cu12==0.7.1
|
||||
# via torch
|
||||
nvidia-nccl-cu12==2.27.3
|
||||
# via torch
|
||||
nvidia-nvjitlink-cu12==12.8.93
|
||||
# via
|
||||
# nvidia-cufft-cu12
|
||||
# nvidia-cusolver-cu12
|
||||
# nvidia-cusparse-cu12
|
||||
# torch
|
||||
nvidia-nvtx-cu12==12.8.90
|
||||
# via torch
|
||||
packaging==25.0
|
||||
# via huggingface-hub
|
||||
pfzy==0.3.4
|
||||
# via inquirerpy
|
||||
prompt-toolkit==3.0.52
|
||||
# via inquirerpy
|
||||
pyyaml==6.0.3
|
||||
# via huggingface-hub
|
||||
requests==2.32.5
|
||||
# via huggingface-hub
|
||||
safetensors==0.6.2
|
||||
# via timesfm (pyproject.toml)
|
||||
setuptools==80.9.0
|
||||
# via triton
|
||||
sympy==1.14.0
|
||||
# via torch
|
||||
torch==2.8.0
|
||||
# via timesfm (pyproject.toml)
|
||||
tqdm==4.67.1
|
||||
# via huggingface-hub
|
||||
triton==3.4.0
|
||||
# via torch
|
||||
typing-extensions==4.15.0
|
||||
# via
|
||||
# huggingface-hub
|
||||
# torch
|
||||
urllib3==2.5.0
|
||||
# via requests
|
||||
wcwidth==0.2.14
|
||||
# via prompt-toolkit
|
||||
Reference in New Issue
Block a user