{"id":26875,"library":"dagster-mlflow","title":"dagster-mlflow","description":"Dagster integration with MLflow, enabling tracking of ML experiments, models, and parameters within Dagster pipelines. Current version 0.29.3, supports Python >=3.10,<3.15. Releases follow Dagster core release cadence (approximately bi-weekly).","status":"active","version":"0.29.3","language":"python","source_language":"en","source_url":"https://github.com/dagster-io/dagster/tree/master/python_modules/libraries/dagster-mlflow","tags":["dagster","mlflow","mlops","experiment-tracking","machine-learning"],"install":[{"cmd":"pip install dagster-mlflow","lang":"bash","label":"Default install"}],"dependencies":[{"reason":"Core Dagster framework required","package":"dagster","optional":false},{"reason":"MLflow tracking integration","package":"mlflow","optional":false}],"imports":[{"note":"Standard import for the MLflow tracking resource","wrong":"","symbol":"mlflow_tracking","correct":"from dagster_mlflow import mlflow_tracking"},{"note":"Context manager for logging run end times","wrong":"","symbol":"EndTimeLoggedRun","correct":"from dagster_mlflow import EndTimeLoggedRun"},{"note":"Type alias for the MLflow run context","wrong":"","symbol":"MLflowRunContext","correct":"from dagster_mlflow import MLflowRunContext"}],"quickstart":{"code":"from dagster import job, op, resource\nfrom dagster_mlflow import mlflow_tracking\n\n@op(required_resource_keys={'mlflow'})\ndef train_model(context):\n    mlflow = context.resources.mlflow\n    mlflow.log_param('epochs', 10)\n    mlflow.log_metric('accuracy', 0.95)\n\n@resource(config_schema={'experiment_name': str})\ndef mlflow_resource(init_context):\n    import mlflow\n    mlflow.set_experiment(init_context.resource_config['experiment_name'])\n    mlflow.start_run()\n    yield mlflow\n    mlflow.end_run()\n\n@job(resource_defs={'mlflow': mlflow_resource})\ndef my_ml_job():\n    train_model()\n\nif __name__ == '__main__':\n    my_ml_job.execute_in_process(\n        run_config={\n            'resources': {\n                'mlflow': {\n                    'config': {'experiment_name': 'demo'}\n                }\n            }\n        }\n    )","lang":"python","description":"Minimal working example: defines an op logging params/metrics, a resource wrapping MLflow tracking, and a job to run it."},"warnings":[{"fix":"Use `from dagster_mlflow.resources import mlflow_resource` and configure as a resource.","message":"The `mlflow_tracking` resource is deprecated in favor of manually creating an MLflow resource using `dagster_mlflow.resources.mlflow_resource`. Do not use `mlflow_tracking` in new code.","severity":"gotcha","affected_versions":"0.28.0+"},{"fix":"Replace with `from dagster_mlflow import EndTimeLoggedRun` and use `with EndTimeLoggedRun(context, mlflow_run=context.resources.mlflow):`","message":"In dagster-mlflow 0.28.0+, the `mlflow_run` context manager changed signature. Old usage `with mlflow_run(context) as run:` no longer works; use `EndTimeLoggedRun`.","severity":"breaking","affected_versions":">=0.28.0"},{"fix":"Directly access `context.resources.mlflow` instead of relying on `MLflowRunContext`.","message":"The `MLflowRunContext` type alias may be removed in future versions. Consider using `context.resources.mlflow` directly.","severity":"deprecated","affected_versions":"all"}],"env_vars":null,"last_verified":"2026-05-01T00:00:00.000Z","next_check":"2026-07-30T00:00:00.000Z","problems":[{"fix":"Run `pip install dagster-mlflow` in the correct environment.","cause":"dagster-mlflow not installed or wrong Python environment.","error":"ModuleNotFoundError: No module named 'dagster_mlflow'"},{"fix":"Define your own MLflow resource as shown in the quickstart, or use `from dagster_mlflow.resources import mlflow_resource`.","cause":"Using the deprecated `mlflow_tracking` resource incorrectly or mixing old and new APIs.","error":"AttributeError: 'mlflow_tracking' object has no attribute 'log_param'"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}