Available Templates¶
ExpOps ships with two built-in project templates. Use the --template flag with expops create to start from either one.
sklearn-basic¶
A minimal, self-contained project for getting started with ExpOps. All ML logic lives in custom @step-decorated Python functions.
Best for: Learning the platform, experimenting with custom model code.
What's included:
configs/project_config.yaml— basic pipeline config with a local SQLite backendsrc/models/model.py— custom train/evaluate steps using@stepsrc/charts/plot_metrics.py— a@chart()function for static PNG outputrequirements.txt— sklearn and standard dependenciesdata/train.csv— small example dataset
See the sklearn-basic template guide for a full walkthrough.
sklearn-component¶
A template built around the sklearn component library and matplotlib component library. All ML logic is driven by component: keys in the config — no custom Python step code required.
Best for: Standard sklearn workflows, quickly trying different estimators, learning the component system.
What's included:
configs/project_config.yaml— pipeline usingsklearn.*andmatplotlib.*componentssrc/plot_iterative_loss.js— Chart.js dynamic chart for MLP training lossrequirements.txt—expops-sklearnandexpops-matplotlibdata/train.csv— small example dataset
To swap the estimator, change the class name in the component: string and update parameters as needed:
premier-league¶
A comprehensive example project that demonstrates the full platform: distributed execution, dynamic JS charts, multiple environments, and a GCP backend.
Best for: Understanding advanced configuration, reference for production-style setups.
What's included:
- Full cluster config (
configs/compute_config.yaml) for SLURM/Dask execution - Multiple pipeline environments
- Dynamic Chart.js visualisation (
src/plot_metrics.js) - GCP backend configuration (Firestore + GCS)
See the Premier League template guide for details.