> For the complete documentation index, see [llms.txt](https://docs.roboflow.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboflow.com/train/versions-trainings-and-models.md).

# Versions, Trainings, and Models

Roboflow keeps three concepts separate: a dataset version, a training, and a model. Understanding how they relate helps you train, compare, and deploy models.

A dataset version is an immutable snapshot of your dataset, including its images, splits, preprocessing, and augmentation. You generate a new version only when the snapshot itself changes.

A training is a single training run you start on a version with a chosen architecture and settings. A version can have one or more trainings.

A model is a trained network produced by a training. A single training produces one or more models (ex: a [Neural Architecture Search](/train/neural-architecture-search.md) produces several candidate models).

```
Dataset Version
   │  start one or more trainings
   ▼
Training
   │  produces one or more models
   ▼
Model
```

You can start more than one training from the same version, for example to compare architectures, without regenerating the data. You do not need a new version to train another model. Generate a new version only when the underlying data or preprocessing changes.

Each model is deployed and evaluated on its own, and is referenced by a model ID when you deploy it or run inference. A model trained on a version has its own per-model ID of the form `{workspace}/{model-slug}`, so a version with several models gives each a distinct ID (for example, you pick one in a Workflow model block). Legacy single-model versions are addressed by `{project}/{version}` instead. See [Model IDs](/train/model-ids.md) for the structure of both formats, and [Supported Models](/deploy/supported-models.md) for how to call a trained model.

{% hint style="info" %}
A version with a single model is the common case of this relationship: one training that produced one model. The same structure scales to many trainings and many models on the same version.
{% endhint %}
