Ritwik Sehrawat

IIT Delhi

Student · Engineer · Developer

Scroll or drag sideways

ABOUT

01 — About

Who am I?

I'm Ritwik — an engineering student at IIT Delhi who likes turning half-baked 2am ideas into things that actually run. This is placeholder copy: swap it for your real bio, what you're studying, what you're obsessed with right now, and what you want to build next.

WORK

01

ISRO GeoNLI

A gold-medal geospatial AI pipeline, held together across a small army of GPUs.

The system that won IIT Delhi gold at Inter-IIT Tech Meet 2025 — 1st of 23 IITs. It answers plain-English questions about satellite imagery ("how long is that runway?") by wiring SAM3 segmentation, a Qwen vision-language model, and a tool-use measurement module into one pipeline. The catch: the models wouldn't share a single GPU, so they lived on separate lab workstations behind their own APIs, with a public EC2 layer routing requests inward over the college VPN. I was the integration lead — I built the orchestration layer (a ReAct agent) and the routing, and kept the whole distributed mess coherent.

PythonPyTorchSAM3QwenReActAWS EC2
02

Context-Aware Keyboard

An LLM that lives on your phone and finishes your sentences — at 20ms a token.

A forked Android keyboard (HeliBoard) running a fine-tuned Gemma 3 1B fully on-device — no server, no round-trip. It reads on-screen context (which app, the conversation so far) through Android's Accessibility APIs and predicts what you'll type next: 52.4% Hit@5, 7.4× the MRR of an n-gram baseline. I trained it on a ~3B-token corpus, quantized to 4-bit GGUF, and bridged it into the keyboard with a llama.cpp JNI layer and async, cancellable inference so it never blocks a keystroke.

GemmaUnslothLoRAllama.cppAndroidKotlinGGUF

MORE

03

Concurrent POMCP Solver

A planner that thinks in parallel — 4.8× faster by letting threads fight over a tree.

A multi-threaded Monte-Carlo tree-search planner in C++17 for decision-making under uncertainty. Root-parallel search with virtual-loss locking on a shared, thread-safe tree, hitting 4.8× throughput on RockSample(7,8) over a serial baseline. Honestly half an excuse to get my hands into the genuinely hard parts — lock contention, atomics, concurrent data structures that don't fall apart under four threads.

C++17concurrencymultithreadingPOMDPMonte Carlo
04

Constitution Tracker

A 3D globe that watches what democracies are quietly changing in their laws.

A full-stack civic platform tracking constitutional bills and amendments, rendered on an interactive Three.js globe. The decision I'm proudest of is invisible: the browser never touches the database. Everything routes through a Cloudflare Worker that holds the only credentials and verifies tokens (RS256/JWKS) on writes, with a daily cron that scrapes government feeds and uses Gemini to score bills by relevance before storing them. (Live ingestion runs for the US right now; more countries are on the roadmap.)

ReactThree.jsCloudflare WorkersFirestoreGemini

ALSO

05

Tweet Performance Manager

Predict how a tweet will do before you post it — then let an AI write a better one.

An ensemble (XGBoost + neural net) that predicts tweet engagement at R² = 0.85, from ~1,200 features engineered out of raw metadata — TF-IDF on cleaned text, sentiment, inferred brand, temporal signals. Paired with Gemini-based tweet generation and a live-preview frontend, deployed as containerized FastAPI endpoints on GCP Cloud Run.

XGBoostPyTorchFastAPIDockerGCPReact
06

Fraud Detection Pipeline

Catching fraud in a haystack where 99.9% of the hay is honest.

A fraud-risk model on the brutally imbalanced IEEE-CIS dataset. The interesting part is what you optimize for — under that kind of imbalance ROC-AUC flatters you into thinking you've won, so I went with PR-AUC (92.2%) and built features from email domains, device fingerprints, and missing-value patterns. Served behind a FastAPI endpoint.

scikit-learnRandom Forestfeature engineeringFastAPI

RND

ANU

LLMs for Planning — ANU Robotics

Teaching a language model to write the rules a robot plans by.

Ongoing research at the ANU Robotics Decision-Making Lab: can an LLM synthesize the models a robot needs to plan under uncertainty? Building on POMDP Coder (Curtis et al., CoRL 2025), I integrated LLM-generated models with the lab's parallelized VOPP solver — 92.9% navigation success on uncertain-navigation benchmarks — and I'm extending it now to a continuous-state quadruped (Unitree Go2) in NVIDIA Isaac Sim.

POMDPLLMsroboticsIsaac SimCoRL 2025

HELLO

— Contact

Let's build
something neon.

Open to internships, collabs, and ideas that are slightly too ambitious.