Versionamento dei prompt: traccia, confronta e ripristina
Un buon prompt raramente nasce già perfetto. Ritocchi una frase, aggiungi un vincolo, cambi un esempio e, dopo tre modifiche, il risultato è peggiore del punto di partenza, senza una via chiara per tornare indietro. Il versionamento dei prompt salva un'istantanea di ogni cambiamento significativo: così puoi confrontare quello che avevi con quello che hai, ripristinare la versione che funzionava davvero e capire quale modifica ha fatto la differenza, invece di andare a tentativi.
Hai modificato un prompt che funzionava, la qualità è calata e devi tornare esattamente al testo che avevi la settimana scorsa.
Due persone modificano lo stesso prompt condiviso e ti serve uno storico che mostri chi ha cambiato cosa, quando e perché.
Stai provando due formulazioni di un system prompt e vuoi tenere entrambe le versioni affiancate invece di sovrascriverne una.
Un aggiornamento del modello (ad esempio da Claude 3.5 a una release più recente) ha cambiato il comportamento del prompt e vuoi creare una versione dedicata a quel modello senza perdere l'originale.
Stai iterando velocemente e vuoi etichettare un checkpoint affidabile prima di ricominciare a sperimentare.
Errori da evitare
Sovrascrivere la versione funzionante sul posto. Nel momento in cui incolli il nuovo testo sopra il vecchio, la formulazione che funzionava è persa. Salva un'istantanea prima di ogni modifica significativa, non quando ormai te ne sei pentito.
Versionare il testo del prompt ma non il contesto attorno. Il modello, la temperatura e le {variabili} che hai compilato fanno tutti parte del risultato: registrali insieme a ogni versione, altrimenti l'istantanea non è riproducibile.
Scrivere note vaghe come «prompt migliorato». Sei versioni dopo non riesci più a capire quale modifica ha sistemato l'output JSON. Annota cosa hai cambiato e perché, non solo che qualcosa è cambiato.
Trattare ogni singola battitura come una nuova versione. Lo storico diventa rumore. Crea una versione ai checkpoint reali (una formulazione che hai testato, una correzione che hai rilasciato), non a ogni virgola che sposti.
Prompt da copiare
01
Scrivi una voce di changelog per la versione
Sei un prompt engineer che cura una libreria di prompt versionati. Confronta la versione precedente e quella nuova del mio prompt qui sotto e scrivi una voce di changelog per la versione nuova. PRECEDENTE: {old_prompt}. NUOVA: {new_prompt}. Struttura la voce così: un'etichetta di versione secondo il versionamento semantico, sapendo che l'ultima versione era {last_version}, un riassunto di una riga, un elenco puntato di ciò che è cambiato e una nota che indichi se la modifica rompe la compatibilità per chi riutilizza questo prompt. Resta sotto le 120 parole e attieniti ai fatti. Non elogiare la modifica.
02
Spiega come si comportano diversamente due versioni
Sei un revisore QA di prompt. Ecco due versioni dello stesso prompt. VERSIONE A: {version_a}. VERSIONE B: {version_b}. Considera che entrambe girano su questo input: {test_input}. Senza eseguire nulla, prevedi come differirebbe l'output del modello tra A e B, concentrandoti su formato, tono, livello di dettaglio e su ogni vincolo che una impone e l'altra elimina. Presenta le differenze in una tabella con le colonne Aspetto, Versione A, Versione B. Chiudi con una frase che indichi quale versione è più sicura da rilasciare per {use_case} e perché.
03
Consiglia quale numero di versione aumentare
Gestisci prompt versionati con il versionamento semantico (MAJOR.MINOR.PATCH). La versione attuale è {current_version}. Ecco la modifica che ho fatto: {change_description}. Decidi se si tratta di un aumento MAJOR, MINOR o PATCH usando queste regole: MAJOR significa che la forma o il comportamento dell'output cambia in modo da rompere la compatibilità per gli utenti esistenti, MINOR significa una nuova funzionalità aggiunta mantenendo la compatibilità all'indietro, PATCH significa una correzione di testo o chiarezza senza cambi di comportamento. Rispondi solo con il nuovo numero di versione, il tipo di aumento e una frase di motivazione.
04
Rivedi una modifica al prompt prima di salvarla
Sei un revisore attento che approva le modifiche a un prompt condiviso. Rivedi la modifica qui sotto prima che io la salvi come nuova versione. VERSIONE ATTUALE: {current_prompt}. MODIFICA PROPOSTA: {new_prompt}. OBIETTIVO della modifica: {goal}. Controlla se ci sono istruzioni che ora si contraddicono, vincoli rimossi per sbaglio, {placeholders} che non si risolvono più e allargamenti di ambito oltre l'obiettivo dichiarato. Fornisci un verdetto APPROVA oppure RICHIEDI MODIFICHE, poi un breve elenco puntato dei problemi ordinati per gravità. Se scegli RICHIEDI MODIFICHE, proponi la correzione minima che risolve ciascun problema.
05
Crea test di regressione per una versione del prompt
Stai impostando dei test di regressione perché le versioni future di un prompt non si rompano in silenzio. Ecco il prompt: {prompt}. Il suo compito è: {intended_behavior}. Genera 6 casi di test che qualsiasi versione futura deve continuare a superare. Per ognuno indica un nome breve, l'input da fornire e una condizione di superamento che descriva cosa l'output deve contenere o non deve mai contenere. Copri il caso normale, un caso limite con {variabili} mancanti e un caso pensato per far rompere al prompt il suo formato di output. Restituisci i casi come elenco numerato.
Come salvarli in PromptAtlas
Crea una cartella per attività o canale.
Aggiungi tag chiari per le ricerche future.
Trasforma i dettagli variabili in campi.
Salva versioni migliori senza cancellare tentativi utili.
Esporta la libreria quando serve un backup.
Domande frequenti
Cos'è il versionamento dei prompt?
Il versionamento dei prompt consiste nel conservare uno storico salvato di un prompt man mano che cambia nel tempo, così ogni modifica significativa diventa un'istantanea che puoi vedere, confrontare e ripristinare. Applica al testo dei tuoi prompt la stessa logica del controllo di versione usato per il codice.
In cosa il versionamento dei prompt è diverso dal salvare semplici copie?
Salvare copie ti lascia file sparsi; il versionamento ti dà una linea temporale. Uno strumento di versionamento collega le istantanee a un unico prompt, mostra le differenze tra loro, registra perché ognuna è cambiata e ti permette di ripristinare con un clic, invece di cercare tra «prompt-finale-v3-davvero-finale.txt».
Dovrei usare il versionamento semantico (v1.2.0) per i prompt?
Puoi farlo, ed è utile quando altre persone dipendono dal prompt. Una regola semplice: aumenta il numero major per un cambiamento di comportamento che rompe la compatibilità, il numero minor quando aggiungi una funzionalità e il numero patch per i ritocchi al testo. Per i prompt personali, di solito bastano un timestamp e un'etichetta breve.
Cosa dovrei registrare oltre al testo del prompt?
Registra il modello e le impostazioni per cui è stato scritto, una nota breve su cosa è cambiato e perché e, idealmente, un input di esempio con l'output che hai ottenuto. È proprio quel contesto a farti capire perché una vecchia versione si comportava in un certo modo quando ci torni sopra mesi dopo.
{A}
Crea la tua libreria di prompt
Salva i prompt che funzionano, aggiungi variabili, conserva le versioni e ritrovali in pochi secondi.