Che cos'è un agente IA?

Aggiornato: ottobre 2026

Un agente IA è un sistema guidato da un LLM che persegue un obiettivo in un ciclo: ragiona, chiama un tool, osserva il risultato e ripete. Una semplice chiamata a un LLM risponde e si ferma; un agente avvolge quella chiamata in un ciclo di controllo con tool (funzioni che può invocare), memoria (stato da un passo all’altro) e abbastanza autonomia per scegliere la propria sequenza di azioni. Il cambio di prospettiva decisivo per chi sviluppa backend è il fatto più banale e meno detto sugli agenti: i “tool” di un agente sono gli endpoint del proprio backend – quando un agente “usa un tool” sta chiamando un’API scritta in casa, il che fa del backend, non del prompt, il luogo in cui la sicurezza vive davvero.

Punti chiave

DomandaRisposta
Il cicloRagiona → agisci (chiama un tool) → osserva → ripeti fino al termine (ReAct)
Le quattro partiModello (ragionamento) · tool (azioni) · memoria (stato) · orchestrazione (il ciclo)
vs. un chatbotUn chatbot parla del compito; un agente lo fa
La verità scomodaL’affidabilità si accumula al ribasso – 95 % per passo è circa 60 % su 10 passi
Il confine di sicurezzaÈ il backend a imporre che cosa i tool possono fare – non la buona condotta del modello

Come funziona il ciclo di ragionamento (ReAct) di un agente IA

OBIETTIVO: "Rimborsa il mio ultimo ordine e inviami la conferma"

  ┌────────────────────────────────────────────────────────────┐
  │ 1 REASON   modello: "mi serve l'ultimo ordine dell'utente" │
  │ 2 ACT      chiama il tool: find_orders(user, last=1)       │
  │ 3 OBSERVE  risultato: ordine #1187, 42 $, consegnato       │
  │ 4 REASON   "ammissibile – si rimborsa"                     │
  │ 5 ACT      chiama il tool: refund_order(1187)              │◄─ ogni ACT colpisce
  │ 6 OBSERVE  risultato: rimborsato                           │   IL PROPRIO backend
  │ 7 REASON   "ora si invia l'e-mail all'utente"              │
  │ 8 ACT      chiama il tool: send_email(...)                 │
  │ 9 REASON   "fatto" → risposta finale                       │
  └────────────────────────────────────────────────────────────┘

Il modello non esegue mai un tool. Ne RICHIEDE uno (nome + argomenti);
il codice applicativo lo esegue e restituisce il risultato al passo di ragionamento successivo.

I tool di quel ciclo, lato backend – ad ambito ristretto, soggetti ai permessi, eseguiti come l’utente:

// JavaScript — Cloud Code (cloud/main.js)
// An agent's "tool" is a backend function — scoped, permissioned, auditable
Parse.Cloud.define('refundOrder', async (req) => {
  // Runs under the CALLING USER's session — ACLs gate everything.
  // A hijacked agent can't exceed what this user may already do.
  const asUser = { sessionToken: req.user.getSessionToken() };
  const order = await new Parse.Query('Order').get(req.params.orderId, asUser);
  // ACLs apply via the session token: not your order → this throws, agent or not
  if (order.get('amount') > 100) throw 'Refunds over $100 need human approval';
  order.set('status', 'refunded');
  await order.save(null, asUser);
  return { refunded: order.id }; // the tool result the model reasons over next
});
// The backend, not the prompt, is the security boundary.

I quattro componenti essenziali di un agente IA

I quattro componenti di un agente IAUn agente IA combina un modello di linguaggio per ragionare, tool che può invocare per agire, memoria a breve e a lungo termine per lo stato e un ciclo di orchestrazione che alterna ragionamento, azione e osservazione fino a raggiungere l'obiettivo. I tool sono funzioni e API del backend.

chiamate ai tool

risultati

Modello
(nucleo di ragionamento)

Ciclo di orchestrazione
ragiona → agisci → osserva

Tool
(API / funzioni proprie)

Memoria
breve termine (finestra)
lungo termine (database)

Backend
+ dati

Un agente IA combina un modello di linguaggio per ragionare, tool che può invocare per agire, memoria a breve e a lungo termine per lo stato e un ciclo di orchestrazione che alterna ragionamento, azione e osservazione fino a raggiungere l'obiettivo. I tool sono funzioni e API del backend.

La scomposizione canonica è modello + pianificazione + memoria + uso dei tool, ma la versione operativa è più semplice: un modello ragiona, i tool agiscono (e sono funzioni del backend), la memoria conserva lo stato – a breve termine nella context window, a lungo termine in un database o in un vector store – e il ciclo di orchestrazione lega il tutto, sul modello del pattern ReAct che intreccia ragionamento e azione.

Agente vs. chatbot vs. chiamata a un LLM vs. workflow

CriterionChiamata a un LLMChatbotWorkflowAgente IA
FaRisponde una voltaConversaEsegue passi fissiSceglie i propri passi
Flusso di controlloNessunoA turniPercorsi di codice predefinitiDiretto dal modello
Compie azioniNoNoSì, da copioneSì, decise a runtime
PrevedibilePer chiamataIn parteDeterministicoProbabilistico
Adatto aDomande e risposte, estrazioneChat di supportoProcessi notiObiettivi aperti

La distinzione che conta di più, e che quasi nessun glossario traccia: un workflow è orchestrazione attraverso percorsi di codice predefiniti; un agente lascia che il modello diriga il proprio percorso. Le indicazioni di Anthropic sono nette sulla conseguenza – la maggior parte dei compiti che sembrano richiedere un agente è servita meglio da un workflow deterministico, e l’agentività si aggiunge solo quando il percorso davvero non si può scrivere in anticipo.

Affidabilità: gli errori si accumulano al ribasso

La sezione onesta che le pagine dei fornitori evitano. Gli agenti sono impressionanti sul singolo passo e fragili sulla catena, perché il successo si moltiplica: se ogni passo riesce con probabilità p, un compito di n passi riesce con probabilità circa pⁿ.

successo per passo   10 passi   20 passi
       95 %            ~60 %      ~36 %
       90 %            ~35 %      ~12 %
       85 %            ~20 %       ~4 %

Una demo che azzecca un passo impressionante non è un sistema che ne azzecca venti.
Nel mondo reale un agente multi-passo e cross-sistema riesce spesso nel 20–40 % dei casi.

Questo calcolo detta il playbook di produzione: tenere le catene corte, verificare i risultati tra un passo e l’altro invece di fidarsi, mettere le azioni irreversibili (inviare, eliminare, addebitare, pubblicare) dietro un’approvazione umana e limitare il ciclo con tetti di passi e di costo, così che un agente confuso fallisca a poco prezzo invece che a prezzo d’oro. L’affidabilità non è una proprietà del modello di cui attendere il miglioramento; è un’architettura che si impone.

La superficie di attacco

Un agente che può agire può essere ingannato per farlo agire, e questo lo rende una superficie di attacco davvero nuova. La prompt injection trasforma le istruzioni presenti nell’input del modello in azioni reali – e la variante pericolosa è quella indiretta: una pagina web, un’e-mail o un ticket di supporto avvelenati che l’agente legge possono portare istruzioni che poi esegue con le credenziali di casa. L’agente confuso (confused deputy) è la forma che prende il danno: un agente dotato di permessi ampi, manipolato perché ne abusi a vantaggio di chi attacca. Le contromisure sono vecchia disciplina di sicurezza puntata su un attore nuovo – credenziali a privilegio minimo, limitate all’utente (all’agente non va mai dato più di quanto l’utente del compito abbia già), tool negati per impostazione predefinita e ad ambito stretto, sandboxing e barriere umane su tutto ciò che è irreversibile. L’inquadramento più importante di tutti: è il backend, non il prompt, a costituire il confine di sicurezza. Un prompt si può iniettare; una verifica dei permessi lato server non si fa convincere a smettere di applicarsi.

Progettare tool che un agente non possa usare male

Poiché i tool sono il backend, progettarli è sicurezza del backend con il volume alzato. Ogni tool va reso idempotente dove possibile (un rimborso ritentato non deve rimborsare due volte), ad ambito stretto (un’azione chiara, non accesso grezzo al database), soggetto ai permessi (gira sotto l’identità dell’utente e le sue ACL si applicano) e chiaro nello schema – le descrizioni che il modello legge per decidere se e come chiamare un tool meritano la stessa cura dei prompt, perché una descrizione vaga è un bug che il modello troverà. Vanno esposte azioni, non tabelle: refund_order(id) con i propri controlli, mai run_sql(query).

Casi d’uso tipici

  • Operazioni verso i clienti – un agente che risolve una richiesta di supporto dall’inizio alla fine tramite tool soggetti ai permessi, con barriera umana su rimborsi e cancellazioni.
  • Assistenti di codice – leggere un repository, lanciare tool, iterare verso una modifica sottoposta a revisione.
  • Ricerca e sintesi – retrieval e riassunto in più passi, quando il percorso non è noto in anticipo.
  • Flussi di dati con discernimento – passi che richiedono ragionamento tra l’uno e l’altro, non solo una pipeline fissa.
  • Pianificazione e coordinamento – obiettivi che attraversano più sistemi, ciascuno raggiunto con un tool ad ambito ristretto.

Conviene costruire un agente? Matrice decisionale

SituazioneChe cosa scegliere
I passi sono noti in anticipoUn workflow – deterministico, testabile
Una singola domanda o estrazioneUna semplice chiamata a un LLM
Obiettivo aperto, percorso deciso a runtimeUn agente – è il suo terreno
Azioni irreversibili dentro il cicloUn agente con barriere di approvazione umana
Molti tool riusati tra agenti e modelliStandardizzarli con MCP
L’affidabilità è critica per la sicurezzaCatene corte, verifica – oppure lasciar perdere l’automazione

Limiti e trade-off

  • L’autonomia scambia affidabilità con capacità. La libertà che permette a un agente di affrontare obiettivi aperti è la stessa che fa accumulare gli errori – va delimitata deliberatamente.
  • I cicli costano soldi e tempo. Ogni iterazione sono altre chiamate al modello; gli agenti sono per costruzione più lenti e più costosi di una chiamata singola – entrambe le cose vanno limitate e monitorate.
  • Il non determinismo resiste ai test. Un workflow si collauda con test unitari; un agente si valuta statisticamente, su molte esecuzioni, perché lo stesso input può prendere percorsi diversi.
  • Il raggio d’impatto sono le credenziali. Un agente è sicuro quanto il permesso più stretto concesso ai suoi tool; un accesso troppo ampio è l’incidente che attende il suo momento.
  • Impressionante ≠ affidabile. Una demo convincente è una catena fortunata; la produzione è il lavoro noioso di guardrail, barriere e percorsi corti.

Gli agenti IA su Back4app

Back4app è una piattaforma open-source di Backend as a Service (BaaS) che combina database gestito, API REST e GraphQL generate automaticamente, autenticazione, archiviazione di file e funzioni serverless con Cloud Code. La tesi “i tool sono funzioni del backend” è tutta l’integrazione: i tool di un agente sono funzioni Cloud Code e, poiché girano sotto la sessione dell’utente chiamante, le ACL e i permessi di classe della piattaforma filtrano ogni lettura e ogni scrittura che l’agente tenta – come mostrano le schede di codice, un agente dirottato o vittima di prompt injection non può superare i permessi dell’utente stesso, perché il raggio d’impatto dell’agente confuso è limitato dal controllo degli accessi e non dalla buona condotta del modello. Il resto segue: esporre azioni ad ambito ristretto (refundOrder), non dati grezzi; tenere la chiave del modello lato server; standardizzare la superficie dei tool con MCP quando più agenti la condividono; e lasciare che il backend dica no. L’agente propone; il backend dispone – ed è esattamente dove deve vivere la sicurezza di un sistema autonomo.

Domande frequenti

Che cos'è un agente IA in parole semplici?

Un sistema software che usa un modello di linguaggio per capire e portare a termine da solo un obiettivo in più passi – pianificando, usando tool e agendo, invece di limitarsi a conversare. La differenza rispetto a un chatbot è l'autonomia: decide da sé la sequenza dei passi e agisce sul mondo attraverso i tool.

Qual è la differenza tra un agente IA e un chatbot?

Un chatbot risponde – elabora un messaggio e si ferma. Un agente agisce – ragiona sull'obiettivo, decide quali tool usare, li chiama, osserva i risultati e continua finché il compito non è concluso. Un chatbot parla del rimborso di un ordine; un agente lo rimborsa.

Come funziona il ciclo di un agente?

Riceve un obiettivo, ragiona sul passo successivo, chiama un tool, osserva il risultato, ragiona di nuovo – e ripete fino al termine del compito o fino a un limite di passi o di costo. Questo ciclo ragiona-agisci-osserva è il pattern ReAct, ed è ciò che rende un agente agentico invece che conversazionale.

Che cosa sono i tool e il function calling?

I tool sono funzioni esterne – chiamate API, query sul database, esecuzione di codice – che l'agente può invocare. Il function calling è il meccanismo: il modello emette una chiamata JSON strutturata che nomina un tool e i suoi argomenti, il codice applicativo la esegue e il risultato torna al modello. Il modello non esegue mai il tool; si limita a richiederlo.

Che cos'è la memoria di un agente?

Ne esistono due tipi. La memoria a breve termine è quanto entra nella context window – i passi recenti e lo stato di lavoro. La memoria a lungo termine è conoscenza persistita in un database o in un vector store e recuperata da una sessione all'altra. Il ciclo ha bisogno di entrambe: la finestra per ragionare adesso, lo store per ricordare dopo.

Gli agenti IA sono affidabili e pronti per la produzione?

I singoli passi sono spesso affidabili; le catene lunghe no. Se ogni passo riesce nel 95 % dei casi, dieci passi riescono circa nel 60 % e venti circa nel 36 % – gli errori si accumulano. Gli agenti in produzione tengono le catene corte, verificano i risultati, mettono le azioni irreversibili dietro un'approvazione umana e restringono ciò che i tool possono fare.

Quando conviene non usare un agente IA?

Quando il compito è deterministico e ben definito, un semplice workflow o del codice ordinario costa meno, è più rapido ed è più affidabile. Gli agenti ripagano la propria complessità solo quando il percorso non si può scrivere in anticipo – l'autonomia va aggiunta quando migliora il risultato in modo dimostrabile, non per impostazione predefinita.

Che rapporto c'è tra MCP e gli agenti IA?

Il Model Context Protocol è uno standard aperto che definisce come un agente scopre e chiama tool e dati, sostituendo le integrazioni una tantum con un'interfaccia comune. MCP è l'impianto tra l'agente e i suoi tool; i tool restano funzioni del backend, quelle che fanno il lavoro vero.

Termini correlati

Confronta con

Fonti di approfondimento

Pronto a costruire il tuo backend?

Avvia il tuo progetto su Back4app in pochi minuti: database, autenticazione, API e Cloud Code inclusi. Nessuna carta di credito richiesta.

Scritto e revisionato da Back4app Engineering, Back4app Engineering · Pubblicato il 2026-10-13