I'm Khushi, a final-year Computer Science student who enjoys building software that people can depend on. Most of my work has been in backend development, where I like designing APIs, thinking about system architecture, and understanding the trade-offs behind engineering decisions. Along the way, I've explored machine learning and LLM-based systems, but what keeps me interested is building software that's reliable, practical, and easy to improve.
- Building LLM Gateway, a single API layer that unifies access to Groq, OpenAI, Anthropic, and Ollama for client applications
- Exploring backend architecture and machine learning systems
- Learning more about evaluation pipelines, system design, and scalable software
Can every prompt justify using the most expensive model?
Routes each prompt to the cheapest LLM that can handle it, using a complexity classifier and selective verification to protect response quality.
- Cut inference costs by 79% across 1,000+ real requests
- Random Forest complexity classifier (83.88% cross-validated accuracy) routing across Groq, Anthropic, and OpenAI
- Found a 90% fabrication rate on niche factual queries through repeated testing, then built and validated a routing fix
- FastAPI backend, Dockerized, 94 automated tests with CI on every push
Tech: Python • FastAPI • Scikit-Learn • SQLite • Docker
An AI email assistant that triages a whole inbox at once: classifies emails, extracts action items, pulls context from past correspondence with RAG, and drafts replies in your own writing style.
- Eval-driven: urgency classification improved from 50% to 75% against 36 hand-labeled emails, and testing exposed a data bug (mislabeled HTML corrupting classification) that I fixed
- Read-only by design: requests only
gmail.readonly, drafts open in Gmail, nothing is sent automatically - A rule-based pre-filter catches newsletters before they reach the LLM, keeping usage within rate limits
Tech: Python • FastAPI • Streamlit • ChromaDB • Groq
