Bayesian workflows that keep every decision visible.
Contract-first modelling for repeated-measures and hierarchical behavioural data, with predictive diagnostics, sensitivity analysis, reproducibility, and dynamic pupillometry.
from gp3bayespy import (
create_model_contract,
audit_model_readiness,
)
contract = create_model_contract(
family="binary",
outcome_col="selected",
participant_col="participant_id",
condition_col="condition",
)
audit = audit_model_readiness(data, contract)
print(audit.status)
Choose your path¶
Trial-level multilevel mediation
Estimate within- and between-participant gaze-mediated pathways without collapsing repeated trials, with explicit priors, diagnostics, and estimability gates.
Open mediation workflow → Behavioural modelsBinary & duration workflows
Simulate, prepare, specify, fit, diagnose, predict, recover, and report hierarchical outcomes.
Start a model → Predictive evidenceDiagnostics, calibration & PSIS-LOO
Inspect out-of-sample performance, calibration, uncertainty, influence, and comparison without automatic selection.
Inspect evidence → Time-course modellingDynamic pupillometry
Model pupil trajectories with explicit measurement context, temporal diagnostics, binocular extensions, GP models, and sensitivity workflows.
Explore pupil workflows →One workflow, explicit gates¶
gp3bayespy deliberately keeps these stages separate. A fitted model is not treated as proof of convergence, adequacy, robustness, causal identification, or substantive interpretation.
Install in seconds¶
python -m pip install gp3bayespy
NumPy, pandas, and SciPy workflows with no Bayesian backend required.
python -m pip install "gp3bayespy[bayes,plots]"
Adds PyMC, CmdStanPy, ArviZ/xarray, and Matplotlib integrations.
python -m pip install "gp3bayespy[all]"
Reproduces the complete development, documentation, plotting, and validation environment.
What is inside?¶
-
Trial-level multilevel mediation
Within/between indirect effects, explicit missingness policy, non-Gaussian mediator families, convergence gating, and serial/moderated extensions.
-
Contracts & readiness
Define the model family, mappings, assumptions, priors, and readiness gates before fitting.
-
Posterior & predictive validation
Sampler diagnostics, posterior predictive checks, ROC/PR, calibration, scoring, uncertainty, and prediction surfaces.
-
PSIS-LOO & influence
Pointwise and grouped influence, Pareto-k diagnostics, ELPD comparison, and governed model weights.
-
Sensitivity & recovery
Prior-scale sensitivity, power-scaling, structural alternatives, group deletion, SBC, and parameter recovery.
-
Dynamic pupillometry
Preparation, baseline/gaze/luminance sensitivity, time-course fitting, temporal validation, binocular models, GP trajectories, and robust extensions.
-
Reproducible evidence
Analysis manifests, model cards, evidence inventories, publication bundles, registries, dashboards, and transformation replay.
See the package, not just the API¶
Current main confidence¶
These are the frozen validation metrics for v0.6.1 and its corresponding scientific core. v0.6.2 is a documentation-only maintenance update published on 21 October 2026; no experimental source-only utilities were promoted to a stable Bayesian API. The historical v0.5.0 release remains immutable and retains its original release-time validation record.
Frozen v0.5.0 release record¶
The frozen parity baseline remains gp3bayes 0.5.0. The historical 0.6.1 validation record is available in Release v0.6.1, while GitHub v0.6.2 documents the current maintenance release; the archived GitHub v0.5.0 release preserves the original release state. The machine-readable closure evidence is documented under R → Python parity.
Archived software DOI: 10.5281/zenodo.22150746. See Citing gp3bayespy for citation-ready metadata.
Evidence is not an automatic conclusion
gp3bayespy does not automatically select a preferred model, exclude participants,
certify adequacy, establish causality, or infer cognitive or emotional states.
Those remain analyst decisions supported by the relevant evidence.