Ricercatore: Verso la Generazione di Codice con Sicurezza delle Eccezioni utilizzando il Framework degli Agenti di Linguaggio Intermedio

Seeker: Towards Exception Safety Code Generation with Intermediate Language Agents Framework

December 16, 2024
Autori: Xuanming Zhang, Yuxuan Chen, Yiming Zheng, Zhexin Zhang, Yuan Yuan, Minlie Huang
cs.AI

Abstract

Nello sviluppo software del mondo reale, una gestione impropria o mancante delle eccezioni può avere un impatto grave sulla robustezza 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 un 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 del Blocco di Eccezione e Soluzione di Gestione Distorta. Questi problemi sono diffusi in repository del mondo reale, suggerendo che le pratiche robuste di gestione delle eccezioni spesso vengono trascurate o gestite in modo errato. In risposta, proponiamo Seeker, un framework multi-agente 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 in scenari reali di sviluppo, 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 Block, and Distorted Handling Solution. 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 in real development scenarios, providing valuable insights for future improvements in code reliability.

Summary

AI-Generated Summary

PDF52December 18, 2024