DAPLab, Columbia
Mar 2026 – presentMulti-agent debate. With a fixed budget of LLM calls, is it better to have agents vote, have one model refine its own answer, or let several agents debate? The theory we're testing predicts the winner from how far the correct answer leads the strongest wrong one. I run the experiments that check it: voting, self-refinement, and several debate variants at 5 to 40 calls, across six models and six benchmarks including GPQA-Diamond, MMLU-Pro, and MedQA. So far that's 34 runs, about 28,000 question-level results, and millions of model calls.
Self-play for LLM reasoning. Can a language model improve without labeled data? A challenger invents problems at the edge of what a solver can do, a critic screens or repairs them, and both train with GRPO. I built the math version on Qwen3 with veRL and vLLM on Modal H100s, with per-role LoRA adapters, a GRPO-trained critic, and preemption-safe restarts. I then extended it to open-ended writing, where the hard part is a reward you can trust: I raised valid challenger outputs from 42.5% to 77.5%, built a near-duplicate detector that agrees with blind LLM judges (Spearman 0.89), and showed that the 7B critic can't tell good rubrics from bad ones (Spearman 0.18).
I also re-measured the baselines of R-Zero, a published self-play method, with its own evaluation code on all four of its models and seven benchmarks. Three of its four headline gains shrink to about one point (Qwen3-4B's +6.49 becomes +0.79), and for one model the evaluation harness alone moved the score by about 20 points.
Graph vs. SQL database agents. I compare two LLM agents that answer questions over the same clinical databases: one writes SQL against PostgreSQL, the other writes Cypher against a graph of the same data, with the same model and the same explore-then-answer loop. On EHRSQL the graph agent finishes slightly ahead (78.0% vs. 75.2% on MIMIC-III, 71.5% vs. 70.6% on eICU), and almost all of the gap comes down to dates: on 22–25% of questions about relative time, the SQL agent counted back from today's date instead of the dataset's, against 7.5–11% for the graph agent. I designed and ran the experiments and audited the scoring, which turned up 626 correct answers among 2,722 that the automatic grader had failed.
