Skip to main content

WildTrain CLI Reference

Complete command-line interface reference for the wildtrain CLI.

WildTrain uses Typer with nested subcommand groups for training, evaluation, model registration, pipelines, and visualization.

wildtrain [COMMAND_GROUP] [COMMAND] [OPTIONS]

Global Options

OptionDescription
-v, --verboseEnable verbose logging
-c, --config-dirConfiguration directory
--helpShow help message and exit

train — Training Commands

Train detection and classification models.

train classifier

Train a classification model using PyTorch Lightning.

wildtrain train classifier [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to training configuration YAML file

Example:

wildtrain train classifier -c configs/classification/classification_train.yaml

See Classification Training Config for config details.


train detector

Train an object detection model (YOLO via Ultralytics).

wildtrain train detector [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to training configuration YAML file

Example:

wildtrain train detector -c configs/detection/yolo_configs/yolo_train.yaml

See Detection Training Config for config details.


evaluate — Evaluation Commands

Evaluate trained models on test/validation datasets.

evaluate classifier

Evaluate a classification model using a YAML config file.

wildtrain evaluate classifier [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to classification evaluation YAML config
--debugboolfalseEnable debug mode

Example:

wildtrain evaluate classifier -c configs/classification/classification_eval.yaml

evaluate detector

Evaluate a YOLO detection model using a YAML config file.

wildtrain evaluate detector [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to YOLO evaluation YAML config
--debugboolfalseEnable debug mode

Example:

wildtrain evaluate detector -c configs/detection/detection_sweep.yaml

evaluate yolo-model

Run direct Ultralytics YOLO model validation (bypass WildTrain wrapper).

wildtrain evaluate yolo-model [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to YOLO evaluation YAML config

The config YAML should contain a model key (path to weights) plus any Ultralytics val() parameters.


register — Model Registration Commands

Register trained models to the MLflow Model Registry.

register classifier

Register a classification model to MLflow.

wildtrain register classifier [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATHNonePath to registration configuration file
--weights-pathPATHNonePath to model checkpoint file
-n, --namestrclassifierModel name for registration
-b, --batch-sizeint8Batch size for inference
--mlflow-uristrhttp://localhost:5000MLflow tracking server URI

You can use either --config or provide options directly. When using --config, don't provide other options.

Examples:

# Using config file
wildtrain register classifier -c configs/registration/classifier_registration_example.yaml

# Using direct options
wildtrain register classifier --weights-path model.ckpt --name my_classifier --mlflow-uri http://localhost:5000

See Registration Config for config details.


register detector

Register a detection model to MLflow.

wildtrain register detector CONFIG_PATH
ArgumentTypeDescription
CONFIG_PATHPATHPath to detector registration configuration file

Example:

wildtrain register detector configs/registration/detector_registration_example.yaml

pipeline — Pipeline Commands

Run full train + eval pipelines in a single command.

pipeline detection

Run the full detection pipeline (train + evaluate).

wildtrain pipeline detection [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATHNonePath to unified detection pipeline YAML config

Example:

wildtrain pipeline detection -c configs/detection/detection_sweep.yaml

pipeline classification

Run the full classification pipeline (train + evaluate).

wildtrain pipeline classification [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATHNonePath to unified classification pipeline YAML config

Example:

wildtrain pipeline classification -c configs/classification/classification_pipeline_config.yaml

config — Configuration Management

Validate and generate configuration templates.

config validate

Validate a configuration file against Pydantic models.

wildtrain config validate CONFIG_PATH [OPTIONS]
Argument / OptionTypeDefaultDescription
CONFIG_PATHPATH(required)Path to configuration file
-t, --typestrclassificationConfig type (see below)

Supported config types: classification, detection, classification_eval, detection_eval, classification_visualization, detection_visualization, pipeline, detector_registration, classifier_registration, model_registration

Example:

wildtrain config validate configs/classification/classification_train.yaml --type classification

config template

Generate a default YAML configuration template.

wildtrain config template CONFIG_TYPE [OPTIONS]
Argument / OptionTypeDefaultDescription
CONFIG_TYPEstr(required)Configuration type to generate template for
-s, --savePATHNoneSave template to file (prints to stdout if omitted)

Example:

# Print template to console
wildtrain config template classification

# Save to file
wildtrain config template detection -s my_detection_config.yaml

dataset — Dataset Commands

Dataset analysis and statistics.

dataset stats

Compute dataset statistics (mean, standard deviation) for normalization.

wildtrain dataset stats DATA_DIR [OPTIONS]
Argument / OptionTypeDefaultDescription
DATA_DIRPATH(required)Path to dataset directory
--splitstrtrainSplit to compute statistics for
-o, --outputPATHNoneOutput file for statistics JSON

Example:

wildtrain dataset stats D:/data/roi_dataset --split train -o stats.json

visualize — Visualization Commands

Upload model predictions to FiftyOne for interactive visualization.

visualize classifier-predictions

Upload classifier predictions to a FiftyOne dataset.

wildtrain visualize classifier-predictions [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to classification visualization YAML config

Example:

wildtrain visualize classifier-predictions -c configs/classification/classification_visualization.yaml

visualize detector-predictions

Upload detector predictions to a FiftyOne dataset.

wildtrain visualize detector-predictions [OPTIONS]
OptionTypeDefaultDescription
-c, --configPATH""Path to detection visualization YAML config

Example:

wildtrain visualize detector-predictions -c configs/detection/visualization.yaml

run-server — Inference Server

Start a LitServe-based inference server for model serving.

wildtrain run-server [OPTIONS]
OptionTypeDefaultDescription
--portint4141Port to run the server on
-wint1Number of workers per device
-c, --configPATHNonePath to inference config file

When a config file is provided, it sets MLflow environment variables and overrides port/workers.

Example:

# Using config file
wildtrain run-server -c configs/inference.yaml

# Using direct options
wildtrain run-server --port 4141 -w 2

Quick Reference

CommandDescription
wildtrain train classifier -c CONFIGTrain a classifier
wildtrain train detector -c CONFIGTrain a YOLO detector
wildtrain evaluate classifier -c CONFIGEvaluate a classifier
wildtrain evaluate detector -c CONFIGEvaluate a detector
wildtrain register classifier -c CONFIGRegister classifier to MLflow
wildtrain register detector CONFIGRegister detector to MLflow
wildtrain pipeline detection -c CONFIGFull detection pipeline
wildtrain pipeline classification -c CONFIGFull classification pipeline
wildtrain config validate CONFIG --type TYPEValidate a config file
wildtrain config template TYPEGenerate config template
wildtrain dataset stats DATA_DIRCompute dataset stats
wildtrain visualize classifier-predictions -c CONFIGVisualize classifier predictions
wildtrain visualize detector-predictions -c CONFIGVisualize detector predictions
wildtrain run-server -c CONFIGStart inference server

For configuration file details, see Configuration Reference.
For shell scripts, see WildTrain Scripts.