GPT-5.4 di OpenAI: Benchmark, Costi e Capacità Agentiche

OpenAI ha annunciato GPT-5.4, un modello della famiglia GPT-5 orientato ai flussi di lavoro professionali, alla programmazione e all'uso di strumenti software. L'annuncio insiste sulle capacità di ragionamento e di esecuzione di compiti multi-step, ma il comportamento concreto dipende dal task, dagli strumenti e dalla configurazione utilizzata.
Le API sono collocate nella fascia premium. Al momento della stesura, il modello sembra quindi rivolto soprattutto a professionisti e aziende che considerano prioritari qualità, strumenti e affidabilità operativa rispetto al costo minimo per token.
Architettura e uso professionale
GPT-5.4 è descritto come un modello per task a lungo termine che richiedono uso di strumenti, navigazione web e interazione con ambienti software.
Il modello dichiara supporto per una finestra di contesto fino a 1.050.000 token. Una finestra ampia consente di fornire più materiale in una singola richiesta, ma non garantisce automaticamente coerenza, accuratezza o comprensione uniforme di tutto il contenuto.
GPT-5.4: capacità dichiarate
In un contesto professionale, il modello viene presentato come generalista. Le capacità dichiarate includono:
- Sviluppo e codice: integra capacità derivate dalla linea GPT-5.3-Codex e può essere usato per generare, revisionare e testare codice in ambienti isolati o nei flussi CI/CD.
- Ricerca e analisi: strumenti per la ricerca web e l'analisi di fogli di calcolo, utilizzabili in attività come due diligence e analisi finanziaria.
- Computer use e task agentici: può interfacciarsi con terminale e applicazioni aziendali; l'output massimo dichiarato è di 128.000 token.
Ragionamento e pianificazione
Una delle novità descritte è un sistema di ragionamento che può mostrare un piano di lavoro iniziale (upfront plan) in alcuni contesti di ChatGPT. Questo può aiutare a correggere la direzione prima dell'output finale, ma non sostituisce la verifica del risultato.
Via API, OpenAI permette agli sviluppatori di regolare la profondità del ragionamento tramite il parametro reasoning_effort, con i livelli none, low, medium, high e xhigh.
Questa funzionalità permette agli sviluppatori di bilanciare costo, latenza e profondità del ragionamento in base al compito.
Benchmark comparativi
Secondo i benchmark riportati nell'annuncio, il modello supera in diversi test le versioni precedenti, tra cui GPT-5.2 e GPT-5.3-Codex. I risultati non sono però equivalenti a una valutazione generale del lavoro professionale.
I punteggi riportati per GPT-5.4, a confronto con le versioni precedenti, sono:
- GDPval (wins or ties): 83.0% (vs 70.9% di 5.3-Codex e 5.2). È una misura comparativa su 44 professioni, non una certificazione di equivalenza con un esperto umano in ogni situazione.
- SWE-Bench Pro (Public): 57.7% (vs 56.8% e 55.6%). Misura la capacità di proporre soluzioni a problemi software in repository GitHub nelle condizioni del benchmark.
- OSWorld-Verified: 75.0% (vs 74.0% e 47.3%). Indica una buona performance nel benchmark di interazione con il computer, all'interno delle condizioni del test.
- Toolathlon: 54.6% (vs 51.9% e 46.3%). Misura l'uso coordinato e sequenziale di strumenti esterni, come API e funzioni.
- BrowseComp: 82.7% (vs 77.3% e 65.8%). Misura la capacità di navigare e recuperare informazioni sul web in uno scenario controllato.
Costi e compromessi
Il posizionamento è simile a quello di altri modelli premium, come la gamma Opus di Anthropic. La convenienza dipende dal valore del task, dalla frequenza delle chiamate e dal costo degli strumenti esterni.
- $2.50 per 1 milione di token in input.
- $0.25 per 1 milione di token se l'input è Cached (memorizzato nella cache per chiamate ripetute).
- $15.00 per 1 milione di token in output.
Il confronto va fatto sul costo complessivo del flusso di lavoro: token, latenza, strumenti e necessità di revisione umana.
Esempi di utilizzo per GPT-5.4
Puoi installare la libreria ufficiale con pip o uv: uv add openai
1. Generazione di testo semplice e direttive strutturate
from openai import OpenAI
import os
# Inizializza il client (pesca in automatico OPENAI_API_KEY dalle variabili d'ambiente)
client = OpenAI()
response = client.chat.completions.create(
model='gpt-5.4',
messages=[
{"role": "system", "content": "Sei un consulente aziendale esperto. Rispondi usando un elenco puntato singolo, senza annidamenti."},
{"role": "user", "content": "Spiega i vantaggi dell'automazione AI per l'ottimizzazione dei costi IT in tre brevi punti."}
]
)
print(response.choices[0].message.content)
2. Analisi di documenti con contesto lungo
from openai import OpenAI
client = OpenAI()
# Simulazione di un contenuto massivo (es. un intero repository di codice o un bilancio annuale)
documento_massivo = "... [Testo molto lungo] ..."
response = client.chat.completions.create(
model='gpt-5.4',
messages=[
{"role": "system", "content": "Sei un analista finanziario rigoroso. Modalità di ricerca attiva."},
{"role": "user", "content": f"Analizza questo documento ed estrai le metriche di spesa del Q3. Ecco i dati:\n\n{documento_massivo}"}
]
)
print(response.choices[0].message.content)
3. Configurazione del reasoning effort
from openai import OpenAI
client = OpenAI()
response = client.chat.completions.create(
model='gpt-5.4',
messages=[
{"role": "system", "content": "Sei un ingegnere software specializzato in sicurezza."},
{"role": "user", "content": "Analizza questo script per vulnerabilità zero-day e proponi una patch robusta."}
],
# --- Configurazione del Thinking / Reasoning ---
# Livelli supportati: low, medium, high, xhigh
# Per task di logica algoritmica severa, 'high' o 'xhigh' offrono risultati superiori
reasoning_effort="high",
max_completion_tokens=15000
)
print(response.choices[0].message.content)
4. Estrazione Dati Strutturata (Tool Calling per PDF)
Quando devi estrarre informazioni da centinaia di PDF aziendali (come fatture o contratti) ti serve un output strutturato, pronto per essere inserito in un database.
Utilizzando il Tool Calling (o Function Calling), possiamo definire uno schema JSON e chiedere al modello di restituire dati strutturati. La validazione lato applicazione resta necessaria per gestire errori di formato o valori inattesi.
In questo esempio, simuliamo l'estrazione dei dati da una fattura (il cui testo è stato precedentemente estratto dal PDF tramite librerie come PyPDF2 o un OCR).
from openai import OpenAI
import json
client = OpenAI()
# 1. Definiamo lo schema del nostro "Tool" (la struttura dati che vogliamo in output)
strumenti = [
{
"type": "function",
"function": {
"name": "estrai_dati_fattura",
"description": "Estrae i dati strutturati essenziali da una fattura.",
"parameters": {
"type": "object",
"properties": {
"ragione_sociale": {"type": "string", "description": "Nome dell'azienda fornitrice"},
"importo_totale": {"type": "number", "description": "Importo totale da pagare"},
"partita_iva": {"type": "string", "description": "Partita IVA del fornitore"},
"scadenza_pagamento": {"type": "string", "description": "Data nel formato YYYY-MM-DD"}
},
# Rendiamo obbligatori i campi chiave
"required": ["ragione_sociale", "importo_totale"]
}
}
}
]
# Testo grezzo estratto dal nostro PDF
testo_pdf = """
Fattura N. 1042 - Data: 15 Ottobre 2025
Fornitore: TechCloud Solutions S.p.A. - P.IVA: 12345678901
Servizi Cloud Q3: € 4.500,00
Totale da pagare: € 4.500,00
Scadenza: 15 Novembre 2025
"""
# 2. Chiamiamo GPT-5.4 forzando l'uso del tool
response = client.chat.completions.create(
model='gpt-5.4',
messages=[
{"role": "system", "content": "Sei un data-entry agent. Estrai i dati dal testo fornito."},
{"role": "user", "content": f"Analizza questo testo estratto da un PDF:\n\n{testo_pdf}"}
],
tools=strumenti,
# Forziamo esplicitamente il modello a usare la nostra funzione
tool_choice={"type": "function", "function": {"name": "estrai_dati_fattura"}},
# Per task di pura estrazione, abbassiamo il reasoning per risparmiare tempo e costi, prova pure "medium" "high" o "xhigh"
reasoning_effort="low"
)
# 3. Recuperiamo l'output strutturato
dati_grezzi = response.choices[0].message.tool_calls[0].function.arguments
dati_strutturati = json.loads(dati_grezzi)
print("✅ Dati estratti e validati:")
print(json.dumps(dati_strutturati, indent=4))
Disponibilità e deployment
Secondo le informazioni riportate nell'articolo, GPT-5.4 è disponibile su ChatGPT, Codex e tramite API; disponibilità, limiti e modalità di accesso possono variare per piano e area geografica.
Gli sviluppatori possono usarlo tramite la OpenAI API e la piattaforma sviluppatori. Le capacità di Thinking e le funzioni dell'app Codex per Windows dipendono dalla versione e dal piano utilizzati; vanno verificate nella documentazione aggiornata.