← Tutti gli articoli
Home › Blog › GPT-4 in n8n
Automazioni

Integrare GPT-4 in n8n: Guida Completa con Esempi

Guida tecnica 18 min di lettura Dicembre 2024

n8n ha il nodo OpenAI nativo, ma usarlo bene in produzione richiede di capire come gestire il context window, come parsare l'output in modo affidabile e come non bruciare il budget API. Questa guida copre tutto quello che ho imparato costruendo workflow AI in produzione.

La differenza tra un workflow n8n "normale" e uno con GPT-4 è che il secondo introduce un elemento non deterministico: lo stesso input può produrre output leggermente diversi, e il modello può — occasionalmente — non rispettare il formato richiesto. Se hai già letto la guida al primo workflow n8n, qui aggiungiamo un livello: non solo automatizzare un processo, ma farlo prendere decisioni basate su testo. È lo stesso principio dietro gli agenti di automazione — la differenza è che qui restiamo dentro un workflow strutturato, con GPT-4 usato per singoli step decisionali invece che per pianificare l'intero processo.

Setup: nodo OpenAI in n8n

In n8n, aggiungi il nodo OpenAI e configura le credenziali con la tua API key. Usa sempre le variabili d'ambiente di n8n — mai hardcoded nei workflow.

Configurazione credenziali

In n8n vai su Settings → Credentials → New → OpenAI API. Inserisci la chiave e assegnale un nome descrittivo (es. "OpenAI Production"). Non usare la stessa chiave per test e produzione.

Pattern 1: classificazione automatica

Caso d'uso classico: classificare email, ticket o feedback in categorie predefinite. È il pattern più semplice e anche il più affidabile, perché l'output atteso è ristretto a poche opzioni — il modello ha poco spazio per "divagare".

// Prompt per classificazione affidabile
System: Sei un classificatore di email aziendali.
Rispondi SOLO con un JSON valido senza altri testi.

User: Classifica questa email:
{{$json["emailBody"]}}

Output richiesto:
{
  "categoria": "supporto|fatturazione|partnership|altro",
  "urgenza": "bassa|media|alta",
  "riassunto": "max 20 parole"
}

Parsing affidabile dell'output JSON

Dopo il nodo OpenAI, aggiungi un nodo Code per parsare e validare:

// Nodo Code in n8n
const raw = $input.item.json.message.content;

// Rimuovi eventuali markdown blocks
const cleaned = raw.replace(/```json\n?/g, '').replace(/```\n?/g, '').trim();

try {
  const parsed = JSON.parse(cleaned);
  // Valida campi obbligatori
  if (!parsed.categoria || !parsed.urgenza) {
    throw new Error('Campi mancanti');
  }
  return [{ json: parsed }];
} catch (e) {
  // Fallback: ritorna errore strutturato per error handling
  return [{ json: { error: true, raw: raw, message: e.message } }];
}

Pattern 2: generazione contenuti con contesto variabile

// Costruisci il prompt dinamicamente con i dati del workflow
System: Sei un copywriter B2B specializzato nel settore {{$json["settore"]}}.
Tono: {{$json["tone_of_voice"]}}
Lunghezza: {{$json["lunghezza_parole"]}} parole
Lingua: italiano

User: Scrivi una descrizione prodotto per: {{$json["nome_prodotto"]}}
Caratteristiche principali: {{$json["features"]}}

Pattern 3: estrazione dati strutturati da testo libero

Un caso frequente: hai testo non strutturato (un'email, un documento, una trascrizione) e ti serve estrarne dati precisi in formato utilizzabile — nomi, date, importi, indirizzi. È lo stesso principio della classificazione, ma con più campi e più attenzione alla validazione.

System: Estrai i dati strutturati dal testo. Rispondi SOLO con JSON valido.
Se un campo non è presente nel testo, usa null — non inventarlo.

User: {{$json["testoLibero"]}}

Output richiesto:
{
  "nome_cliente": "string|null",
  "data_richiesta": "YYYY-MM-DD|null",
  "importo": "number|null",
  "note": "string|null"
}

La regola "usa null, non inventare" nel prompt è cruciale: senza un'istruzione esplicita, il modello tende a riempire i campi mancanti con valori plausibili ma falsi. Nel nodo Code successivo, tratta ogni campo null come dato da verificare manualmente, non da scartare.

Gestione costi API in produzione

  • Usa GPT-4o-mini per classificazione e task semplici: costa una frazione di GPT-4 e per task ben definiti la qualità è quasi indistinguibile
  • Limita il context window: manda solo i dati necessari, non l'intera conversazione — ogni token in più è costo e latenza
  • Imposta max_tokens esplicitamente: previeni risposte infinite che costano di più e rallentano il workflow
  • Monitora i costi su OpenAI dashboard settimanalmente — i workflow in loop (es. un errore che ritrigghera se stesso) possono esplodere in poche ore
  • Metti un tetto di spesa (usage limit) direttamente su OpenAI — è la rete di sicurezza finale se tutto il resto fallisce

Error handling in produzione

// In n8n: aggiungi sempre il nodo "Error Trigger"
// Configurazione consigliata:

1. Nodo OpenAI → retry: 2 tentativi con backoff 30s
2. Nodo IF: controlla se json.error === true
   - True → nodo Slack/email per alert
   - False → continua il workflow
3. Error Trigger globale → salva su Google Sheets per audit
Errore comune

Non gestire le rate limit di OpenAI. Se hai molti workflow in esecuzione contemporanea, implementa una coda con nodi Delay e limita le chiamate a max 60/minuto per il tier standard.

Domande frequenti

Meglio il nodo OpenAI nativo o un nodo HTTP Request generico?

Il nodo nativo è più veloce da configurare e gestisce l'autenticazione per te. Il nodo HTTP Request generico ha senso quando serve un controllo più fine sui parametri della richiesta, o quando l'endpoint da chiamare non è direttamente supportato (es. un modello open-source self-hosted con API compatibile OpenAI).

Come evito che il modello "esca" dal formato JSON richiesto?

Tre accorgimenti: istruzioni esplicite nel system prompt ("rispondi SOLO con JSON valido"), temperature bassa o a 0 per ridurre la variabilità, e un parsing difensivo lato codice (come nell'esempio sopra) che gestisce il caso in cui il modello aggiunga testo extra o markdown attorno al JSON.

Conviene usare GPT-4 per ogni step del workflow?

Quasi mai. Il pattern più efficiente è "a cascata": un modello economico e veloce (GPT-4o-mini) per i task semplici e ad alto volume, GPT-4 riservato solo agli step che richiedono più ragionamento o qualità superiore. Riduce i costi senza sacrificare l'affidabilità dove conta.

Workflow AI in produzione

Integro GPT-4 nei tuoi processi aziendali

Setup, testing, error handling e monitoring. Workflow che reggono il carico reale senza sorprese.

Contattami per collaborazioni →
Intelligenza Artificiale ✦ Automazioni n8n ✦ Musica Generativa ✦ Prompt Engineering ✦ RAG & LangChain ✦ MVP AI-powered ✦ Creative Technology ✦ Web Development ✦