Skip to content

create_experiment_tracker

gepa.logging.experiment_tracker.create_experiment_tracker(use_wandb: bool = False, wandb_api_key: str | None = None, wandb_init_kwargs: dict[str, Any] | None = None, use_mlflow: bool = False, mlflow_tracking_uri: str | None = None, mlflow_experiment_name: str | None = None) -> ExperimentTracker

Create an experiment tracker based on the specified backends.

Parameters:

Name Type Description Default
use_wandb bool

Whether to use wandb

False
use_mlflow bool

Whether to use mlflow

False
wandb_api_key str | None

API key for wandb

None
wandb_init_kwargs dict[str, Any] | None

Additional kwargs for wandb.init()

None
mlflow_tracking_uri str | None

Tracking URI for mlflow

None
mlflow_experiment_name str | None

Experiment name for mlflow

None

Returns:

Type Description
ExperimentTracker

ExperimentTracker instance

Note

Both wandb and mlflow can be used simultaneously if desired.

Source code in gepa/logging/experiment_tracker.py
def create_experiment_tracker(
    use_wandb: bool = False,
    wandb_api_key: str | None = None,
    wandb_init_kwargs: dict[str, Any] | None = None,
    use_mlflow: bool = False,
    mlflow_tracking_uri: str | None = None,
    mlflow_experiment_name: str | None = None,
) -> ExperimentTracker:
    """
    Create an experiment tracker based on the specified backends.

    Args:
        use_wandb: Whether to use wandb
        use_mlflow: Whether to use mlflow
        wandb_api_key: API key for wandb
        wandb_init_kwargs: Additional kwargs for wandb.init()
        mlflow_tracking_uri: Tracking URI for mlflow
        mlflow_experiment_name: Experiment name for mlflow

    Returns:
        ExperimentTracker instance

    Note:
        Both wandb and mlflow can be used simultaneously if desired.
    """
    return ExperimentTracker(
        use_wandb=use_wandb,
        wandb_api_key=wandb_api_key,
        wandb_init_kwargs=wandb_init_kwargs,
        use_mlflow=use_mlflow,
        mlflow_tracking_uri=mlflow_tracking_uri,
        mlflow_experiment_name=mlflow_experiment_name,
    )