Home → Assistenza

Il prompt di sistema si comporta diversamente a seconda del modello

Le API in stile OpenAI trasmettono l'istruzione di sistema come primo messaggio dell'array messages. Le API in stile Anthropic la ricevono come parametro system separato, di primo livello. Uno strato di traduzione che converte l'una nell'altra deve spostarla, e alcuni lo fanno trasformandola in un turno utente.

Cosa vedi

Perché succede

Poiché ciascuna forma è JSON valido per l'altra, gli errori raramente producono un fallimento. La richiesta riesce e l'istruzione ha semplicemente meno peso, il che sembra un modello peggiore più che un problema di collegamento.

Più messaggi di sistema sono un'altra divergenza. Alcune implementazioni li concatenano, altre tengono solo il primo, e alcune rifiutano la richiesta.

I modelli di ragionamento aggiungono una terza variante: alcuni trattano le istruzioni dello sviluppatore separatamente dal testo di sistema visibile, quindi il punto in cui metti un'istruzione determina se sopravvive fino al passaggio di ragionamento.

Come risolvere

  1. Un solo messaggio di sistema, per primoUn messaggio di sistema all'inizio dell'array funziona ovunque. È dividendo le istruzioni su più messaggi che le implementazioni divergono.
  2. Testa l'istruzione, non il codice di rispostaQuando cambi provider, chiedi al modello di ripetere la sua istruzione. Un 200 non dimostra nulla sul fatto che l'istruzione sia arrivata.
  3. Non affidare le regole rigide solo al ruolo systemSe un vincolo conta davvero, ripetilo anche nel turno utente. Costa qualche token e sopravvive a qualsiasi strato di traduzione.
APICLAN espone entrambe le forme con la stessa chiave: /v1/chat/completions per la forma OpenAI e /v1/messages per quella Anthropic. Usa l'endpoint che corrisponde alla famiglia del modello e l'istruzione di sistema non avrà bisogno di alcuna traduzione.

Articoli correlati

Unexpected token '<' quando chiami un'API compatibile con OpenAI401 invalid API key: quando la chiave sembra giusta ma continua a fallire

Ultima verifica: 2026-10-01. Scritto a partire da problemi diagnosticati su un gateway compatibile con OpenAI in produzione, non raccolto da altri siti.