Cos'è un system prompt?

Risposta rapida

Un system prompt è un blocco di istruzioni inviato a un modello di IA prima della conversazione, che ne stabilisce ruolo, regole, tono e formato. Lo scrive l'app, l'utente raramente lo vede e viene rinviato con ogni messaggio. Le istruzioni personalizzate e le istruzioni di progetto sono le parti del system prompt che un prodotto ti permette di aggiungere.

Il messaggio che non hai mai inviato ma che il modello legge per primo

Ogni app di chat invia al modello più del tuo messaggio. Prima delle tue parole arriva un blocco di testo scritto dall'app: come si chiama l'assistente, cosa deve e non deve fare, come formattare le risposte, qual è la data di oggi, quali strumenti può usare. Quel blocco è il system prompt. Tu scrivi "riassumi questo"; il modello riceve una pagina di regole seguita da "riassumi questo".

Il modello tratta il system prompt come un ordine permanente. Un modello a cui viene chiesto di essere "un assistente conciso che risponde in inglese britannico e non usa mai elenchi puntati" lo farà per tutta la conversazione senza bisogno di promemoria, perché l'istruzione arriva di nuovo con ogni messaggio. Questo rinvio continuo è il dettaglio che sfugge, ed è quello che costa denaro, che la terza sezione quantifica.

Puoi vederne di reali. Anthropic pubblica i system prompt che usa per Claude nelle sue app, con note di rilascio quando cambiano. Leggerne uno è il modo più rapido per capire il genere: paragrafi su tono, su quando usare elenchi, su come gestire una richiesta da rifiutare, sulla data di cutoff della conoscenza, scritti in inglese semplice invece che in codice. Altri trapelano; il prompt della chat di Bing che chiamava l'assistente "Sydney" è stato estratto da uno studente di Stanford nel febbraio 2023 chiedendo al modello di ripetere il testo sopra la conversazione.

Perché la stessa domanda ottiene una risposta diversa in un'app diversa

Le API dei modelli etichettano ogni messaggio con un ruolo, e il modello è addestrato a pesarli in modo diverso.

RuoloChi lo scriveA cosa serveIl modello lo tratta come
SystemL'app, più eventuali istruzioni personalizzate aggiunteIdentità, regole, formato, strumenti, dataOrdini permanenti che prevalgono sul turno dell'utente
UserTuLa domanda, il testo incollato, il file allegatoIl compito da svolgere ora
AssistantIl modelloLe sue risposte precedentiLa propria storia, con cui restare coerente

Da questo ordine derivano due conseguenze. Il system prompt imposta la cornice, quindi lo stesso messaggio dell'utente ottiene una risposta diversa in una cornice diversa: "scrivi un limerick" produce un limerick con un system prompt e un rifiuto con un system prompt per un assistente bancario. E il system prompt è dell'app, quindi cambiare app sullo stesso modello cambia le risposte anche se il modello non è cambiato. Cos'è un LLM separa il modello dall'app; il system prompt è gran parte di quella separazione.

Il confine non è assoluto. I modelli sono addestrati a seguire il system prompt più dell'utente, ma un messaggio dell'utente può comunque convincere un modello ad abbandonare le sue istruzioni, il che è tutto l'argomento di cos'è il jailbreaking dell'IA. Un system prompt è un predefinito forte, non un lucchetto.

Quanto costa un system prompt, perché viene inviato ogni turno

Il system prompt è composto da token in ingresso, e cosa sono i token nell'IA mostra che l'input viene fatturato a ogni messaggio. Una conversazione di 100 turni con un system prompt di 8.000 token invia quel prompt 100 volte: 800.000 token in ingresso prima ancora di una tua singola parola.

Calcoliamolo al prezzo di listino. Un messaggio standard è di circa 1.000 token in ingresso e 500 in uscita. Aggiungere un'istruzione di 8.000 token, che corrisponde a 32.000 caratteri di inglese a quattro caratteri per token, su ognuno dei 100 messaggi costa l'input extra qui sotto ai prezzi OpenRouter dell'indice dei costi dei modelli IA, rilevati il 2026-08-20.

Un'istruzione completa triplica il prezzo di listino di 100 messaggi
100 messaggi semplicicon un'istruzione da 8.000 token$0$2$4$6prezzo di listinoGPT-5.6 Luna$0.08$0.243.0xGemini 3.7 Flash$0.13$0.433.3xClaude Sonnet 5$0.70$2.303.3xClaude Opus 5$1.75$5.753.3x

I provider fanno caching: OpenAI scala del 50% il costo dell'input in cache, e del 90% sui suoi modelli più recenti, e Anthropic fattura una lettura dalla cache a un decimo del prezzo di listino, quindi un'app che imposta il caching paga molto meno rispetto al grafico. Il grafico riporta il prezzo di listino, che è ciò che traccia l'indice dei costi e ciò che paga qualsiasi app che salta il caching. Le istruzioni permanenti lunghe restano l'unico testo inviato ogni volta.

Whizi fa il contrario. Un messaggio costa un numero fisso di crediti stabilito dal modello, 1 sul modello della casa, 10 su Claude Sonnet 5, 20 su Claude Opus 5, e la lunghezza dell'istruzione non entra mai nel prezzo. Gli stessi 100 messaggi costano 100, 1.000 o 2.000 crediti, con o senza l'istruzione. Come funzionano i crediti Whizi ha la scala completa.

Quale parte del system prompt puoi scrivere tu

I prodotti espongono una porzione del system prompt che puoi compilare. ChatGPT la chiama istruzioni personalizzate e memoria; Claude ha istruzioni di progetto e stili; Gemini ha informazioni salvate. Qualunque sia il nome, il tuo testo viene aggiunto alle istruzioni del prodotto e rinviato a ogni turno.

In Whizi la porzione è il progetto. Un progetto è una cartella di conversazioni con proprie istruzioni, fino a 32.000 caratteri, applicate a ogni chat al suo interno e ricostruite nel prompt a ogni messaggio. I file appuntati viaggiano allo stesso modo, limitati a 32.000 caratteri di testo estratto per file e 120.000 per l'intero blocco del progetto. Non esiste un campo di istruzioni personalizzate a livello di account: l'istruzione per progetto è l'unica istruzione scritta dall'utente nel prodotto, quindi una preferenza che vuoi ovunque va incollata in ogni progetto.

I quattro agenti integrati mostrano l'altro lato. Le righe Commercialista Canadese, Study Mentor, Writing Copilot e Math Tutor portano ciascuna un system prompt fisso scritto nel catalogo dei modelli, che non puoi modificare. Scegliere un agente significa scegliere un system prompt.

Cosa deve contenere, dagli esempi pubblicati

Le istruzioni che funzionano si leggono come un brief a un nuovo collega, e i prompt pubblicati di Claude sono il miglior modello pubblico del genere. Quattro cose contano più delle altre.

  1. Ruolo e pubblico in un'unica frase. "Sei un assistente fiscale per lavoratori autonomi canadesi" fa di più di tre paragrafi di aggettivi.
  2. Regole di formato dichiarate come regole. "Rispondi in meno di 150 parole. Nessun elenco puntato. Ortografia britannica." I modelli seguono gli imperativi diretti in modo più affidabile delle preferenze.
  3. Cosa fare in caso di incertezza. "Se la risposta dipende da un fatto che non conosci, fai una domanda prima di rispondere." Senza questo, il modello indovina.
  4. Cosa rifiutare, e come. Nomina le categorie e la formulazione del rifiuto, o il modello ne inventerà una propria.

Cosa non deve contenere: fatti che cambiano. Un prezzo, un numero di modelli o una data scritti in un system prompt vengono riaffermati a ogni turno finché qualcuno non li modifica, ed è così che un'istruzione obsoleta diventa una risposta sbagliata con sicurezza per mesi. Metti i fatti che cambiano in un file appuntato o in una ricerca, non negli ordini permanenti, perché il cutoff della conoscenza del modello li rende comunque obsoleti. Prompt engineering per principianti copre il lato per messaggio della stessa arte.

Lista di controllo
  • Scrivi il ruolo e il pubblico nella prima frase di qualsiasi istruzione tu aggiunga
  • Dichiara il formato come regole, non come preferenze: limiti di parole, niente elenchi, quale ortografia
  • Mantieni brevi le istruzioni permanenti; ogni carattere viene rinviato a ogni messaggio
  • Tieni i fatti che cambiano fuori dall'istruzione e mettili in un file appuntato o in una ricerca
  • Dì al modello cosa fare quando gli manca un dato, o riempirà lui il vuoto

Domande frequenti

Qual è la differenza tra un system prompt e uno user prompt?

Il system prompt è scritto dall'app e stabilisce regole permanenti: ruolo, tono, formato, cosa rifiutare. Lo user prompt è il tuo messaggio, il compito da svolgere ora. I modelli sono addestrati a seguire il system prompt più del turno dell'utente, e il system prompt viene rinviato a ogni messaggio mentre ogni user prompt viene inviato una sola volta.

Posso vedere il system prompt di ChatGPT o Claude?

Anthropic pubblica i system prompt usati nelle app di Claude, con note di rilascio per ogni modifica. OpenAI non pubblica quello di ChatGPT, anche se alcune versioni sono state estratte e pubblicate dagli utenti. Chiedere a un modello di ripetere le sue istruzioni a volte funziona e a volte produce una versione inventata, quindi tratta un prompt trapelato come non verificato finché il fornitore non lo conferma.

Un system prompt costa token?

Sì, a ogni messaggio. È testo in ingresso, e viene rinviato a ogni turno, quindi un'istruzione di 8.000 token su 100 messaggi equivale a 800.000 token in ingresso. Al prezzo di listino triplica il costo di una conversazione su Claude Sonnet 5, da $0.70 a $2.30. Whizi applica un prezzo fisso in crediti per messaggio stabilito dal modello, quindi la lunghezza dell'istruzione non cambia quanto paghi.

Cosa sono le istruzioni personalizzate?

La parte del system prompt che un prodotto ti permette di scrivere. Il tuo testo viene aggiunto alle istruzioni proprie dell'app e inviato a ogni messaggio. In ChatGPT è un campo nelle impostazioni; in Whizi è l'istruzione per progetto, fino a 32.000 caratteri, che si applica a ogni conversazione in quel progetto.

Un utente può ignorare il system prompt?

A volte. I modelli sono addestrati a dare priorità al system prompt, e uno ben scritto resiste alle richieste ordinarie. I messaggi costruiti apposta per convincere un modello ad abbandonare le sue regole sono jailbreak, e i fornitori li trattano come un problema di sicurezza, non come una funzionalità. Ciò che non deve mai accadere va messo nel codice fuori dal modello, dove un messaggio non può discutere con esso.