-
Notifications
You must be signed in to change notification settings - Fork 372
Open
Labels
Description
PyMC-Marketing have a list of known failures (see below), and
the codebase uses at least four different serialization patterns with no unified
contract, making it difficult for users to create custom serializable components.
Current Serialization Patterns (4+, inconsistent)
to_dict()/from_dict()+register_deserialization— adstock, saturation, HSGP, fourier, events/Basis- Pydantic
model_dump()/model_validate()— HSGPKwargs, Scaling, LinearTrend, MuEffect subclasses singledispatchserializers — per-type handlers for MuEffects inmultidimensional.py- Manual JSON encoding —
create_idata_attrs()/attrs_to_init_kwargs()on MMM
Design doc (still WIP): https://github.com/pymc-labs/pymc-marketing/blob/isofer/2379-update-serialization-process/docs/plans/2026-03-05-serialization-overhaul-design.md
Reactions are currently unavailable