Verso un Debugger Neurale per Python
Towards a Neural Debugger for Python
March 10, 2026
Autori: Maximilian Beck, Jonas Gehring, Jannik Kossen, Gabriel Synnaeve
cs.AI
Abstract
L'addestramento di grandi modelli linguistici (LLM) su tracce di esecuzione Python li ancora all'esecuzione del codice e permette la previsione dell'esecuzione riga-per-riga di interi programmi Python, trasformandoli di fatto in interpreti neurali (FAIR CodeGen Team et al., 2025). Tuttavia, gli sviluppatori raramente eseguono i programmi passo dopo passo; piuttosto, utilizzano debugger per interrompere l'esecuzione a determinati breakpoint e scorrere solo le porzioni di codice rilevanti, ispezionando o modificando le variabili di programma. Gli approcci esistenti agli interpreti neurali mancano di questo controllo interattivo.
Per affrontare questa limitazione, introduciamo i *debugger neurali*: modelli linguistici che emulano i debugger tradizionali, supportando operazioni come l'ingresso passo-passo (*step into*), il superamento passo-passo (*step over*) o l'uscita passo-passo (*step out*) da funzioni, nonché l'impostazione di breakpoint su righe di codice specifiche. Dimostriamo che i debugger neurali – ottenuti tramite *fine-tuning* di LLM di grandi dimensioni o *pre-training* da zero di modelli più piccoli – possono modellare in modo affidabile sia l'esecuzione in avanti (prevedendo stati e output futuri) che l'esecuzione inversa (inferendo stati o input precedenti), condizionati dalle azioni del debugger.
Valutati su CruxEval, i nostri modelli raggiungono prestazioni elevate sia nei compiti di previsione dell'output che dell'input, dimostrando una modellazione robusta dell'esecuzione condizionale. Il nostro lavoro compie i primi passi verso futuri sistemi di codifica agentici, in cui i debugger neurali fungono da modello del mondo per ambienti di debug simulati, fornendo feedback sull'esecuzione o permettendo agli agenti di interagire con strumenti di debug reali. Questa capacità getta le basi per una generazione di codice, una comprensione dei programmi e un debug automatizzato più potenti.
English
Training large language models (LLMs) on Python execution traces grounds them in code execution and enables the line-by-line execution prediction of whole Python programs, effectively turning them into neural interpreters (FAIR CodeGen Team et al., 2025). However, developers rarely execute programs step by step; instead, they use debuggers to stop execution at certain breakpoints and step through relevant portions only while inspecting or modifying program variables. Existing neural interpreter approaches lack such interactive control. To address this limitation, we introduce neural debuggers: language models that emulate traditional debuggers, supporting operations such as stepping into, over, or out of functions, as well as setting breakpoints at specific source lines. We show that neural debuggers -- obtained via fine-tuning large LLMs or pre-training smaller models from scratch -- can reliably model both forward execution (predicting future states and outputs) and inverse execution (inferring prior states or inputs) conditioned on debugger actions. Evaluated on CruxEval, our models achieve strong performance on both output and input prediction tasks, demonstrating robust conditional execution modeling. Our work takes first steps towards future agentic coding systems in which neural debuggers serve as a world model for simulated debugging environments, providing execution feedback or enabling agents to interact with real debugging tools. This capability lays the foundation for more powerful code generation, program understanding, and automated debugging.