Arxelos: A Deployed AI/ML Platform
Overview
Arxelos is the platform I built to deploy my AI/ML work under one roof — not scattered notebooks.
Building one platform forced decisions individual notebooks avoid:
- Consistent model serving. Every model behind the same FastAPI backend, containerized, deployed to Azure Container Apps. One request/response contract, one latency budget, one error-handling path.
- ONNX across frameworks. All models exported to ONNX so PyTorch, TensorFlow, and pre-trained checkpoints run through the same serving code without framework-specific glue.
- Interpretability and structured outputs as first-class citizens. Grad-CAM, Attention Rollout, SmoothGrad, depth colormaps, segmentation overlays, citations. Every prediction ships with the artifacts a user needs to interpret it, not just a scalar output.
Stack
- Frontend: the arxelos.com site itself, with per-module visualization
- Backend: FastAPI, containerized with Docker
- Deployment: Azure Container Apps
- Models: TensorFlow/Keras (custom CNN), PyTorch (ViT, U-Net from scratch), pre-trained checkpoints (RT-DETR, MiDaS)
- Model format: ONNX across the board
- RAG stack: LangChain, ChromaDB, PubMed as source corpus
- Interpretability:
pytorch-grad-cam, custom Attention Rollout, SmoothGrad
What I’d change next
- Observability. No logging or per-endpoint telemetry yet. Adding request logs, latency histograms, and prediction-distribution tracking would let me detect drift and debug production failures properly.
- Shared uncertainty layer. Each module surfaces confidence differently — softmax on the classifier, IoU on segmentation, retrieval scores on RAG. A shared calibrated-uncertainty layer across modules would make outputs comparable.
- RAG improvements. Retrieval is fine on well-formed clinical queries, degrades on vague ones. Reranking, query rewriting, and hybrid dense-plus-sparse search are the next moves.
Links
- platform: arxelos.com