Ultralytics is a production-grade computer vision library built around the YOLO model family. In production it provides a unified Python/CLI API for loading pretrained and custom models, running inference, training, validation, export, benchmarking, and object tracking across detection, instance and semantic segmentation, pose estimation, oriented bounding boxes, classification, and depth estimation. The architecture is a modular Python package: an engine layer (Model, BasePredictor, BaseTrainer, BaseValidator), a unified AutoBackend inference dispatcher supporting 20+ formats from PyTorch to TensorRT/ONNX/OpenVINO/CoreML/TFLite, a YAML-driven model configuration system, dataset loaders with caching and augmentation, pluggable experiment-tracking callbacks, and a family of ready-to-use solution classes for counting, heatmaps, queue management, and similar vision applications. The CLI entrypoint (`yolo`) and Python classes (`YOLO`, `SAM`, `RTDETR`, etc.) are the primary entry points, backed by active CI, Docker images, and extensive examples in Python, C++, and Rust.
RF-DETR is a production-grade computer vision library by Roboflow for real-time object detection, instance segmentation, and keypoint estimation. It implements a DETR-family architecture (LW-DETR, Deformable DETR) with a DINOv2 backbone, providing a complete training-to-deployment pipeline. The library is published as the `rfdetr` PyPI package and serves as the open-source core of Roboflow's detection platform, with larger models available under a separate license. The system is structured as a Python library with a CLI entry point (`rfdetr`). The main model class `RFDETR` (and variants like `RFDETRNano`) provides `predict()`, `train()`, `export()`, and `evaluate()` methods. Training is built on PyTorch Lightning with custom `LightningModule` and `LightningDataModule`, plus callbacks for EMA, COCO evaluation, GPU memory monitoring, and drop-path scheduling. The export subsystem uses a registry pattern with format-specific exporters (ONNX, TensorRT, TFLite, CoreML, OpenVINO, ExecuTorch, LiteRT) that share preprocessing and decoding utilities. Dataset loaders support COCO, YOLO, WebDataset, and Roboflow formats with configurable augmentation backends (torchvision, Albumentations, Kornia). The primary data flow: input images β preprocessing (resize, normalize) β DINOv2 backbone β multi-scale feature projector β deformable attention transformer encoder-decoder β task-specific heads (detection, segmentation, keypoints) β post-processing (top-k selection, NMS-free decoding). Training uses COCO-style datasets with Hungarian matching for label assignment. External dependencies include PyTorch, PyTorch Lightning, HuggingFace Transformers, and optional backends for export. The library integrates with Roboflow's platform for dataset management and deployment. The codebase is actively maintained with extensive test coverage (pytest, CI workflows for CPU/GPU/XLA), backward compatibility testing for legacy checkpoints, and a formal changelog. It demonstrates high craftsmanship in areas like safe checkpoint loading, atomic file operations, custom fused optimizers (Triton), and export robustness. The large optional dependency surface and reliance on some private PyTorch APIs introduce maintenance risk, but overall it is a well-engineered library suitable for production use.
YOLOv5 is a production-oriented PyTorch framework for object detection, instance segmentation, and image classification, with a hybrid research/educational flavour from its tutorial notebooks. The dominant character is application: the repository provides CLI tools (`train.py`, `val.py`, `detect.py`, `export.py`, plus `segment/` and `classify/` variants), a Flask REST API, Docker images, PyTorch Hub support, CI smoke tests, benchmarking scripts, and experiment-tracking integrations for W&B, ClearML, and Comet. It is not just an experiment repo; it is designed to be deployed and exported to edge and cloud inference targets. Core architecture is config-driven: model YAMLs are parsed by `models/yolo.py` into `DetectionModel`, `SegmentationModel`, or `ClassificationModel` geometries, while `models/common.py` holds reusable layers and the central `DetectMultiBackend` inference wrapper for PyTorch, TorchScript, ONNX Runtime, OpenVINO, TensorRT, CoreML, TensorFlow, TFLite/Edge TPU, Paddle, and Triton. The primary data flow is dataset YAML -> dataloaders with augmentation (`utils/augmentations.py`) -> model forward -> task-specific loss (`utils/loss.py`, `utils/segment/loss.py`) -> train/val loops. `export.py` converts trained checkpoints into 12+ deployment formats using a decorated `@try_export` pattern, and `data/` embeds dataset download/conversion scripts for COCO, ImageNet subsets, VOC, VisDrone, and others. Maintenance is active, but the codebase sits in a legacy/support position relative to the unified `ultralytics` package. Technical drift is medium: some loggers are deprecated, many `models/hub/` configs are experimental, and the code depends heavily on the external `ultralytics` package, which creates version-compatibility risk. The code is generally clean and modular, though it has task-level duplication across detection, segmentation, and classification paths and limited unit test coverage outside smoke tests.
H2O LLM Studio is a web-based application for fine-tuning large language models (LLMs) without requiring coding experience. It provides a GUI built on H2O Wave and CLI tools for dataset import, experiment configuration, model training, evaluation, and export to Hugging Face Hub. The system supports multiple problem types including causal language modeling, classification, regression, sequence-to-sequence, and Direct Preference Optimization (DPO). The architecture centers around a Wave server handling both UI and backend logic, with distributed training capabilities via DeepSpeed. Key components include a configuration system using dataclasses, utilities for conversation chain handling, model loading abstractions, and factory patterns for training components.
ExecuTorch is PyTorch's unified solution for deploying AI models on-device (mobile, embedded, edge). It enables direct export from PyTorch without intermediate format conversions (.onnx, .tflite) and powers Meta's production on-device AI across Instagram, WhatsApp, Quest 3, and Ray-Ban Meta Smart Glasses. The framework provides an ahead-of-time (AOT) compilation workflow: Export β Compile β Execute, supporting LLMs (Llama 3.2/3.1/3, Qwen 3, Phi-4-mini), vision (MobileNetV2, DeepLabV3, YOLO26), speech (Whisper), and multimodal models (Llava, Voxtral) across 12+ hardware backends including XNNPACK, CoreML, Qualcomm QNN, MediaTek Neuropilot, ARM Ethos-U, NXP, Cadence DSP, Vulkan, CUDA (experimental), Metal (experimental), and MLX (experimental). The architecture is modular with core runtime (C++/C), export pipeline (Python), backend-specific delegates, and examples/tools for model conversion and benchmarking. Key entry points include the Python API (torch.export.export() β to_edge_transform_and_lower() β .to_executorch()), C++ API (executorch::runtime::Module), backend partitioners (XnnpackPartitioner, CoreMLPartitioner), and command-line tools for model export and benchmarking. Data flows involve model export to Edge IR (EXIR), partitioning/lowering for backend, serialization to .pte, and runtime execution via delegate interfaces. External dependencies include PyTorch, FlatBuffers, backend-specific SDKs (QNN, Ethos-U, CoreML/Metal, Vulkan, WebGPU), CMake, Buck2, and testing frameworks. The codebase demonstrates strong engineering practices with reusable components like the visitor pattern for operator lowering, quantization pipelines for LLMs, memory planning utilities, and a flexible delegate framework. While actively maintained with frequent commits and CI/CD, technical drift is medium due to experimental backends, generated code synchronization challenges, and conditional build complexity across numerous hardware targets.
This repository provides a template for training YOLO models on custom datasets (primarily from Kaggle) and performing inference. It includes command-line scripts for training and inference, a Streamlit app for interactive use, a Jupyter notebook for step-by-step execution, and utility scripts for data preprocessing, dataset exploration, and auto-labeling. The system allows users to download datasets, preprocess them (cleaning and augmentation), train YOLO models of various sizes, run inference on images/videos/webcam, export models to NCNN format, and automatically label images using GroundingDINO. The code is structured into modular components, with notable reusable parts in the data preprocessing and dataset exploration modules.
This repository is a deprecated ONNX Model Zoo containing thousands of pre-trained models (mostly computer vision, some NLP and generative AI) exported to the ONNX format from PyTorch (timm, torchvision) and other frameworks. It also contains turnkeyml benchmark artifacts (turnkey_stats.yaml) that record export success, model metadata, ONNX operator counts, and system environment for each model across opsets 16β18. The primary purpose was to provide a centralized collection of ready-to-use ONNX models for inference and to validate cross-version ONNX export compatibility. However, the repository is explicitly deprecated (LFS disabled July 2025) and users are redirected to Hugging Face. The codebase consists almost entirely of binary model files and YAML metadata; the only reusable software components are a few preprocessing scripts (e.g., imagenet_preprocess.py, face_preprocess.py) in the validated/ directories. There is no application logic, no API, no training pipelinesβthis is purely a model distribution and benchmark data repository. Reproducibility is low due to hardcoded paths, frozen env snapshots that are out of date, and reliance on external model sources whose weights may have changed.