Skip to content

ClearML Integration

YOLOmatic integrates with ClearML for experiment tracking. When ClearML is configured, YOLOmatic automatically logs hyperparameters, training metrics, model artifacts, and dataset summaries to your ClearML workspace — giving you a full audit trail and easy run comparison across experiments.

ClearML is optional. If it is not configured or the service is unavailable, training prompts whether to continue without it or cancel.


Setup

1. Install ClearML (if not already present)

ClearML is included in YOLOmatic's dependency set. Verify with:

uv run python -c "import clearml; print(clearml.__version__)"

2. Connect to a ClearML Server

You can use the hosted ClearML Community server (free tier) or self-host a ClearML Server.

Initialize credentials by running:

uv run clearml-init

This opens a browser-based flow to generate an API key and writes ~/clearml.conf. Follow the prompts to complete authentication.

Alternatively, set credentials via environment variables:

CLEARML_API_HOST=https://api.clear.ml
CLEARML_WEB_HOST=https://app.clear.ml
CLEARML_FILES_HOST=https://files.clear.ml
CLEARML_API_ACCESS_KEY=your_access_key
CLEARML_API_SECRET_KEY=your_secret_key

3. Verify the Connection

uv run clearml-task --help

No error output means the connection is live.


What YOLOmatic Logs

When ClearML is enabled, each training run creates a Task in your ClearML project with:

Category Content
Hyperparameters All YOLO training parameters (epochs, lr0, batch, imgsz, optimizer, augmentation settings, etc.)
Scalars Per-epoch train/val loss, mAP, precision, recall — plotted automatically
Artifacts Best checkpoint (best.pt), last checkpoint (last.pt), training config YAML
Dataset summary Class distribution, split sizes, dataset path
System info GPU model, VRAM, CUDA version, Python version

Configuring ClearML in YOLOmatic

ClearML behavior is controlled by the clearml section in configs/yolomatic_settings.yaml:

clearml:
  enabled: true
  require_configured: false
  project_name_template: "{family} Training - {model}"
  task_name_format: "%Y-%m-%d-%H-%M"
  upload_final_model: true
  upload_artifacts: true
  log_hyperparameters: true
  log_dataset_summary: true
Key Default Description
enabled true Master switch; set to false to disable ClearML globally
require_configured false If true, training is blocked when ClearML is not configured — useful for CI workflows
project_name_template "{family} Training - {model}" ClearML project name; {family} and {model} are substituted at runtime
task_name_format "%Y-%m-%d-%H-%M" Python strftime format for the task name
upload_final_model true Upload best.pt as a ClearML model artifact
upload_artifacts true Upload the training config YAML and other run artifacts
log_hyperparameters true Log all training hyperparameters to the Task
log_dataset_summary true Log dataset class counts and split sizes

See Settings File Reference for the full description of all keys.


Project Naming

YOLOmatic generates ClearML project names from the template:

{family} Training - {model}

For example, training YOLO26 large produces YOLO26 Training - yolo26l. Customize project_name_template to group experiments differently (e.g., by dataset or team):

project_name_template: "MyDataset/{family}/{model}"

Viewing Results

After training starts, open the ClearML web UI (https://app.clear.ml/ or your self-hosted instance) and navigate to the project. Each run appears as a Task with:

  • Scalars tab: loss curves, mAP, precision/recall charts
  • Artifacts tab: trained checkpoints
  • Hyperparameters tab: all training parameters used
  • Console tab: captured stdout from the trainer

Comparing Runs

Select two or more Tasks → Compare to overlay scalar plots and diff hyperparameters side-by-side.


Disabling ClearML for a Single Run

You can bypass ClearML for one run without changing the settings file. When the TUI asks whether to proceed without ClearML, select Continue without ClearML.

To disable globally, set enabled: false in configs/yolomatic_settings.yaml:

clearml:
  enabled: false

Related pages: Settings File, Configuration, TensorBoard.