ChatPaper.aiChatPaper

Ricerca: Migliorare la Gestione delle Eccezioni nel Codice con un Approccio Multi-Agente basato su LLM

Seeker: Enhancing Exception Handling in Code with LLM-based Multi-Agent Approach

October 9, 2024
Autori: Xuanming Zhang, Yuxuan Chen, Yuan Yuan, Minlie Huang
cs.AI

Abstract

Nello sviluppo di software nel mondo reale, una gestione impropria o mancante delle eccezioni può avere un impatto significativo sulla solidità e affidabilità del codice. I meccanismi di gestione delle eccezioni richiedono ai programmatori di individuare, catturare e gestire le eccezioni secondo standard elevati, ma molti sviluppatori faticano con queste attività, portando a codice fragile. Questo problema è particolarmente evidente nei progetti open source e influisce sulla qualità complessiva dell'ecosistema software. Per affrontare questa sfida, esploriamo l'uso di grandi modelli linguistici (LLM) per migliorare la gestione delle eccezioni nel codice. Attraverso un'analisi approfondita, identifichiamo tre problemi chiave: Rilevamento Insensibile del Codice Fragile, Cattura Inaccurata dei Tipi di Eccezioni e Soluzioni di Gestione Distorte. Questi problemi sono diffusi nei repository del mondo reale, suggerendo che spesso le pratiche robuste di gestione delle eccezioni vengono trascurate o gestite in modo errato. In risposta, proponiamo Seeker, un framework multiagente ispirato alle strategie degli sviluppatori esperti per la gestione delle eccezioni. Seeker utilizza agenti: Scanner, Detector, Predator, Ranker e Handler per assistere i LLM nel rilevare, catturare e risolvere le eccezioni in modo più efficace. Il nostro lavoro è il primo studio sistematico sull'utilizzo dei LLM per migliorare le pratiche di gestione delle eccezioni, fornendo preziose intuizioni per futuri miglioramenti nella affidabilità del codice.
English
In real world software development, improper or missing exception handling can severely impact the robustness and reliability of code. Exception handling mechanisms require developers to detect, capture, and manage exceptions according to high standards, but many developers struggle with these tasks, leading to fragile code. This problem is particularly evident in open source projects and impacts the overall quality of the software ecosystem. To address this challenge, we explore the use of large language models (LLMs) to improve exception handling in code. Through extensive analysis, we identify three key issues: Insensitive Detection of Fragile Code, Inaccurate Capture of Exception Types, and Distorted Handling Solutions. These problems are widespread across real world repositories, suggesting that robust exception handling practices are often overlooked or mishandled. In response, we propose Seeker, a multi agent framework inspired by expert developer strategies for exception handling. Seeker uses agents: Scanner, Detector, Predator, Ranker, and Handler to assist LLMs in detecting, capturing, and resolving exceptions more effectively. Our work is the first systematic study on leveraging LLMs to enhance exception handling practices, providing valuable insights for future improvements in code reliability.
PDF63November 16, 2024