Back to projects
CloudData Science

CloudEco

Environmental ML Cloud Application

A scalable cloud-native machine learning inference system for environmental object detection using YOLO, FastAPI, Docker, and Kubernetes.

PythonFastAPIYOLODockerKubernetesLocustTerraformREST APILinux

Problem

Environmental monitoring teams needed a scalable, reproducible way to run object detection on large image batches without managing GPU infrastructure manually.

My role

Cloud / ML Engineer — designed the inference API, container strategy, Kubernetes manifests, and load-testing harness.

Solution

Built a FastAPI service wrapping YOLO, containerised with Docker, deployed to Kubernetes with horizontal pod autoscaling, and provisioned via Terraform. Locust tests benchmarked p95 latency at 1/2/4/8 pods.

Challenges

  • Balancing inference latency against pod cost at multiple replica counts
  • Reliable Base64 image transport over REST
  • Reproducible infrastructure across environments

Key features

  • RESTful API for image inference
  • Base64 image processing
  • YOLO-based object detection
  • Docker containerisation
  • Kubernetes deployment with autoscaling
  • Load testing with Locust
  • Performance benchmarking across 1, 2, 4, and 8 pods
  • Infrastructure-as-Code using Terraform

Results

  • Linear throughput scaling up to 8 pods
  • Repeatable Terraform-driven environments
  • Documented performance envelope for capacity planning

Cloud-native deployment

Horizontal scalability

Production-grade API engineering