Training, quantizing, and running a small poetry model entirely in the browser.
Hi, I'm a 5th-year Computational Linguistics and Computer Science dual degree student at IIIT Hyderabad. I work on mechanistic interpretability of language models from a linguistics lens at the Language Technologies Research Centre. Currently I'm working as an intern at the data integration team of Qube Research & Technologies, a quantitative hedge fund.
Notes
Opening an interactive shell inside an existing Slurm job.
Pointing Pyright at the virtual environment managed by uv.
Moving uv environments and caches onto scratch storage with direnv.
How reversing source sentences helped early sequence-to-sequence models learn.
A uv installation note for resolving trusted packages across indexes.
Compact equations and references for biaffine dependency parsing.
Replacing libedit with GNU Readline for a better Python REPL in Emacs.
Using C++ multisets for logarithmic search and removal.
Commands and setup notes for IIIT Hyderabad's Ada compute cluster.
Projects
Studied Gemma-2-2B on a controlled role-gated retrieval task where a prepositional gate (to or from) selects which of two entities is correct.
Investigated how multilingual transformers (XLM-RoBERTa, mBERT, IndicBERT) internally encode grammatical information from the Paninian framework across seven Indian languages. Used diagnostic probing to analyze layer-wise encoding patterns, finding syntactic dependencies peak in middle-upper layers (6-9) while lexical features emerge earlier.
Investigated frequency-domain adversarial attacks on Llama Guard 3's multimodal safety filters. Combined vision adversarial attacks with language model security testing.
Explored multi-hop QA using teacher-student distillation for reasoning chain transfer. Built a graph traversal RAG pipeline that achieved 15% accuracy boost by teaching smaller models logical paths.
Experimented with Racket-based tensor DSL, reimagining ML ops through Lisp's compositional philosophy. Built computation graph auto-differentiation from scratch using functional paradigms.
Nanopass compiler in Racket with graph-coloring register allocation. Implemented tuple support and garbage collection using interference graphs for optimal register usage.