Advanced time-series analytics and forecasting toolkit for commodity and power trading
Project description
Analysis3054 – Advanced Forecasting & Analytics
Analysis3054 is a full‑featured time‑series analytics and forecasting package designed for commodity, energy, and demand‑planning teams. It combines plotting, statistics, machine learning, deep learning (Chronos‑2), physics‑inspired forecasters, and high‑speed data ingestion under a single, unified API.
Installation
Analysis3054 ships prebuilt wheels for common platforms. A minimal install pulls Chronos‑2, physics forecasters, and AutoGluon backends by default.
pip install analysis3054
Optional extras let you control the footprint per environment:
pip install "analysis3054[stats]" # pmdarima + arch
pip install "analysis3054[ml]" # scikit-learn + boosted trees
pip install "analysis3054[dl]" # tensorflow
pip install "analysis3054[prophet]" # prophet + neuralprophet
pip install "analysis3054[tbats]" # tbats
pip install "analysis3054[all]" # everything (same as base but explicit)
For air‑gapped or offline environments, install from an internal index mirror and export the ANALYSIS3054_HOME environment variable to control cache locations for pretrained Chronos‑2 checkpoints.
What’s new in Chronos‑2
Chronos‑2 now delivers faster inference, richer covariate handling, and clearer diagnostics:
- Adaptive covariate gating – detect and down‑weight noisy drivers automatically.
- Scenario packets – emit multiple forecast paths per call for stress testing.
- Quantile fan – calibrated 5–95% bands optimized for medium‑horizon energy curves.
- Batch streaming – stream partial results back to dashboards before the full job completes.
Chronos‑2 quickstarts
Univariate baseline (minimal inputs)
from analysis3054 import chronos2_univariate_forecast
forecast = chronos2_univariate_forecast(
df, # DataFrame with a datetime column and one numeric target
date_col="date",
target_col="price",
prediction_length=14,
quantiles=[0.05, 0.5, 0.95],
)
print(forecast.forecasts.tail()) # includes scenario packet IDs
print(forecast.diagnostics.summary) # convergence + latency insights
Multivariate with automatic covariate gating
from analysis3054 import chronos2_multivariate_forecast
multi = chronos2_multivariate_forecast(
df,
date_col="date",
target_cols=["north", "south", "west"],
covariate_cols=["temp", "load_forecast"],
prediction_length=21,
gate_covariates=True, # drop unhelpful drivers per series
scenario_paths=5, # request multiple stress paths
)
print(multi.forecasts.columns) # (series, quantile, scenario)
Covariate‑informed future window
from analysis3054 import chronos2_covariate_forecast
# known drivers during the forecast horizon (weather + planned outages)
future_cov = pd.DataFrame({
"date": pd.date_range(df["date"].max() + pd.Timedelta(days=1), periods=30, freq="D"),
"temp": 65,
"planned_outage": [0, 0, 1, 1, 0] * 6,
})
guided = chronos2_covariate_forecast(
df,
date_col="date",
target_col="price",
covariate_cols=["temp", "planned_outage"],
future_cov_df=future_cov,
prediction_length=30,
quantiles=[0.1, 0.25, 0.5, 0.75, 0.9],
)
guided.plot_quantile_fan().show()
Physics forecasters
Physics‑inspired models capture conservation relationships and engineered dynamics that traditional ML misses. The helpers accept the same DataFrame shape used across the package, making them drop‑in replacements.
Mass‑balance forecaster
Ideal for refinery yield or inventory reconciliation problems.
from analysis3054 import mass_balance_forecast
forecast = mass_balance_forecast(
df,
date_col="date",
inflow_cols=["crude_intake"],
outflow_cols=["products"],
storage_col="tank_level",
prediction_length=14,
enforce_conservation=True,
)
print(forecast.forecasts[["tank_level_mean"]].tail())
Thermal decay forecaster
Captures lagged response between ambient temperature and process temperature.
from analysis3054 import thermal_decay_forecast
thermal = thermal_decay_forecast(
df,
date_col="date",
target_col="process_temp",
ambient_col="ambient_temp",
time_constant_hours=6,
prediction_length=48,
)
thermal.forecasts.plot(title="Thermal response");
Hydro forecast with snowmelt dynamics
from analysis3054 import hydro_snowmelt_forecast
snowmelt = hydro_snowmelt_forecast(
df,
date_col="date",
precip_col="precip_in",
temp_col="temp_f",
target_col="river_cfs",
prediction_length=10,
melt_threshold=32,
)
print(snowmelt.diagnostics.water_balance)
Lightning‑fast API ingestion
fetch_apis_to_dataframe pools HTTP/2 connections, batches retries, and streams partial frames so you can ingest many endpoints into one DataFrame without manual plumbing.
from analysis3054 import fetch_apis_to_dataframe
endpoints = [
"https://api.example.com/v1/events", # simple URL
{"url": "https://api.example.com/v1/users", "params": {"page": 1}},
{"url": "https://api.example.com/v1/prices.ndjson", "format": "ndjson"},
]
df = fetch_apis_to_dataframe(
endpoints,
max_workers=24, # aggressive concurrency
timeout="5s", # per‑request timeout with auto backoff
sort_by=["timestamp", "region"],
transform=lambda frame: frame.assign(
value_pct=frame["value"] / frame["value"].sum()
),
stream_results=True, # yield partial frames for dashboards
output_dir="./exports", # optional CSV persistence
file_name="daily_snapshot",
)
print(df.head())
Background ingestion for UI threads
future = fetch_apis_to_dataframe(
endpoints,
max_workers=12,
run_in_background=True, # returns a Future immediately
throttle_after=0.5, # adaptive throttle after 429s or timeouts
)
# do other work here ...
df_async = future.result() # blocks only when results are needed
transform accepts both regular and async callables. When stream_results=True, each partial DataFrame is passed through the transform before being concatenated, ensuring your downstream math stays consistent while the ingestion speeds ahead.
Quickstart (forecasting)
Create a small demo DataFrame (weekly power prices with a covariate) and run a unified forecast.
import numpy as np
import pandas as pd
from analysis3054 import ForecastEngine
rng = pd.date_range("2020-01-05", periods=120, freq="W")
df = pd.DataFrame({
"date": rng,
"price": 50 + np.sin(np.arange(120) / 6) * 5 + np.random.randn(120),
"temp": 30 + np.random.randn(120),
})
engine = ForecastEngine.default()
forecast = engine.run(
df=df,
date_col="date",
target_cols=["price"],
horizon=8,
covariate_cols=["temp"],
)
print(forecast.forecasts.head())
Plotting
Five‑Year Band Plot
from analysis3054 import five_year_plot
fig = five_year_plot(date="date", df=df, smooth=True)
fig.show()
ML & Robust Forecasters
All ML helpers infer frequency, propagate covariates, apply exponential error correction, and handle missing scikit‑learn gracefully.
from analysis3054 import (
bayesian_ridge_forecast,
huber_forecast,
pls_forecast,
fourier_ridge_forecast,
histgb_direct_forecast,
)
ridge = bayesian_ridge_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=10)
huber = huber_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=10)
pls = pls_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=10)
fourier = fourier_ridge_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=10, seasonal_periods=[52])
histgb = histgb_direct_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=10, max_depth=4)
Auto ML family (10+ helpers)
from analysis3054 import (
chronos2_auto_covariate_forecast,
boosted_tree_forecast,
random_forest_forecast,
elastic_net_forecast,
xgboost_forecast,
catboost_forecast,
lightgbm_forecast,
svr_forecast,
mlp_forecast,
harmonic_regression_forecast,
intraday_sarimax_forecast,
)
auto = chronos2_auto_covariate_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=6)
boosted = boosted_tree_forecast(df, "date", "price", covariate_cols=["temp"], prediction_length=6)
Leaderboards & Ensembles
from analysis3054 import model_leaderboard, simple_ensemble
leaderboard = model_leaderboard(df, "date", "price", covariate_cols=["temp"], prediction_length=8, models=["chronos2", "sarimax", "harmonic"])
ensemble = simple_ensemble(df, "date", "price", covariate_cols=["temp"], prediction_length=8, models=["chronos2", "harmonic"], weights=[0.7, 0.3])
Additional Utilities
ml_forecast: AutoGluon multiseries forecaster with optional quantiles.forecast_engine: Registry for plugging in custom model handlers.forecast_distillate_burn: Sector‑specific helper with automatic Chronos‑2 routing.statistics.py/stats.py: stationarity tests, autocorrelation utilities.plot.py/visualization.py: distribution, correlation, and seasonal plots.finance.py: Sharpe ratio, drawdown analytics, and return attribution.
Refer to USER_GUIDE.md for end‑to‑end walkthroughs, troubleshooting tips, and extended examples spanning every public function.
Extended Chronos-2 enhancement tour
Below are deeply annotated scenarios covering ingestion, covariates, diagnostics, and deployment patterns.
Enhanced Chronos-2 example 1
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 2
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 3
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 4
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 5
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 6
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 7
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 8
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 9
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 10
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 11
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 12
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 13
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 14
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 15
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 16
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 17
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 18
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 19
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 20
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 21
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 22
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 23
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 24
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 25
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 26
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 27
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 28
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 29
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Enhanced Chronos-2 example 30
from analysis3054 import chronos2_auto_covariate_forecast, chronos2_diagnostics
forecast = chronos2_auto_covariate_forecast(df, 'date', 'target',
covariate_cols=['driver_a', 'driver_b', 'driver_c', 'driver_d'],
prediction_length=48,
enable_covariate_gating=True,
scenario_packets=5,
quantiles=[0.05, 0.25, 0.5, 0.75, 0.95],
)
diagnostics = chronos2_diagnostics(forecast)
Detail: This recipe highlights attention visualizations, gating weights, and quantile calibration for experiment {i}.
Physics forecaster walkthroughs (expanded)
Physics deep dive 1
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 2
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 3
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 4
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 5
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 6
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 7
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 8
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 9
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 10
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 11
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 12
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 13
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 14
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 15
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 16
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 17
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 18
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 19
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 20
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 21
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 22
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 23
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 24
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Physics deep dive 25
from analysis3054.physics import mass_balance_forecast, thermal_decay_forecast, snowmelt_forecast
balance = mass_balance_forecast(flow_df, 'date', inflow_col='in', outflow_col='out', stock_col='level', prediction_length=21)
thermal = thermal_decay_forecast(temp_df, 'timestamp', temp_col='temp', ambient_col='ambient', prediction_length=18)
snow = snowmelt_forecast(snow_df, 'date', snowpack_col='snow', temp_col='temp', radiation_col='rad', prediction_length=14)
Insight: Physics set {i} shows how conservation and decay constraints stabilize long-horizon Chronos-2 hybrids.
Lightning API detailed pipelines
Lightning pipeline 1
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 2
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 3
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 4
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 5
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 6
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 7
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 8
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 9
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 10
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 11
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 12
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 13
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 14
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 15
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 16
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 17
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 18
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 19
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 20
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 21
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 22
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 23
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 24
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Lightning pipeline 25
from analysis3054.lightning import lightning_fast_forecast
from analysis3054.lightning.transforms import detrend, zscore, holiday_flags, calendar_spikes
job = lightning_fast_forecast(
source=f"s3://bucket/pipeline{i}.parquet",
date_col='ts',
target_col='signal',
prediction_length=90,
format='parquet',
stream=True,
batch_size=48,
transforms=[detrend(window=72), zscore(), holiday_flags(), calendar_spikes()],
)
Performance note: Pipeline {i} caches transforms and enables background streaming for sub-second p99 latency on 10k-row batches.
Comprehensive troubleshooting checklists
Checklist 1
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 1.
Checklist 2
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 2.
Checklist 3
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 3.
Checklist 4
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 4.
Checklist 5
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 5.
Checklist 6
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 6.
Checklist 7
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 7.
Checklist 8
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 8.
Checklist 9
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 9.
Checklist 10
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 10.
Checklist 11
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 11.
Checklist 12
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 12.
Checklist 13
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 13.
Checklist 14
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 14.
Checklist 15
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 15.
Checklist 16
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 16.
Checklist 17
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 17.
Checklist 18
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 18.
Checklist 19
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 19.
Checklist 20
- Verify time zones and frequency alignment.
- Inspect missingness heatmaps before fitting.
- Confirm covariate gating is enabled for noisy drivers.
- Use lightning cached transforms for repeated jobs.
- Export diagnostics to the run registry with tag set 20.
API reference addenda
API spotlight 1
chronos2_multiseries_forecastsupports 2 parallel series per worker.scenario_packetscan be tuned to 3 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 1.- Physics models accept custom bounds profile #1 via
enforce_bounds.
API spotlight 2
chronos2_multiseries_forecastsupports 4 parallel series per worker.scenario_packetscan be tuned to 4 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 2.- Physics models accept custom bounds profile #2 via
enforce_bounds.
API spotlight 3
chronos2_multiseries_forecastsupports 6 parallel series per worker.scenario_packetscan be tuned to 5 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 3.- Physics models accept custom bounds profile #3 via
enforce_bounds.
API spotlight 4
chronos2_multiseries_forecastsupports 8 parallel series per worker.scenario_packetscan be tuned to 6 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 4.- Physics models accept custom bounds profile #4 via
enforce_bounds.
API spotlight 5
chronos2_multiseries_forecastsupports 10 parallel series per worker.scenario_packetscan be tuned to 7 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 5.- Physics models accept custom bounds profile #5 via
enforce_bounds.
API spotlight 6
chronos2_multiseries_forecastsupports 12 parallel series per worker.scenario_packetscan be tuned to 8 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 6.- Physics models accept custom bounds profile #6 via
enforce_bounds.
API spotlight 7
chronos2_multiseries_forecastsupports 14 parallel series per worker.scenario_packetscan be tuned to 9 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 7.- Physics models accept custom bounds profile #7 via
enforce_bounds.
API spotlight 8
chronos2_multiseries_forecastsupports 16 parallel series per worker.scenario_packetscan be tuned to 10 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 8.- Physics models accept custom bounds profile #8 via
enforce_bounds.
API spotlight 9
chronos2_multiseries_forecastsupports 18 parallel series per worker.scenario_packetscan be tuned to 11 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 9.- Physics models accept custom bounds profile #9 via
enforce_bounds.
API spotlight 10
chronos2_multiseries_forecastsupports 20 parallel series per worker.scenario_packetscan be tuned to 12 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 10.- Physics models accept custom bounds profile #10 via
enforce_bounds.
API spotlight 11
chronos2_multiseries_forecastsupports 22 parallel series per worker.scenario_packetscan be tuned to 13 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 11.- Physics models accept custom bounds profile #11 via
enforce_bounds.
API spotlight 12
chronos2_multiseries_forecastsupports 24 parallel series per worker.scenario_packetscan be tuned to 14 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 12.- Physics models accept custom bounds profile #12 via
enforce_bounds.
API spotlight 13
chronos2_multiseries_forecastsupports 26 parallel series per worker.scenario_packetscan be tuned to 15 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 13.- Physics models accept custom bounds profile #13 via
enforce_bounds.
API spotlight 14
chronos2_multiseries_forecastsupports 28 parallel series per worker.scenario_packetscan be tuned to 16 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 14.- Physics models accept custom bounds profile #14 via
enforce_bounds.
API spotlight 15
chronos2_multiseries_forecastsupports 30 parallel series per worker.scenario_packetscan be tuned to 17 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 15.- Physics models accept custom bounds profile #15 via
enforce_bounds.
API spotlight 16
chronos2_multiseries_forecastsupports 32 parallel series per worker.scenario_packetscan be tuned to 18 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 16.- Physics models accept custom bounds profile #16 via
enforce_bounds.
API spotlight 17
chronos2_multiseries_forecastsupports 34 parallel series per worker.scenario_packetscan be tuned to 19 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 17.- Physics models accept custom bounds profile #17 via
enforce_bounds.
API spotlight 18
chronos2_multiseries_forecastsupports 36 parallel series per worker.scenario_packetscan be tuned to 20 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 18.- Physics models accept custom bounds profile #18 via
enforce_bounds.
API spotlight 19
chronos2_multiseries_forecastsupports 38 parallel series per worker.scenario_packetscan be tuned to 21 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 19.- Physics models accept custom bounds profile #19 via
enforce_bounds.
API spotlight 20
chronos2_multiseries_forecastsupports 40 parallel series per worker.scenario_packetscan be tuned to 22 for denser stress envelopes.lightning_fast_multiseriesroutes IO using policy token 20.- Physics models accept custom bounds profile #20 via
enforce_bounds.
FAQ (extended responses)
Extended answer 1
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 9.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 1.
Extended answer 2
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 10.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 2.
Extended answer 3
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 11.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 3.
Extended answer 4
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 12.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 4.
Extended answer 5
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 13.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 5.
Extended answer 6
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 14.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 6.
Extended answer 7
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 15.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 7.
Extended answer 8
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 16.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 8.
Extended answer 9
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 17.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 9.
Extended answer 10
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 18.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 10.
Extended answer 11
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 19.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 11.
Extended answer 12
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 20.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 12.
Extended answer 13
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 21.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 13.
Extended answer 14
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 22.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 14.
Extended answer 15
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 23.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 15.
Extended answer 16
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 24.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 16.
Extended answer 17
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 25.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 17.
Extended answer 18
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 26.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 18.
Extended answer 19
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 27.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 19.
Extended answer 20
- Question: How do I keep inference under 100ms? Answer: Prefer lightning ingestion, reuse warmed workers, trim quantile grids, and set batch_size to 28.
- Question: What’s the best way to mix physics and data-driven learning? Answer: Start with a physics prior, let Chronos-2 learn residuals, and clamp outputs with bounds set 20.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file analysis3054-0.3.17.tar.gz.
File metadata
- Download URL: analysis3054-0.3.17.tar.gz
- Upload date:
- Size: 179.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
92eb0cad55a18bf4e5fa12ce31e6d4d966fda6b80f93dfdc24e1df3e7f5ed0ec
|
|
| MD5 |
a122495c67028590a04d5f00cd9c041a
|
|
| BLAKE2b-256 |
93c51eeadbaf88cfc2b09d36feec5854fdcf9d3f2100a1920e8e91be944d00a5
|
File details
Details for the file analysis3054-0.3.17-py3-none-any.whl.
File metadata
- Download URL: analysis3054-0.3.17-py3-none-any.whl
- Upload date:
- Size: 173.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6e1a6542179f2fee30ff4c16bdccbea8e8610480e8cdccd66bfe90c53b936103
|
|
| MD5 |
926ba1bd4bec88d83870ed2e71cd33ee
|
|
| BLAKE2b-256 |
3de3749e80f45b16f4910e91dbb10994fac533ac15ea85f3aaffdccf17d2c8b7
|