How ambarella-inc/ultralytics works
Ultralytics is a computer-vision framework centered on YOLO, with additional SAM, RT-DETR, NAS, and FastSAM model families. The principal workflow is a user loading a model, supplying images or video for prediction, and receiving structured results; parallel modes train and validate models or export them for deployment. The tree and README establish these capabilities, while sampled files confirm representative model, data, prediction, export, and result responsibilities. Some subsystem wiring is inferred only at the module level, so uncertain internal links are omitted.
Main entry points: model.py Model API · predictor.py Prediction · tasks.py Model construction · build.py Data loading
Components 21
Public API
- Model API
ultralytics/engine/model.py - Configuration
ultralytics/cfg/__init__.py
Model workflows
- Training
ultralytics/engine/trainer.py - Validation
ultralytics/engine/validator.py - Export
ultralytics/engine/exporter.py - Results
ultralytics/engine/results.py
Model families
- YOLO tasks
ultralytics/models/yolo - SAM
ultralytics/models/sam - Other models
ultralytics/models - Model construction
ultralytics/nn/tasks.py
Data pipeline
- Datasets
ultralytics/data/dataset.py - Data loading
ultralytics/data/build.py - Augmentation
ultralytics/data/augment.py
Inference runtime
- Prediction
ultralytics/engine/predictor.py - Inference backends
ultralytics/nn/autobackend.py - Tracking
ultralytics/trackers/track.py - Vision solutions
ultralytics/solutions
Other components
- User
- Model weights
- Images or video
- Deployment target
Connections 22
- User → Model API: loads model
- Model API → Configuration: resolves settings
- Model weights → Model API: provides weights
- Model API → Model construction: constructs model
- Model API → Prediction: runs prediction
- Model API → Training: starts training
- Model API → Validation: starts validation
- Model API → Export: starts export
- Training → Data loading: loads batches
- Validation → Data loading: loads batches
- Data loading → Datasets: creates datasets
- Datasets → Augmentation: transforms samples
- Model construction → YOLO tasks: builds task models
- Model construction → SAM: builds SAM models
- Model construction → Other models: builds model families
- Prediction → Inference backends: runs inference
- Images or video → Prediction: supplies media
- Prediction → Results: produces results
- Results → User: returns predictions
- Prediction → Tracking: tracks detections
- Prediction → Vision solutions: supports workflows
- Export → Deployment target: exports model