For a real end-to-end verification path, use the repo smoke target:
make smoke_mmm
If you are working on the repo itself, the main local verification commands
are:
make testmake verify_local
make verify_package
Runtime defaults for restricted environments
Some local runs need writable cache directories. If you hit PyTensor compiledir
or cache-permission issues, export the same defaults used by the repo
verification scripts:
This page shows the fastest direct path from a pandas dataset to a fitted
PanelMMM.
If you have not prepared your dataset yet, read
Data Preparation first.
Load a dataset
The repository includes bundled demo datasets under data/demo/. The
timeseries bundle is the simplest starting point because it has no extra panel
dimensions.
The bundled demo config at data/demo/timeseries/config.yml is a working
starting point. It already points to a combined dataset with
data.dataset_path.
If you rely on data.dataset_path, either split the combined dataset in Python
before fitting, or load it once in Python and pass the same X and y into
both build_mmm_from_yaml(...) and fit(...).
Optional top-level YAML blocks
The builder recognises several optional top-level sections in addition to
data, target, and media.
Key
Purpose
dimensions
Panel-dimension columns such as geo or brand
scaling
Optional scaling rules for target and channels
effects
Additive effects to attach before model build
priors
Model-level priors passed into PanelMMM
fit
Sampler defaults used by the runner or by Python overrides
holidays
Holiday/event configuration applied before build
original_scale_vars
Add original-scale deterministic variables after build
inference_data
Attach existing inference data if the file exists
calibration
Apply calibration steps after the model is built
Override config values from Python
Use model_kwargs when you want to keep most settings in YAML but override a
subset from Python.
For example, you can override the fit config for a lighter quickstart run:
model_kwargs takes precedence over the YAML defaults.
Next steps
Read Quickstart: Pipeline Runner if you want staged
artefacts and manifests instead of an in-memory fit only.
Read Data Preparation for dataset column and
layout requirements.
Quickstart: Pipeline Runner
Use the pipeline runner when you want a full staged run instead of only an
in-memory model fit.
The runner writes:
a run manifest
copied and resolved config files
fitted model artefacts
posterior predictive assessment outputs
decomposition, diagnostics, and response-curve artefacts
Fastest first run: bundled demo
From the repository root, the quickest way to see a real structured run is the
demo launcher:
python3 runme.py --demo timeseries
Other bundled demos are:
geo_panel
geo_brand_panel
List them explicitly with:
python3 runme.py --list-demos
runme.py is a convenience wrapper around the structured pipeline. It resolves
the demo config under data/demo/<demo_name>/config.yml and runs the pipeline
for you.