Back to models
Forecaster

FalconTSTForecaster

Categorical featuresIn-sample prediction intervalsMultivariate

Falcon-TST forecaster via Hugging Face transformers.

This forecaster wraps Falcon-TST prediction models [1], [2] from Hugging Face and exposes them through the sktime forecasting interface.

The primary workflow is fit for zero-shot inference setup, which loads the model and stores history. It does not train or fine-tune model weights. Passing model_path=None initializes a Falcon-TST model from config instead of loading pretrained weights. These random weights cannot be trained through this estimator and are mainly useful for tests or local experimentation.

Quickstart

python
from sktime.forecasting.falcon_tst import FalconTSTForecaster

estimator = FalconTSTForecaster(model_path='ant-intl/Falcon-TST_Large', config=None, device_map='cpu', quantization_config=None, revin=True)

Tags

Capabilities

  • Categorical features
  • In-sample prediction intervals: Supported
  • Multivariate
  • In-sample predictions: Not supported
  • Prediction intervals: Not supported
  • Missing values: Not supported
  • Exogenous variables: Not supported

Properties

Needs forecast horizon in fitrequires-fh-in-fit
No
X and y need the same indexX-y-must-have-same-index
Yes

Parameters(5)

model_pathstr, default=”ant-intl/Falcon-TST_Large”

Hugging Face repository identifier or local path to a Falcon-TST checkpoint. If None, a model is created from config.

configFalconTSTConfig or dict, optional (default=None)

Model configuration used when model_path=None. If provided as a dict, it is converted with FalconTSTConfig.from_dict. If None and model_path=None, the default FalconTSTConfig is used. This path creates random weights; the estimator does not provide training for those weights. Possible keys:

hidden_size (int, optional, defaults to 1024):

Dimensionality of the encoder layers and the pooler layer.

device_mapstr, dict, int, or torch.device, default=”cpu”

Device placement following the transformers device_map naming convention, for example "cpu", "cuda", "cuda:0", or "auto".

quantization_configtransformers.quantizers.HfQuantizer, optional

Valid quantization configuration object compatible with transformers.PreTrainedModel.from_pretrained [3].

revinbool, default=True
Whether to use RevIN normalization during Falcon-TST prediction.

Examples

Simple zero-shot forecasting with the default Falcon-TST checkpoint:
>>> from sktime.datasets import load_airline
>>> from sktime.forecasting.falcon_tst import FalconTSTForecaster
>>> y = load_airline ()
>>> # By default, loads ant-intl/Falcon-TST_Large.
>>> forecaster = FalconTSTForecaster ()
>>> forecaster. fit (y)
>>> y_pred = forecaster. predict (fh = [1, 2, 3 ]) Reduced-memory inference with device placement and quantization:
>>> from sktime.datasets import load_airline
>>> from sktime.forecasting.falcon_tst import FalconTSTForecaster
>>> from transformers import BitsAndBytesConfig
>>> y = load_airline ()
>>> forecaster = FalconTSTForecaster (
... model_path = "ant-intl/Falcon-TST_Large",
... device_map = "auto",
... quantization_config = BitsAndBytesConfig (load_in_8bit = True),
... )
>>> forecaster. fit (y)
>>> y_pred = forecaster. predict (fh = [1, 2, 3 ]) Randomly initialized local model, useful for tests or local experimentation. This model is not trained by fit; the weights stay random and should not be used as a trained forecaster:
>>> from sktime.forecasting.falcon_tst import FalconTSTForecaster
>>> forecaster = FalconTSTForecaster (
... model_path = None,
... config = {
... "num_hidden_layers": 1,
... "hidden_size": 4,
... "ffn_hidden_size": 8,
... "num_attention_heads": 1,
... "seq_length": 8,
... "shared_patch_size": 2,
... "patch_size_list": [4 ],
... "transformer_input_layernorm": True,
... "expert_num_layers": 1,
... "multi_forecast_head_list": [2 ],
... "autoregressive_step_list": [1 ],
... "num_experts": 1,
... "moe_router_topk": 1,
... "moe_ffn_hidden_size": 8,
... "moe_shared_expert_intermediate_size": 8,
... "use_cpu_initialization": True,
... },
... )

References