Built
Built AI-powered log anomaly-detection platform

Log Guardian

Microservice platform that ingests application logs and scores each one for anomalies with a Random Forest model (ROC-AUC 0.89), a versioned model registry, and a human-feedback retraining loop with score-drift detection. Synchronous REST and Kafka-backed streaming share one scoring pipeline, with OpenTelemetry traces (through Kafka), Prometheus/Alertmanager, and Grafana dashboards. 49 tests, CI, k6 load-tested at ~220 req/s (p95 ~24ms), shipping via Docker Compose and Kubernetes.

PythonFastAPIKafkaPostgreSQLOpenTelemetryPrometheusGrafanaKubernetes
View project
Built Self-hosted LLM platform with OpenAI-compatible APIs

Mini OpenAI Platform

Microservices LLM platform — API gateway, RAG, embedding, and inference services — with an embedding-based semantic cache cutting latency ~80× on cache hits, a difficulty-based router dispatching prompts across Ollama model tiers, a CI quality gate on retrieval metrics (recall@k, MRR), and 16 Prometheus/Grafana panels covering latency, token economics, and answer quality.

PythonFastAPIReactQdrantOllamaDocker ComposePrometheusGrafana
View project
Built Turn AI chat transcripts into a searchable knowledge base

Chat2Study

Full-stack RAG app converting long AI chat transcripts into knowledge bases, study notes, and concept maps. A 10-node LangGraph pipeline orchestrates Playwright capture, artifact persistence, chunking, and embedding; async job re-architecture took ingestion API responses from 30–90s to ~10ms, with pgvector retrieval at ~50ms, a provider-agnostic LLM factory, JWT auth, and full CI.

Next.jsTypeScriptFastAPILangGraphPostgreSQLpgvectorMinIODocker
View project
Built See inside the retrieval pipeline

RAG Chunk Visualizer

Interactive debugging tool that makes every RAG stage inspectable — chunking, embeddings, 2D embedding maps (PCA/UMAP), vector search, and grounded prompt construction — across 5 LLM providers behind one abstraction. Local-first embeddings so documents never leave the machine; 59 unit tests; deployed on Hugging Face Spaces.

PythonStreamlitLanceDBsentence-transformersDocker
View project
Built Deterministic multi-agent launch-decision system

War Room

Simulates a cross-functional product-launch war room: specialist agents (PM, data analyst, comms, risk/critic) reason over a launch dashboard via deterministic analysis tools — metric health scoring, threshold guardrails, sentiment and theme detection — and a coordinator resolves a structured PROCEED / PAUSE / ROLL_BACK decision with rationale, risk register, action plan, confidence score, and full execution traces. Deterministic by design, so every decision is grounded in explicit tool outputs and testable.

PythonMulti-AgentPytest
View project
Built LangGraph multi-agent bug-investigation pipeline

Bug Investigator

A LangGraph multi-agent system that reads a bug report, logs, and a repo snapshot, then reproduces the issue with a generated script, proposes a root-cause hypothesis, and outputs a patch plan with validation steps. Seven specialist agents (triage, log analyst, reproduction, fix planner, reviewer/critic, repo context, coordinator) run behind a Typer CLI over an Ollama or OpenAI-compatible backend.

PythonLangGraphTyperOllamaStreamlit
View project
Research
Research Config-driven fine-tuning & benchmarking of image backbones

Vision Transformers for Scene Recognition

A single config-driven pipeline that fine-tunes and benchmarks ViT, DINOv2, Swin, and ConvNeXt against a ResNet-50 baseline on a 40-class Places2 subset — every experiment specified by a YAML file and seeded for reproducibility. Includes attention-map explainability, confusion matrices, and automatic CUDA/MPS/CPU device selection. Self-supervised DINOv2 features gave the strongest scene-recognition performance.

PythonPyTorchHugging FaceVision TransformersDINOv2
View project
Research MSc dissertation — interactive segmentation for Gaussian Splatting

Scribble-Guided 3D Scene Segmentation

Extended the SAGA (Segment Any 3D Gaussians) pipeline with scribble-based prompting and Context-Aware Filtering — kNN graphs and radius-based connectivity to suppress floaters — plus iterative add/remove/overwrite refinement at ~1s scribble latency. Evaluated on 360V2 and NeRF-LLFF: 1–2% precision gain over the SAGA baseline with notably fewer floater artifacts.

PythonPyTorchCUDAOpenCV3D Gaussian Splatting