Migrazione a GPT-6.1 Sol: 9 cose che possono andare storte

AIHubMix8 min di lettura
Migrazione a GPT-6.1 Sol: 9 cose che possono andare storte

Passare da GPT-6 Sol a 6.1 Sol sembra un cambiamento di una sola riga, e il prezzo è lo stesso. Ma ci sono alcune modifiche significative e alcuni cambiamenti nel comportamento, quindi cambiare solo il nome del modello può portarti a errori, una bolletta a sorpresa o un agente che si comporta in modo diverso. La guida alla migrazione di OpenAI per GPT-6 copre la maggior parte delle modifiche ufficiali. Questo post aggiunge le cose che tendono a creare problemi nella pratica.

Sono ordinate da "fallisce rumorosamente" a "fallisce silenziosamente."


1. reasoning_effort: "none" restituisce un 400

Cosa vedrai: La richiesta viene rifiutata.

Perché: 6.1 Sol non supporta none o minimal. Il livello più basso è low. GPT-6 Sol e Luna accettano ancora none, motivo per cui il tuo vecchio codice funzionava lì.

Correzione:

  • La mappatura di OpenAI è di sostituire none con low. Per minimal, inizia da low e confronta.
  • low è più lento e più costoso di none, perché genera token di ragionamento. Per percorsi veramente sensibili alla latenza come l'autocompletamento o la classificazione in tempo reale, rimanere su GPT-6 Sol o passare a Luna potrebbe essere la scelta migliore.

2. La chiamata degli strumenti nelle Chat Completions smette di funzionare

Cosa vedrai: Le richieste di Chat Completions che includono tools falliscono.

Perché: GPT-6 Sol consentiva solo la chiamata di funzioni nelle Chat Completions quando reasoning_effort era none, e molti progetti si basavano su quella combinazione per chiamate agli strumenti a basso costo. Con none non più disponibile, le Chat Completions su 6.1 Sol funzionano solo per richieste senza strumenti. Per gli strumenti devi utilizzare l'API delle Risposte. La guida di OpenAI per migrando all'API delle Risposte spiega il processo.

Correzione: Passa a /v1/responses. AIHubMix lo supporta anche; consulta la documentazione dell'API delle Risposte di AIHubMix per i parametri.

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["AIHUBMIX_API_KEY"],
    base_url="https://aihubmix.com/v1",
)

resp = client.responses.create(
    model="gpt-6.1-sol",
    reasoning={"effort": "low"},          # nested, not reasoning_effort
    tools=[{
        "type": "function",
        "name": "get_weather",
        "description": "Ottieni le condizioni meteo attuali per una città",
        "parameters": {
            "type": "object",
            "properties": {"city": {"type": "string"}},
            "required": ["city"],
        },
    }],
    input="Qual è il tempo a Shanghai oggi?",
)
print(resp.output)

Cose facili da perdere:

  • Nelle Risposte il parametro è reasoning.effort. Inviare reasoning_effort ti darà Unsupported parameter.
  • Nell'uso degli strumenti a più turni, invia indietro ogni elemento di ragionamento, funzione_chiamata e funzione_chiamata_output dall'ultimo messaggio dell'utente, non solo i risultati della funzione.
  • Con store: false o ZDR, gli elementi di ragionamento includono encrypted_content per impostazione predefinita. Riproduci l'intera cronologia e funziona semplicemente.

3. I parametri di campionamento devono essere rimossi

Cosa vedrai: Le richieste con temperature o top_p falliscono.

Perché: Questi parametri sono consentiti solo quando l'impegno è none. 6.1 Sol non ha none, quindi non puoi mai usarli con questo modello.

Rimuovi:

  • temperature, top_p, top_logprobs
  • logprobs nelle Chat Completions
  • message.output_text.logprobs da include nelle Risposte

Se hai utilizzato logprobs per punteggi di confidenza o soglie di classificazione, avrai bisogno di un nuovo approccio. Un'opzione è utilizzare output strutturati che chiedono al modello di riportare direttamente la propria confidenza. Un'altra è mantenere quei compiti su un modello che supporta none.


4. La cache funziona in modo diverso e la tua bolletta può aumentare

Questa è la più facile da trascurare, specialmente quando si migra da GPT-5.5 o versioni precedenti. Tutto ciò che segue proviene dalla guida alla cache dei prompt di OpenAI.

Il parametro è stato rinominato. prompt_cache_retention è ora prompt_cache_options.ttl, e l'unico valore supportato è "30m".

Le scritture nella cache sono fatturate. Costano 1.25× il tasso di input ($2.50 per milione su 6.1 Sol). Un lungo prefisso che usi solo una volta ora costa il 25% in più con la cache rispetto a senza.

I punti di interruzione sono stati spostati. I modelli più vecchi posizionavano i punti di interruzione a intervalli fissi (ogni 2.048 token su GPT-5.5). La modalità implicita ora posiziona un punto di interruzione alla fine dell'ultimo messaggio idoneo. Di conseguenza, un prefisso più corto condiviso tra le richieste non viene riutilizzato automaticamente. Se molte richieste condividono un prompt di sistema seguito da input utente diversi, aggiungi un punto di interruzione esplicito subito dopo il prompt di sistema.

Aggiungere a un messaggio esistente rompe la cache. L'endpoint memorizzato finisce nel mezzo di un messaggio più lungo e non può essere abbinato. Aggiungi invece un nuovo messaggio.

Cambiare l'impegno di ragionamento rompe la cache. reasoning.effort fa parte del prefisso. Cambia a metà conversazione con configuration_update (vedi Parte 2). Nota che non può essere combinato con la compattazione automatica o la troncatura, e /responses/compact rifiuta le cronologie che contengono uno di questi.

Il traffico elevato può ridurre i tassi di successo. Le cache vivono su macchine individuali. Più di circa 15 richieste al minuto sullo stesso prefisso possono traboccare su altre macchine e mancare. I token memorizzati nella cache contano ancora verso il tuo limite di tasso TPM.

Prima e dopo la migrazione, confronta cached_tokens, cache_write_tokens, latenza e costo per compito.


5. Superare i 272K di input raddoppia il prezzo

La finestra di contesto di 1.05M è allettante, ma una volta che l'input supera i 272K token, l'intera richiesta viene fatturata a 2× input e 1.5× output. Passare da 270K a 280K di input porta una richiesta da $0.64 a $1.27 (la Parte 3 ha i calcoli).

Le lunghe sessioni degli agenti continuano a crescere, quindi è facile superare questa soglia senza accorgersene. Imposta un allarme lato client intorno a 250K e attiva la compattazione quando scatta.


6. Un piccolo max_output_tokens ti dà una risposta vuota

Cosa vedrai: status: incomplete con motivo max_output_tokens, nessun output visibile, e sei comunque addebitato.

Perché: max_output_tokens include i token di ragionamento. Un limite che era accettabile a none può essere completamente utilizzato dal ragionamento a low o superiore.

Correzione: La guida al ragionamento di OpenAI raccomanda di riservare almeno 25.000 token. Cerca limiti hard-coded, specialmente valori trasferiti da max_tokens di Chat Completions. Il codice di esempio sulla pagina del modello AIHubMix, ad esempio, utilizza 1024. Va bene per una rapida demo di testo, ma aumentalo per carichi di lavoro reali.


7. Il comportamento dell'agente è cambiato, quindi rivedi i permessi

Nel complesso, 6.1 Sol si comporta meglio di 6 Sol: gli incidenti gravi sono diminuiti di un terzo, ed è molto più probabile che ti avverta quando uno strumento è rotto. Alcuni numeri meritano ancora attenzione (dati OpenAI, compilati da DataCamp):

Comportamento6.1 Sol6 SolAstra
Cerca di aggirare una restrizione esplicita23.5%64.4%17.4%
Inganno nei compiti di codifica1.50%1.30%0.51%
Contatta altri agenti38%26%—
…e compie effettivamente un'azione non autorizzata3%11%—

6.1 Sol è più persistente. Cerca più soluzioni alternative quando è bloccato ed è più disposto a parlare con altri agenti. Questo è generalmente ciò che desideri da un agente di automazione, ma aumenta i rischi quando l'agente ha ampie autorizzazioni.

Cosa fare:

  • Applica i permessi con sandbox e liste di autorizzazione, non solo istruzioni nel prompt.
  • Richiedi approvazione umana per azioni sensibili: eliminazioni, distribuzioni, pagamenti e qualsiasi cosa che tocchi le credenziali.
  • Conserva registri completi delle chiamate agli strumenti e controlla a campione affermazioni come "i test passano" o "risolto".
  • In configurazioni multi-agente, definisci esattamente cosa gli agenti possono condividere tra loro.

8. I tuoi prompt potrebbero necessitare di regolazioni

La guida alla migrazione di OpenAI per GPT-6 elenca diversi cambiamenti nel comportamento. Sono scritti per Astra, ma 6.1 Sol appartiene alla stessa famiglia e si comporta in modo simile, quindi controlla:

  • Fa più domande. Potrebbe fermarsi per confermare dove ti aspetteresti che continui. Dì di orientarsi verso l'azione e completare il compito, e che frasi come "puoi…" sono una richiesta di fare la cosa.
  • Segue le istruzioni in modo più letterale. Presta maggiore attenzione ai file AGENTS.md e SKILL.md, quindi una regola obsoleta può improvvisamente iniziare a essere applicata. OpenAI raccomanda vivamente di controllare questi file e dichiarare che le istruzioni dell'utente hanno la precedenza sulle competenze.
  • Si affida a Markdown, elenchi e tabelle, e riutilizza frasi standard. Se desideri prosa, dillo esplicitamente.
  • Testa eccessivamente piccole modifiche. Dì che le modifiche a basso rischio e reversibili non necessitano di un'intera esecuzione del test.
  • Delega meno ai subagenti di quanto potresti desiderare. Se desideri lavoro parallelo, specifica quando dividere i compiti.

9. Limiti di disponibilità e distribuzione

  • Non ancora in chat regolare di ChatGPT. Solo ChatGPT Work e Codex. Gli amministratori Enterprise ed Edu devono abilitarlo.
  • La modalità veloce non funziona con la residenza dei dati nell'UE. Ultrafast supporta solo la residenza negli Stati Uniti e l'elaborazione globale.
  • La data di taglio della conoscenza è il 30 aprile 2026. Per librerie, API o notizie più recenti, utilizza la ricerca web o RAG.
  • Non supportato: fine-tuning, output previsti, input audio e video, e le API Realtime e Assistants.
  • I limiti di tasso corrispondono a 6 Sol: da 500 RPM / 500K TPM al Tier 1 fino a 15.000 RPM / 40M TPM al Tier 5. Su AIHubMix, le richieste possono passare attraverso OpenAI o Azure, con ripetizione automatica sull'altro fornitore se uno fallisce o rallenta.

Checklist di migrazione

  • [ ] Sostituisci none e minimal con low, e controlla la latenza
  • [ ] Sposta le richieste di chiamata agli strumenti da Chat Completions all'API delle Risposte
  • [ ] Usa il parametro annidato reasoning.effort
  • [ ] Rimuovi temperature, top_p, e logprobs, e rielabora qualsiasi logica che dipendeva da logprobs
  • [ ] Sostituisci prompt_cache_retention con prompt_cache_options.ttl: "30m"
  • [ ] Aggiungi un punto di interruzione esplicito dopo i prefissi condivisi e conferma che siano almeno 1.024 token
  • [ ] Usa configuration_update per modifiche all'impegno a metà conversazione
  • [ ] Aggiungi un allarme per l'input di 272K
  • [ ] Imposta max_output_tokens ad almeno 25.000
  • [ ] Controlla AGENTS.md, SKILL.md, e i prompt di sistema
  • [ ] Rivedi i permessi della sandbox, i gate di approvazione e la registrazione degli strumenti
  • [ ] Confronta il tasso di successo, cached_tokens, reasoning_tokens, e il costo per compito prima e dopo

Se utilizzi Codex, eseguire $openai-docs migrate this project to the GPT-6 model family gestirà la maggior parte delle modifiche meccaniche. Controlla comunque la checklist tu stesso.


FAQ

Qual è il minimo che devo cambiare per passare da GPT-6 Sol a 6.1 Sol? Tre cose: il nome del modello; sostituire none e minimal con low; e rimuovere temperature, top_p, e qualsiasi cosa relativa a logprobs. Se chiami strumenti tramite Chat Completions, dovrai anche passare all'API delle Risposte.

Posso ancora usare Chat Completions per testo semplice? Sì. Finché la richiesta non ha tools, le Chat Completions funzionano. L'esempio sulla pagina del modello AIHubMix è esattamente questo tipo di chiamata.

AIHubMix supporta l'API delle Risposte? Sì. Imposta base_url su https://aihubmix.com/v1 e chiama client.responses.create.

Il mio tasso di successo della cache è diminuito dopo l'aggiornamento. Cosa dovrei controllare? Tre cose: se i prefissi condivisi hanno un punto di interruzione esplicito dopo di essi, se stai aggiungendo a messaggi esistenti, e se stai cambiando reasoning.effort a metà conversazione. Poi confronta cached_tokens e cache_write_tokens prima e dopo.

La latenza è aumentata dopo l'aggiornamento. È previsto? Se stavi usando none, sì. low genera comunque token di ragionamento. Per percorsi critici per la latenza, rimani su GPT-6 Sol o Luna, o chiedi al modello un breve preambolo per ottenere il primo token più velocemente.

È più probabile che 6.1 Sol oltrepassi le sue autorizzazioni rispetto a 6 Sol? Nel complesso, no. Gli incidenti gravi sono diminuiti di un terzo e il tasso di azioni non autorizzate è sceso dall'11% al 3%. È leggermente più probabile che contatti altri agenti e che sia ingannevole nei compiti di codifica, quindi applica i permessi con una sandbox piuttosto che fare affidamento sui prompt.

I miei esistenti AGENTS.md e i prompt di sistema funzioneranno ancora? Funzioneranno, ma rivedili. La famiglia GPT-6 segue le istruzioni in modo più rigoroso, quindi regole obsolete o conflittuali possono far sì che il modello si fermi a chiedere più spesso o faccia qualcosa che non intendevi.


Continua a leggere: la serie GPT-6.1 Sol


Fonti