Quando un LLM invoca una funzione esterna (Tool Calling), l'esecuzione puo fallire per parametri errati, vincoli di schema violati o timeout dell'endpoint esterno. Invece di interrompere la sessione, si implementa un ciclo di recupero deterministico basato su feedback:
- Restituzione dell'errore nel contesto: l'applicazione cattura l'eccezione e restituisce all'agente un messaggio di tipo
tool_resultotool_errorcontenente il dettaglio dell'errore (ad esempio:parametro 'porta' deve essere un numero intero tra 1 e 65535) - Correzione al turno successivo: il modello analizza l'errore ricevuto e formula una nuova chiamata corretta nello step immediatamente successivo
- Guardie e contatori di retry: imposta un limite massimo di tentativi (tipicamente 2 o 3) con backoff esponenziale per evitare loop infiniti in caso di guasti sistematici del backend.