Sept 2026 – Present·B.Tech CSE, 8.71 CGPA·Gurugram, India
I take GenAI features from a notebook to production — fine-tuned LLMs and VLMs, multi-agent orchestration, and RAG pipelines that stay fast, cheap, and debuggable under real traffic.
One engineer between your idea and a GenAI feature that survives production traffic — the model, the serving path, and the observability around it.
01
Own the AI feature end to end
From the training data to the endpoint your app calls. You do not need a research team and a separate platform team to get a model into your product.
Data curation, labelling strategy, and eval sets
LoRA / QLoRA fine-tuning, then quantization to GGUF / INT4
Serving, tool-calling orchestration, and the retrieval layer around it
02
Make it cheap and fast enough to keep
Most GenAI features die on unit economics, not on quality. I treat latency and cost per request as requirements, not as things to look at later.
Cut a 6GB vision-language model to 1.9GB and ran it on-device in ≤6s
Routed the common path to a database resolver so the LLM only sees the hard cases
Model routing, caching, and prompt structure chosen against a cost budget
03
Keep it debuggable at 3am
An agent that fails silently is worse than no agent. Everything I ship is traced, evaluated, and reversible before it goes near production traffic.
Langfuse tracing across every model and tool call
Golden-set evals gating prompt and model changes
Event-driven pipelines so failures surface as data, not as tickets
Working on something like this?
Most of what I build ends up open source, and I like talking to people solving the same problems. Tell me what you're working on and I'll tell you straight what I think.
Open-source tools and independent research — built solo, outside of any job.
01
MnemOS
AI assistants forget everything between sessions. MnemOS solves that by extracting facts from conversations via LLM, embedding them with bge-m3, and injecting relevant context before each new message — invisibly, across ChatGPT and Claude. Memories are stored per-user rather than per-platform, so context follows the person across tools instead of resetting every session.
Mapping raw counts across regions of different population draws a map of population wearing the costume of whatever was counted — the most common error in thematic mapping, and an invisible one, because the map still renders cleanly and looks authoritative. Measured on US Census data, total births by state correlates 0.9921 with state population; normalised per capita it correlates 0.0616, and five of the top six states change. mapcraft makes the decisions a choropleth actually requires — normalisation, classification, equal-area projection, colourblind-safe palettes — refuses to render when the result would mislead, and prints every decision it made on the map itself. Zero runtime dependencies: the Albers and Mollweide projection maths, Fisher-Jenks natural-breaks classification, TopoJSON decoding and SVG emission are all implemented directly. Four bundled geography packs pin boundary and population vintages together, because pairing 2024 population with 2021 boundaries silently divides some rates by the wrong denominator.
When a provider ships a new model version, an agent's tool-calling can silently change: an argument invented or dropped, a different tool chosen for the same input, a value that no longer matches the schema downstream code depends on. Nothing in a normal CI pipeline asserts on which tools were called with what, so the drift reaches production before anyone notices. toolcontract pins a golden set of expected tool-call trajectories, replays them against a live model, and returns a pass/fail/inconclusive verdict with a diff — Pact for microservice contracts, or Percy for visual regressions, but for tool calls. Ships with a comparator engine, a verification ledger, OpenAI/Anthropic/LiteLLM adapters, a CLI, a pytest plugin, and an LLM-judge tier for semantic matching.
Most agent memory systems operate at one fixed compression level. AECA studies whether a learned policy can adaptively decide, per memory item, whether to keep it raw, compress it into a reusable skill, or crystallize it into a general rule — and rigorously compares that learned policy against a strong heuristic baseline to find out when reinforcement learning actually earns its cost over simpler methods. Schema, migrations, and the episode-ingestion pipeline are built and tested; the comparison study is in progress.
Python◂
PostgreSQL◂
pgvector◂
SQLAlchemy◂
GRPO / RLVR◂
Qwen2.5◂
05
RLVR-TTT
Test-time training lets a model update its own weights from context during inference — but on its own it can't distinguish correct information from incorrect information, so it learns whatever it's told. This project explores pairing test-time training with reinforcement learning from verifiable rewards, so a weight update is only kept when it measurably improves performance on automatically generated, verifiable questions about the conversation. Currently in the foundations and literature-review phase ahead of implementation.
PyTorch◂
Transformers◂
Unsloth◂
TRL◂
GRPO◂
02work experience
Things I've shipped professionally
Production work built as part of a team, at scale, under real constraints.
01
AI Coach — Conversational Health Agent Platform
Rebuilt the AI Coach's agent orchestration layer — replacing an initial LangGraph state machine and dual-layer Mem0 memory setup with the Vercel AI SDK's bounded tool-calling loop and a single HindSight episodic-memory layer. Built a 2-channel (WhatsApp, Telegram) conversational agent on a 13-step-max tool-calling loop with a YAML-defined skill registry, driven by 16+ Kafka-consumed event domains for real-time patient state. On that foundation, built a single-call 3-tier meal-logging resolution engine (personal history → pgVector search → LLM fallback), an LLM-driven diet-plan generator combining ClickHouse history with agent memory, and a 4-state glucose feedback engine closing the log → feedback → plan loop.
Vision-Language Model Fine-Tuning for Food Recognition
Led end-to-end fine-tuning of a vision-language model for food recognition: curated 300,000+ training samples with quantity-aware supervision, then quantized and packaged the model for edge deployment — compressing it roughly 68% (6GB to 1.9GB via INT4 GGUF) while keeping end-to-end inference latency at 6 seconds or less on-device.
Architected a cross-modal pipeline (ASR + NLP + Vision, slot-filling, Gemini + pgVector ANN) over a 10,000+ recipe / 30,000+ alias database for daily meal logging, resolving dish matches in ~2s (DB-backed) to 3–5s (LLM fallback) at ~90% accuracy. Powered a RAG meal-plan engine with behavioral signals and condition-specific diabetic constraints.