Skip to content

log_model

yohou_mlflow.log_model(forecaster, name=None, *, registered_model_name=None, await_registration_for=300, extra_trusted_types=None, extra_trusted_prefixes=None, extra_version_rules=None, signature=None, conda_env=None, pip_requirements=None, extra_pip_requirements=None, metadata=None, **kwargs)

Log a fitted yohou forecaster as an MLflow model, optionally registering it.

Parameters

Name Type Description Default
forecaster yohou forecaster

A fitted yohou forecaster.

required
name str or None

Name of the logged model, as for MLflow's built-in flavours.

None
registered_model_name str or None

When given, also create a version of this registered model.

None
await_registration_for int

Seconds to wait for the model version to become ready.

300
extra_trusted_types iterable of str or None

See save_model.

None
extra_trusted_prefixes iterable of str or None

See save_model.

None
extra_version_rules mapping of str to str or None

See save_model.

None
signature ModelSignature or None

See save_model.

None
conda_env (dict, str or None)

See save_model.

None
pip_requirements iterable of str, str or None

See save_model.

None
extra_pip_requirements iterable of str, str or None

See save_model.

None
metadata dict or None

Custom metadata stored in the MLmodel file.

None
**kwargs Any

Passed to mlflow.models.Model.log.

{}

Returns

Type Description
ModelInfo

Metadata of the logged model, including its model_uri.

See Also

  • save_model : The checks every logged model goes through.
  • load_model : Load a logged or registered forecaster.

Source Code

Source code in src/yohou_mlflow/_persistence.py
def log_model(
    forecaster: Any,
    name: str | None = None,
    *,
    registered_model_name: str | None = None,
    await_registration_for: int = 300,
    extra_trusted_types: Iterable[str] | None = None,
    extra_trusted_prefixes: Iterable[str] | None = None,
    extra_version_rules: Mapping[str, str] | None = None,
    signature: ModelSignature | None = None,
    conda_env: Any = None,
    pip_requirements: Any = None,
    extra_pip_requirements: Any = None,
    metadata: dict[str, Any] | None = None,
    **kwargs: Any,
) -> ModelInfo:
    """Log a fitted yohou forecaster as an MLflow model, optionally registering it.

    Parameters
    ----------
    forecaster : yohou forecaster
        A fitted yohou forecaster.
    name : str or None, default=None
        Name of the logged model, as for MLflow's built-in flavours.
    registered_model_name : str or None, default=None
        When given, also create a version of this registered model.
    await_registration_for : int, default=300
        Seconds to wait for the model version to become ready.
    extra_trusted_types : iterable of str or None, default=None
        See `save_model`.
    extra_trusted_prefixes : iterable of str or None, default=None
        See `save_model`.
    extra_version_rules : mapping of str to str or None, default=None
        See `save_model`.
    signature : mlflow.models.ModelSignature or None, default=None
        See `save_model`.
    conda_env : dict, str or None, default=None
        See `save_model`.
    pip_requirements : iterable of str, str or None, default=None
        See `save_model`.
    extra_pip_requirements : iterable of str, str or None, default=None
        See `save_model`.
    metadata : dict or None, default=None
        Custom metadata stored in the ``MLmodel`` file.
    **kwargs : Any
        Passed to ``mlflow.models.Model.log``.

    Returns
    -------
    mlflow.models.model.ModelInfo
        Metadata of the logged model, including its ``model_uri``.

    See Also
    --------
    save_model : The checks every logged model goes through.
    load_model : Load a logged or registered forecaster.
    """
    import yohou_mlflow

    return Model.log(
        artifact_path=None,
        name=name,
        flavor=yohou_mlflow,
        registered_model_name=registered_model_name,
        await_registration_for=await_registration_for,
        metadata=metadata,
        forecaster=forecaster,
        extra_trusted_types=extra_trusted_types,
        extra_trusted_prefixes=extra_trusted_prefixes,
        extra_version_rules=extra_version_rules,
        signature=signature,
        conda_env=conda_env,
        pip_requirements=pip_requirements,
        extra_pip_requirements=extra_pip_requirements,
        **kwargs,
    )