7 novembre 2024
Migliorare gli assistenti alla programmazione basata sull'IA con il contesto lungo dei modelli Gemini
Uno dei campi più interessanti nell'applicazione di finestre con contesto lungo è la generazione e la comprensione del codice. Le basi di codice di grandi dimensioni richiedono una conoscenza approfondita di relazioni e dipendenze complesse, qualcosa che i modelli di IA tradizionali faticano a comprendere. Espandendo la quantità di codice con finestre di contesto di grandi dimensioni, possiamo ottenere un nuovo livello di accuratezza e utilità nella generazione e nella comprensione del codice.
Abbiamo collaborato con Sourcegraph, i creator di Cody, l'assistente alla programmazione basata sull'IA che supporta LLM come Gemini 1.5 Pro e Flash, per esplorare il potenziale delle finestre contestuali lunghe in scenari di programmazione reali. L'attenzione di Sourcegraph all'integrazione della ricerca e dell'analisi del codice nella generazione di codice AI e il deployment riuscito di Cody in aziende con codebase di grandi dimensioni e complesse come Palo Alto Networks e Leidos hanno reso Sourcegraph il partner ideale per questa esplorazione.
Approccio e risultati di Sourcegraph
Sourcegraph ha confrontato il rendimento di Cody con una finestra contestuale di 1 milione di token (utilizzando Gemini 1.5 Flash di Google) rispetto alla versione di produzione. Questo confronto diretto ha permesso di isolare i vantaggi del contesto espanso. Si sono concentrati sulla risposta a domande tecniche, un'attività fondamentale per gli sviluppatori che lavorano con codebase di grandi dimensioni. Hanno utilizzato un set di dati di domande impegnative che richiedevano una comprensione approfondita del codice.
I risultati sono stati sorprendenti. Tre dei benchmark principali di Sourcegraph, ovvero Copertura essenziale, Concisione essenziale e Utilità, hanno dimostrato miglioramenti significativi con l'utilizzo del contesto più lungo.
Richiamo essenziale: la proporzione di fatti cruciali nella risposta è aumentata notevolmente.
Concisione essenziale: è migliorata anche la proporzione di fatti essenziali normalizzati in base alla lunghezza della risposta, il che indica risposte più concise e pertinenti.
Utilità: il punteggio di utilità complessivo, normalizzato in base alla lunghezza della risposta, è aumentato in modo significativo, a indicare un'esperienza più user-friendly.
Inoltre, l'utilizzo di modelli con contesto lungo ha ridotto drasticamente il tasso complessivo di allucinazioni (la generazione di informazioni in modo errato). Il tasso di allucinazioni è diminuito dal 18,97% al 10,48%, un miglioramento significativo in termini di precisione e affidabilità.
Scelte e prospettive future
Sebbene i vantaggi del contesto lungo siano significativi, esistono dei compromessi. Il tempo necessario per il primo token aumenta in modo lineare con la lunghezza del contesto. Per ovviare a questo problema, Sourcegraph ha implementato un meccanismo di pre-caricamento e un'architettura del modello di contesto a più livelli per la memorizzazione nella cache dello stato di esecuzione del modello. Con i modelli con contesto lungo di Gemini 1.5 Flash e Pro, il tempo necessario per generare il primo token è stato ottimizzato da 30-40 secondi a circa 5 secondi per i contesti di 1 MB, un miglioramento considerevole per la generazione di codice in tempo reale e l'assistenza tecnica.
Questa collaborazione mostra il potenziale trasformativo dei modelli a contesto lungo nel rivoluzionare la comprensione e la generazione di codice. Siamo lieti di collaborare con aziende come Sourcegraph per continuare a sbloccare paradigmi e applicazioni ancora più innovativi con finestre di contesto ampie.
Per approfondire le metodologie di valutazione, i benchmark e le analisi dettagliate di Sourcegraph, inclusi esempi illustrativi, non perderti il post del blog dettagliato.