A Julia client for the MLflow REST API. Track experiments, log metrics and parameters, manage models, and more — directly from Julia.
Tested against MLflow 3.11.1.
using Pkg
Pkg.add("MLFlowClient")using MLFlowClient
# Connect to an MLflow server
mlf = MLFlow("http://localhost:5000")
# Create an experiment and a run
experiment_id = createexperiment(mlf, "my-experiment")
run = createrun(mlf, experiment_id)
# Log parameters, metrics, and tags
logparam(mlf, run, "learning_rate", "0.01")
logmetric(mlf, run, "accuracy", 0.95)
setruntag(mlf, run, "model_type", "linear")
# Complete the run
updaterun(mlf, run; status=RunStatus.FINISHED)MLFlowClient implements the full MLflow REST API (v2.0 and v3.0) and the Authentication REST API:
| Area | Operations |
|---|---|
| Experiments | Create, get, search, update, delete, restore, tags |
| Runs | Create, get, search, update, delete, restore, tags |
| Logging | Metrics, parameters, batch, model, inputs |
| Artifacts | List, upload, download, delete, multipart upload, presigned URLs |
| Registered models | Create, get, search, rename, update, delete, tags, aliases |
| Model versions | Create, get, search, update, delete, transition stage, tags |
| Scorers | Register, list, get, delete (v3.0) |
| Gateway | Secrets, model definitions, endpoints, bindings, tags, budgets (v3.0) |
| Prompt optimization | Create, get, search, cancel, delete jobs (v3.0) |
| Webhooks | Create, get, list, update, delete, test |
| Users & permissions | Create, get, update, delete users; experiment and model permissions |
# Basic auth
mlf = MLFlow("http://localhost:5000"; username="admin", password="password")
# Token-based auth
mlf = MLFlow("http://localhost:5000"; headers=Dict("Authorization" => "Bearer <token>"))Environment variables MLFLOW_TRACKING_URI, MLFLOW_TRACKING_USERNAME, and MLFLOW_TRACKING_PASSWORD are respected when set.
See the full documentation for the complete API reference and tutorial.