# Tutorial - Computer Vision

Learn how to build production-ready ML workflows on Valohai through a practical example. This series takes you beyond "Hello World" to master the features that make ML workflows reproducible, scalable, and collaborative.

## Why This Tutorial Series?

You've run your first Valohai execution. Now what?

This series teaches you how to transform any ML project into a production-ready workflow. We use YOLOv8 (a computer vision model) as our example, but **you don't need any computer vision knowledge**. The patterns you'll learn apply to any ML project—from CV, geospatial data, NLP to time series forecasting.

By the end, you'll have built a complete ML pipeline that:

* Runs reproducibly on any infrastructure
* Tracks all experiments automatically
* Passes data between training and inference steps
* Can be scheduled, monitored, and iterated on by your team

## What You'll Build

Starting with a simple training script, you'll progressively add Valohai features to create a full pipeline:

### 1. [Defining Jobs](https://docs.valohai.com/getting-started/intro/jobs)

Transform a Python script into a Valohai execution. You'll run YOLOv8 training on remote machines while Valohai automatically versions every output file and creates aliases for your trained models.

### 2. [Using Parameters](https://docs.valohai.com/getting-started/intro/parameters)

Make your training configurable without touching code. Control hyperparameters from the UI, compare different model configurations, and track which settings produced each model.

### 3. [Logging Metrics](https://docs.valohai.com/getting-started/intro/metrics)

Track training progress in real-time. Print JSON from your scripts to automatically log metrics, then visualize and compare performance across experiments.

### 4. [Building Pipelines](https://docs.valohai.com/getting-started/intro/pipelines)

Connect multiple jobs into automated workflows. Build a train-and-predict pipeline where outputs flow seamlessly between steps—no manual file handling needed.

### 5. [Working with Data](https://docs.valohai.com/getting-started/intro/data)

Master data management. Load datasets from cloud storage, chain outputs from previous jobs, and override data sources at runtime for maximum flexibility.

## Before You Start

**Required:**

* Completed the [Quickstart guide](https://docs.valohai.com/getting-started/quickstart)
* A Valohai project connected to a Git repository
* Basic Python knowledge

**Not Required:**

* YOLOv8 or computer vision experience
* DevOps or infrastructure knowledge

## How to Use This Series

While each tutorial can stand alone, we recommend following them in order. Each builds on concepts from the previous one, gradually introducing more powerful features.

> 💡 **About YOLOv8:** We use this object detection model because it generates multiple output files during training (logs, checkpoints, and a `best.onnx` model file). This makes it perfect for demonstrating Valohai's file handling and versioning capabilities. The concepts apply to any ML framework.

Ready? Let's start by [defining your first job](https://docs.valohai.com/getting-started/intro/jobs) →
