v1.0.0MAJOR Version Change First Stable Release

Released: 2025

V2 Architecture

  • Feature Introduced BaseAttentiveSpec and BaseAttentiveComponentSpec frozen dataclasses for backend-neutral model configuration; replaces ad-hoc dicts with a typed, validated schema.

  • Feature New ComponentRegistry and ModelRegistry classes for pluggable component and model registration keyed by (name, backend).

  • Feature New BaseAttentiveV2Assembly resolver/assembly pattern for constructing models from specs; enables full backend portability.

  • Feature Registered projection.dense key in the generic V2 component registry (fallback for all backends).

New BaseAttentive Parameters

  • Feature mode — operational mode shortcut: 'tft', 'tft_like', 'pihal', 'pihal_like', or None.

  • Feature attention_levels — declarative attention stack control; accepts string, list, int (1=cross, 2=hierarchical, 3=memory), or None.

  • Feature scales — explicit multi-scale LSTM strides, e.g. [1, 2, 4] or 'auto'.

  • Feature multi_scale_agg — how to merge multi-scale outputs: 'last', 'average', 'flatten', 'sum', 'concat'.

  • Feature final_agg — final sequence aggregation: 'last', 'average', 'flatten'.

  • Feature num_encoder_layers — configurable encoder depth (default: 2).

  • Feature vsn_units — override VSN projection size independently of embed_dim.

  • Feature max_window_size — maximum dynamic time window size (default: 10).

  • Feature memory_size — memory bank size for memory-augmented attention (default: 100).

  • Feature apply_dtw — toggle Dynamic Time Warping alignment (default: True).

New Backend Utilities

  • Feature normalize_backend_name(name) — normalises aliases (e.g. "tf""tensorflow").

  • Feature detect_available_backends() — returns availability and version info for all installed backends.

  • Feature select_best_backend(require_supported) — selects best available backend automatically.

  • Feature ensure_default_backend(auto_install) — guarantees a backend is ready.

  • Feature check_tensorflow_compatibility() — returns (bool, msg).

  • Feature check_torch_compatibility() — returns (bool, msg).

  • Feature get_backend_version(name) — returns installed version string.

  • Feature version_at_least(version_str, minimum) — version comparison.

  • Feature TorchDeviceManager class — CUDA / MPS / CPU device management with lazy selection, cache clearing, and device info reporting.

New Components

  • Feature TransformerEncoderBlock / TransformerDecoderBlock — stacked transformer encoder/decoder blocks with configurable num_layers.

  • Feature PointForecastHead(output_dim, forecast_horizon) — dense point forecast output head.

  • Feature QuantileHead(quantiles, output_dim, forecast_horizon) — separate projection per quantile level.

  • Feature GaussianHead(output_dim) — outputs mean and log-variance for a Gaussian predictive distribution.

  • Feature MixtureDensityHead(num_components, output_dim) — Gaussian Mixture Model forecast head.

  • Feature TSPositionalEncoding(max_position, embed_dim) — time-series positional encoding with explicit position and embedding dimensions.

  • Feature AdaptiveQuantileLoss(quantiles) — adaptive quantile regression loss.

  • Feature MultiObjectiveLoss() — combines multiple loss terms.

  • Feature CRPSLoss() — Continuous Ranked Probability Score.

  • Feature AnomalyLoss() — loss for anomaly-aware training.

  • Feature Gate(units) — GLU-style gating layer.

  • Feature LayerScale(init_value) — per-channel learnable scaling (ViT-style).

  • Feature SqueezeExcite1D(ratio) — squeeze-and-excite for 1D sequences.

  • Feature StochasticDepth(drop_rate) — stochastic depth / drop-path.

Component Utilities

  • Feature resolve_attn_levels(att_levels) — canonical attention list from any supported input form.

  • Feature configure_architecture(objective, use_vsn, attention_levels, architecture_config) — merges defaults with user arguments into a final architecture config dict.

  • Feature resolve_fusion_mode(fusion_mode) — returns 'integrated' or 'disjoint'.

Bug Fixes

  • Bug Fix Fixed relative import depth in components/utils.py (3-level ...utils → 2-level ..utils), resolving ImportError on direct module import.

  • Bug Fix Registered "projection.dense" in the generic V2 component registry, fixing KeyError: "Unknown component key: 'projection.dense'" on backend fallback.

Documentation

  • Internal Full documentation site rewrite for v2 API: all 14 RST pages updated with correct constructor signatures, new parameters, new architecture sections (registry / resolver / assembly), and backend utilities.

  • Internal Custom Sphinx CSS theme with brand colors (primary #92278f, secondary #ee2a7b).

  • Internal HTML README header with centered logo and badges.

Dependencies

  • Dependencies Keras >= 3.0.0 required; TensorFlow, JAX, and PyTorch supported as backends via Keras 3 multi-backend.

  • Dependencies NumPy >= 1.23, scikit-learn >= 1.2 required.

  • Dependencies Python 3.10+ required (3.9 no longer supported).

Internal

  • Internal Comprehensive test suite covering components, backend utilities, compatibility layer, registry, validation, and implementations modules.

  • Internal Test coverage improved significantly with 6 new test files.

  • Internal from __future__ import annotations added throughout for forward-reference compatibility.