# imoonlab/yolov13 architecture

> Architecture diagram of the GitHub repository imoonlab/yolov13, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-28). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/imoonlab/yolov13
- Repository: https://github.com/imoonlab/yolov13

## Overview

Ultralytics is a computer-vision framework whose README centers on YOLOv13 real-time detection. Its principal workflow loads a model through the Python API, then trains or validates it on configured data, predicts on images or video, and optionally exports it for deployment. The repository also contains other model families, tracking, task-specific solutions, and an Ultralytics HUB client. The README excerpt documents the main modes but is truncated; some subsystem links therefore rely on documented behavior and the source tree rather than sampled implementation excerpts.

Main entry points: [`ultralytics/engine/model.py`](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/model.py) (Model facade), [`ultralytics/engine/predictor.py`](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/predictor.py) (Prediction engine), [`ultralytics/data/build.py`](https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/build.py) (Data construction), [`ultralytics/nn/tasks.py`](https://github.com/imoonlab/yolov13/blob/main/ultralytics/nn/tasks.py) (Network architecture)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_api["API and modes"]
  node_api["Python model API<br/>[__init__.py]"]
  node_cli["CLI configuration<br/>[__init__.py]"]
  node_model["Model facade<br/>[model.py]"]
end

subgraph group_data["Data pipeline"]
  node_data_build["Data construction<br/>[build.py]"]
  node_dataset["Dataset handling<br/>[dataset.py]"]
  node_augment["Augmentation<br/>[augment.py]"]
  node_loader["Input loaders<br/>[loaders.py]"]
end

subgraph group_models["Models and inference"]
  node_trainer["Training engine<br/>[trainer.py]"]
  node_validator["Validation engine<br/>[validator.py]"]
  node_predictor["Prediction engine<br/>[predictor.py]"]
  node_results["Prediction results<br/>[results.py]"]
  node_yolo_tasks["YOLO task modes"]
  node_other_models["SAM and RT-DETR"]
  node_network["Network architecture<br/>[tasks.py]"]
  node_blocks["Neural modules<br/>[block.py]"]
end

subgraph group_tracking["Tracking and solutions"]
  node_track["Object tracking<br/>[track.py]"]
  node_tracker_impl["Tracker algorithms<br/>[byte_tracker.py]"]
  node_solutions["Vision solutions"]
end

subgraph group_services["Export and HUB"]
  node_exporter["Model export<br/>[exporter.py]"]
  node_hub["HUB sessions<br/>[session.py]"]
  node_auth["HUB authentication<br/>[auth.py]"]
end

node_user(("Developer or user"))
node_media["Images or video"]
node_datasets["Training dataset"]
node_deployment(("Deployment runtime"))

node_user -->|"loads model"| node_api
node_user -->|"runs command"| node_cli
node_cli -->|"dispatches mode"| node_model
node_api -->|"creates model"| node_model
node_model -->|"starts training"| node_trainer
node_model -->|"starts validation"| node_validator
node_model -->|"starts prediction"| node_predictor
node_model -->|"starts export"| node_exporter
node_datasets -->|"provides data"| node_data_build
node_trainer -->|"builds loaders"| node_data_build
node_validator -->|"builds loaders"| node_data_build
node_data_build -->|"creates datasets"| node_dataset
node_dataset -->|"applies transforms"| node_augment
node_data_build -->|"creates loaders"| node_loader
node_media -->|"provides input"| node_predictor
node_predictor -->|"loads input"| node_loader
node_trainer -->|"trains model"| node_network
node_validator -->|"evaluates model"| node_network
node_predictor -->|"runs inference"| node_network
node_network -->|"uses modules"| node_blocks
node_model -->|"selects task"| node_yolo_tasks
node_model -->|"selects model family"| node_other_models
node_predictor -->|"returns results"| node_results
node_model -->|"starts tracking"| node_track
node_track -->|"associates detections"| node_tracker_impl
node_user -->|"runs solution"| node_solutions
node_solutions -->|"runs inference"| node_model
node_exporter -->|"produces model"| node_deployment
node_user -.->|"opens session"| node_hub
node_hub -->|"authenticates"| node_auth

click node_api "https://github.com/imoonlab/yolov13/blob/main/ultralytics/__init__.py"
click node_cli "https://github.com/imoonlab/yolov13/blob/main/ultralytics/cfg/__init__.py"
click node_model "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/model.py"
click node_data_build "https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/build.py"
click node_dataset "https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/dataset.py"
click node_augment "https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/augment.py"
click node_loader "https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/loaders.py"
click node_trainer "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/trainer.py"
click node_validator "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/validator.py"
click node_predictor "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/predictor.py"
click node_results "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/results.py"
click node_yolo_tasks "https://github.com/imoonlab/yolov13/tree/main/ultralytics/models/yolo"
click node_other_models "https://github.com/imoonlab/yolov13/tree/main/ultralytics/models"
click node_network "https://github.com/imoonlab/yolov13/blob/main/ultralytics/nn/tasks.py"
click node_blocks "https://github.com/imoonlab/yolov13/blob/main/ultralytics/nn/modules/block.py"
click node_track "https://github.com/imoonlab/yolov13/blob/main/ultralytics/trackers/track.py"
click node_tracker_impl "https://github.com/imoonlab/yolov13/blob/main/ultralytics/trackers/byte_tracker.py"
click node_solutions "https://github.com/imoonlab/yolov13/tree/main/ultralytics/solutions"
click node_exporter "https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/exporter.py"
click node_hub "https://github.com/imoonlab/yolov13/blob/main/ultralytics/hub/session.py"
click node_auth "https://github.com/imoonlab/yolov13/blob/main/ultralytics/hub/auth.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_api,node_cli,node_model,node_user toneBlue
class node_data_build,node_dataset,node_augment,node_loader toneAmber
class node_trainer,node_validator,node_predictor,node_results,node_yolo_tasks,node_other_models,node_network,node_blocks toneMint
class node_track,node_tracker_impl,node_solutions toneRose
class node_exporter,node_hub,node_auth,node_media,node_datasets,node_deployment toneIndigo
```

## Components

### API and modes

- [Python model API](https://github.com/imoonlab/yolov13/blob/main/ultralytics/__init__.py): `ultralytics/__init__.py`
- [CLI configuration](https://github.com/imoonlab/yolov13/blob/main/ultralytics/cfg/__init__.py): `ultralytics/cfg/__init__.py`
- [Model facade](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/model.py): `ultralytics/engine/model.py`

### Data pipeline

- [Data construction](https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/build.py): `ultralytics/data/build.py`
- [Dataset handling](https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/dataset.py): `ultralytics/data/dataset.py`
- [Augmentation](https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/augment.py): `ultralytics/data/augment.py`
- [Input loaders](https://github.com/imoonlab/yolov13/blob/main/ultralytics/data/loaders.py): `ultralytics/data/loaders.py`

### Models and inference

- [Training engine](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/trainer.py): `ultralytics/engine/trainer.py`
- [Validation engine](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/validator.py): `ultralytics/engine/validator.py`
- [Prediction engine](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/predictor.py): `ultralytics/engine/predictor.py`
- [Prediction results](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/results.py): `ultralytics/engine/results.py`
- [YOLO task modes](https://github.com/imoonlab/yolov13/tree/main/ultralytics/models/yolo): `ultralytics/models/yolo`
- [SAM and RT-DETR](https://github.com/imoonlab/yolov13/tree/main/ultralytics/models): `ultralytics/models`
- [Network architecture](https://github.com/imoonlab/yolov13/blob/main/ultralytics/nn/tasks.py): `ultralytics/nn/tasks.py`
- [Neural modules](https://github.com/imoonlab/yolov13/blob/main/ultralytics/nn/modules/block.py): `ultralytics/nn/modules/block.py`

### Tracking and solutions

- [Object tracking](https://github.com/imoonlab/yolov13/blob/main/ultralytics/trackers/track.py): `ultralytics/trackers/track.py`
- [Tracker algorithms](https://github.com/imoonlab/yolov13/blob/main/ultralytics/trackers/byte_tracker.py): `ultralytics/trackers/byte_tracker.py`
- [Vision solutions](https://github.com/imoonlab/yolov13/tree/main/ultralytics/solutions): `ultralytics/solutions`

### Export and HUB

- [Model export](https://github.com/imoonlab/yolov13/blob/main/ultralytics/engine/exporter.py): `ultralytics/engine/exporter.py`
- [HUB sessions](https://github.com/imoonlab/yolov13/blob/main/ultralytics/hub/session.py): `ultralytics/hub/session.py`
- [HUB authentication](https://github.com/imoonlab/yolov13/blob/main/ultralytics/hub/auth.py): `ultralytics/hub/auth.py`

### Other components

- **Developer or user**
- **Images or video**
- **Training dataset**
- **Deployment runtime**

## Connections

- Developer or user → Python model API: loads model
- Developer or user → CLI configuration: runs command
- CLI configuration → Model facade: dispatches mode
- Python model API → Model facade: creates model
- Model facade → Training engine: starts training
- Model facade → Validation engine: starts validation
- Model facade → Prediction engine: starts prediction
- Model facade → Model export: starts export
- Training dataset → Data construction: provides data
- Training engine → Data construction: builds loaders
- Validation engine → Data construction: builds loaders
- Data construction → Dataset handling: creates datasets
- Dataset handling → Augmentation: applies transforms
- Data construction → Input loaders: creates loaders
- Images or video → Prediction engine: provides input
- Prediction engine → Input loaders: loads input
- Training engine → Network architecture: trains model
- Validation engine → Network architecture: evaluates model
- Prediction engine → Network architecture: runs inference
- Network architecture → Neural modules: uses modules
- Model facade → YOLO task modes: selects task
- Model facade → SAM and RT-DETR: selects model family
- Prediction engine → Prediction results: returns results
- Model facade → Object tracking: starts tracking
- Object tracking → Tracker algorithms: associates detections
- Developer or user → Vision solutions: runs solution
- Vision solutions → Model facade: runs inference
- Model export → Deployment runtime: produces model
- Developer or user → HUB sessions: opens session
- HUB sessions → HUB authentication: authenticates
