Guide
Perché l'AI continua a modificare il file sbagliato nel mio progetto?
Pubblicato:
Chiedi al tuo assistente AI di sistemare il form di login, e lui con tutta sicurezza modifica un file che con il login non c’entra niente, o peggio, cita un file che non esiste. Frustrante, e sembra che l’AI sia sbadata. Non lo è. L’AI modifica il file sbagliato perché non vede tutto il progetto e tira a indovinare dove stanno le cose. La buona notizia: la soluzione è semplice e non è «scrivi un prompt migliore». È dare all’AI una mappa del tuo codice. Vediamo cosa succede davvero.
L’AI lavora al buio
Un assistente AI non tiene tutto il tuo codice in testa. Lavora su una finestra di contesto limitata, la fetta di progetto che riesce a vedere in un dato momento. Su un progetto piccolo quella fetta può essere tutto. Su uno vero, con centinaia di file, è una frazione. Così, quando dici «sistema il form di login», l’AI deve indovinare a quale file ti riferisci, basandosi su nomi e schemi che ha già visto.
Quasi sempre indovina bene. Ma indovinare regge male con la scala: più il progetto è grande e fuori dagli schemi, più spesso l’AI prende un file sbagliato dall’aria plausibile, o predice un nome che le pare probabile e che semplicemente non esiste. Questo secondo caso è un’allucinazione: non sta mentendo, sta solo riempiendo con sicurezza un vuoto che non riesce a vedere.
Perché «dagli più contesto» si ritorce contro
L’istinto è rovesciare tutto il codice dentro l’AI: una finestra più grande non risolverà il problema? Di solito no. Un contesto enorme pieno dei file sbagliati non vale più di uno piccolo. Non conta quanto codice l’AI riesce a vedere, ma se ha davanti quello giusto. Butta dentro tutto e il file che serve finisce sepolto nel rumore, più difficile da trovare, non più facile. La dimensione grezza è la leva sbagliata.
Pensala come chiedere la strada. Dare a qualcuno tutte le mappe del paese non lo aiuta a trovare un indirizzo. Una sola mappa chiara di questo quartiere sì.
La vera soluzione: dai all’AI una mappa
Quel che funziona sul serio è una mappa del codice, un riassunto compatto della struttura del progetto: quali file e funzioni esistono, e come si collegano tra loro. Con quella mappa l’AI smette di indovinare. Invece di «questo file si chiamerà tipo login», può vedere «la logica di login sta qui, e richiama queste due cose», e puntare dritta al posto giusto.
Questa idea ha qualche nome e qualche strumento:
- La repo map, come quella integrata in Aider, che ordina le parti più importanti del codice e ne mostra all’AI uno schema strutturato.
- Il code knowledge graph, come graphify, che costruisce una mappa interrogabile di tutto il progetto, file, funzioni e relazioni comprese, così l’assistente può cercare dove sta una cosa invece di predirla.
Entrambi fanno la stessa cosa essenziale: sostituiscono l’indovinare con il sapere. E dato che l’AI legge una mappa piccola e precisa invece di scorrere pile di file, le modifiche al file sbagliato e i riferimenti inventati crollano.
Come si vede tutto questo nella pratica
Una volta che il tuo assistente ha una mappa del codice, l’esperienza cambia faccia:
- «Sistema il form di login» arriva sul codice di login vero, al primo colpo.
- L’AI smette di citare file che non ci sono.
- Capisce come una modifica in un punto si ripercuote su un altro, perché la mappa mostra i collegamenti.
Non stai più litigando con lo strumento per la navigazione di base: stai lavorando con qualcosa che conosce il terreno. Ed è anche per questo che la faccenda pesa di più man mano che il progetto cresce: più il codice è grande, più una mappa batte il contesto a forza bruta.
Prepara la tua AI a riuscire
Le modifiche al file sbagliato di solito sono il segno che l’AI è mal equipaggiata per il tuo progetto, non che lo strumento è scadente. Il nostro strumento gratuito AI per Sviluppatori ti aiuta a scegliere l’assistente giusto, a installarlo per il tuo sistema operativo e a generare un file di regole iniziale che spiega all’AI come è organizzato il progetto fin dalla prima sessione. Dai al tuo assistente delle fondamenta e una mappa, e «perché ha modificato il file sbagliato?» smette di essere una domanda che devi porti.
Continua a leggere
Domande frequenti
Perché il mio assistente AI modifica il file sbagliato? +
Perché non vede tutto il progetto in una volta sola e tira a indovinare dove stanno le cose. Un assistente AI lavora su una porzione limitata del codice, quindi sui progetti grandi finisce spesso per prendere un file plausibile invece di quello giusto, o per citare un file che non esiste. La soluzione non è un prompt più furbo, ma dargli una mappa accurata di come è strutturato il codice.
Una finestra di contesto più grande non risolve tutto? +
Non in modo affidabile. Un contesto enorme pieno dei file sbagliati non vale più di uno piccolo: conta che davanti all'AI ci siano i file giusti, non quanti sono. Riempire tutto può anzi peggiorare le cose, perché seppellisce il codice utile nel rumore. Una mappa mirata batte la dimensione grezza.
Cos'è una mappa del codice e come aiuta? +
Una mappa del codice (o code knowledge graph) è un riassunto compatto della struttura del progetto: quali file e funzioni esistono e come si collegano. Con quella mappa l'AI trova il punto giusto invece di indovinarlo, e le modifiche al file sbagliato e i riferimenti inventati calano nettamente. Strumenti come la repo map di Aider e graphify ne costruiscono una al posto tuo.
Perché a volte l'AI inventa file che non esistono? +
È un'allucinazione: quando l'AI non conosce davvero la tua struttura, predice un nome di file che le sembra probabile in base agli schemi già visti, e sbaglia. Capita più spesso sui progetti grandi o poco familiari. Dargli una mappa vera del progetto elimina alla radice le supposizioni che la causano.