Vai al contenuto
AI.info

Ricerca

ExecRetrieval: misurare il divario di correttezza funzionale nel recupero di codice tramite embedding

Il recupero di codice basato su embedding è una componente fondamentale degli agenti di programmazione e della generazione di codice con recupero di informazioni: in questi ambiti, trovare codice corr

ExecRetrieval: misurare il divario di correttezza funzionale nel recupero di codice tramite embedding
arXiv
2609.01865
Pubblicato
2026-09-01
Autori
Aaryan Kapoor, Md Abdullah Al Hafiz Khan

Abstract degli autori

Il recupero di codice basato su embedding è una componente fondamentale degli agenti di programmazione e della generazione di codice con recupero di informazioni: in questi ambiti, trovare codice corretto conta più che trovare codice lessicalmente simile. I benchmark esistenti per il recupero di codice non inseriscono nell’insieme di ricerca varianti dell’implementazione canonica di ciascuna query ottenute con una sola modifica controllata e verificate tramite esecuzione. Resta quindi senza risposta, in un contesto di recupero, la domanda se gli embedding sappiano distinguere sul piano funzionale il codice corretto da copie quasi identiche ma errate. Per rispondere serve un benchmark il cui insieme di ricerca contenga esso stesso i controfattuali pertinenti — varianti con bug, verificate tramite esecuzione e quasi identiche a ciascuna implementazione canonica — così da poter verificare direttamente se l’ordinamento dei risultati prodotto da un sistema di recupero distingua il codice in base alla sua funzionalità, anziché alla sovrapposizione tematica o all’identità. Presentiamo ExecRetrieval: 939 task Python, ciascuno associato a 1 implementazione canonica verificata tramite esecuzione e a un massimo di quattro distrattori con bug, anch’essi verificati tramite esecuzione e generati ciascuno mediante una mutazione meccanica che apporta una singola modifica mirata. Valutiamo 23 configurazioni di embedding densi, oltre a BM25, usando le modalità di invocazione native dei rispettivi fornitori, test di McNemar per dati appaiati e intervalli bootstrap a livello di query. Con i controfattuali quasi identici nell’insieme di ricerca, il migliore sistema ospitato raggiunge exec@10 = 1,00, ma soltanto exec@1 = 0,331; nei quattro sistemi migliori, i risultati errati in posizione 1 sono varianti con bug abbinate nel 91,5-99,4% dei casi, e l’implementazione canonica ottiene un punteggio inferiore a quello di almeno uno dei suoi quattro distrattori abbinati nel 67-78% delle query. Il dataset completo, l’oracolo di esecuzione, le matrici di embedding, lo snapshot dell’ambiente e i test statistici a coppie sono disponibili all’URL riportato nell’Appendice D.

Il riassunto di questo paper è disponibile solo in inglese: leggilo nella pagina inglese.

Leggi il paper originale su arXiv