Skip to content

Changelog

All notable changes to TiRex-2 are documented here.

Unreleased

Improvements

  • Removed the xlstm dependency to reduce the package footprint, in #71, contributed by Martin Loretz.
  • Default safetensors weights: All checkpoints ship model configuration and weights in json and safetensors formats. load_model now loads from config.json and model.safetensors, which avoids unpickling and is faster. The legacy yaml and ckpt files are deprecated with a FutureWarning in #55, contributed by Suad0.

Documentation and development

  • Refactored the sLSTM recurrence interface to support future kernel implementations and decoupled its configuration from FlashRNN in #70, contributed by Martin Loretz.
  • Added the Intended Use, Limitations and EU AI Act Notice (INTENDED_USE.md), linked from the README and the documentation, in #67, contributed by Lukas Fischer and Yipeng Sun.
  • Added a script to convert legacy checkpoints to new formats in #55, contributed by Suad0.

Security and CI

0.3.1 - 2026-10-05

Documentation and development

  • Refactored internal prediction pipeline, and renamed _predict_once(...) to _predict(...) for clarity in #62, contributed by Christian Ganhör.

0.3.0 - 2026-09-28

Improvements

  • ⭐️📊 Use forecast_df() to forecast directly from pandas, Polars, PyArrow, and other supported eager dataframes. It handles multiple series, covariates, and batching, and returns results in the input dataframe library by default, in #18, contributed by Suad0 and Zhihao Dai.
  • ⭐️🚀 Added a pad_context=False option to forecast(...) to skip padding to the default context length, enabling much faster inference for short contexts at a small accuracy cost, in #57, contributed by Daniil Yefimov.
  • ⭐️🚀 Added opt-in recurrent-layer compilation with load_model(..., compile=True) for faster repeated forecasts (up to 1.82x on CPU), in #47, contributed by Daniil Yefimov.
  • Added a preserve_grad=True option to _predict_once(...) and postprocessing for fine-tuning, preserving finite gradients through inverse differencing, in #58, contributed by Zhihao Dai.
  • Replaced einops rearrangements with native PyTorch operations and removed the direct einops dependency in #41, contributed by Copilot and Zhihao Dai.
  • Removed a redundant torch.no_grad() context from prediction code in #42, contributed by Zhihao Dai.

Documentation and development

  • Added a dataframe forecasting guide for native dataframe forecasting via forecast_df, contributed by Suad0 and Zhihao Dai.
  • Corrected deployment examples and guidance for covariates, model caching, compilation, and the HTTP API, and added an Open Source vs PRO feature comparison table with consistent PRO naming in #21, contributed by Lukas Fischer, Claude Sonnet 5, and Zhihao Dai.
  • Made the default Windows CUDA Pixi platform use the cu130 PyTorch index and fail CUDA tests early when CUDA is unavailable, in #51, contributed by Yipeng Sun.
  • Added FAQs covering CUDA setup, supported NVIDIA GPU architectures, and Windows MSVC compiler setup in #19, contributed by Yipeng Sun and Daniil Yefimov.
  • Added a Pixi documentation environment and preview/build commands, migrated documentation deployment to GitHub Pages artifact actions, and updated contributor instructions in #37, contributed by Zhihao Dai.
  • Removed the unused root requirements.txt in #40, contributed by Copilot and Zhihao Dai.
  • Added named Pixi platforms for Linux and Windows CPU builds and CUDA 12.6, 13.0, and 13.2 builds, with matching CUDA toolchains and updated development and benchmark commands in #20, contributed by Zhihao Dai.
  • Added GitHub issue and pull request templates in #25, contributed by Zhihao Dai.

Security and CI

  • Migrated the cross-platform CPU test matrix to Pixi for Python 3.11 and 3.14, added lower-bound tests with Python 3.11 and PyTorch 2.8.0 and Python 3.15 preview coverage, and restricted test workflow permissions in #43, contributed by Zhihao Dai.
  • Added a CPU test job using the frozen Pixi lockfile in #44, contributed by Zhihao Dai.
  • Updated requests from 2.34.0 to 2.34.2 in the inference dependencies in #35, contributed by Dependabot and Zhihao Dai.
  • Hardened Pixi dependency resolution with a seven-day package release cooldown (except for xlstm, mlstm_kernels, and flashrnn), disabled dependency wheel builds, and required Pixi 0.67.0 or newer in #24, contributed by Zhihao Dai and Copilot Autofix.
  • Enabled weekly Dependabot version updates for the root Python dependencies in #28, contributed by Zhihao Dai.
  • Added a security policy documenting supported versions and private vulnerability reporting in #23, contributed by Copilot and Zhihao Dai.
  • Pinned GitHub Actions to commit SHAs and updated action versions in #27, contributed by Copilot and Zhihao Dai.
  • Added Visual Studio developer-shell initialization for Windows builds in #27, contributed by Copilot and Zhihao Dai.

0.2.1 - 2026-08-05

Improvements

  • Fixed TiRex-2 functionality on macOS for CPU and MPS backends in #10, contributed by Suad0.
  • Fixed TiRex-2 functionality on Windows for CPU and CUDA backends in #5, contributed by Daniil Yefimov.
  • Relaxed package requirements to make installation via pip more flexible in #12 and #13, contributed by Daniil Yefimov.
  • Added an option to use Flex Attention in #6, contributed by danieleb1861.

0.1.1 - 2026-07-02

Initial TiRex-2 release, contributed by martinloretzzz in the initial commit.