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.14.0.
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, guardrails (v3.0) |
| Prompt optimization | Create, get, search, cancel, delete jobs (v3.0) |
| Label schemas | Create, get, get-by-name, list, update, delete (v3.0) |
| Review queues | Create, get, list, update, delete, items add/remove/list/set-status (v3.0) |
| Webhooks | Create, get, list, update, delete, test |
| Users & RBAC | Users, roles, role permissions, role assignments, user permissions (v3.0) |
| Workspaces | List, create, get, update, delete (v3.0, requires --enable-workspaces) |
# 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.