Skip to main content

Protege Engine

The Protege Engine module contains the core training and orchestration logic for Protege-based machine learning workflows. It provides tools to define, train, evaluate, and package deep learning models, with a focus on modularity, reproducibility, and cloud-ready execution.

✨ Features

  • Model Zoo & Wrappers

    • Built-in support for object detection, classification, segmentation, and keypoints.
    • Wraps torchvision models with unified interfaces and custom augmentations.
  • Lightning-Powered Trainer

    • PyTorch Lightning integration with modular callbacks, logging, export, and scheduler logic.
    • Extensible architecture for distributed training and multi-GPU support.
  • Dataset Management

    • Artifact and manifest handling tools to support dynamic data loading.
    • Seamless integration with COCO-style and custom datasets.
  • CLI for Packaging

    • Provides the protege-package command for generating ready-to-deploy model bundles.
    • Supports export formats compatible with inference runtimes and cloud pipelines.
  • Training Runtime Docker

    • CUDA-ready Docker image for remote or cloud-based training execution.
    • Also includes a lightweight image for CI/CD publishing of the engine as a library.

🛠️ Use Cases

  • Training custom deep learning models in a structured, repeatable environment.
  • Packaging model artifacts for deployment in inference runtimes (e.g. protege-runtime).
  • Integrating with orchestration systems (e.g. Vertex AI, Vortex.ai) for distributed training.
  • Customizing training loops, metrics, or model heads while retaining standardized IO and export behavior.