Problemi comuni con le funzioni avanzate
Quando utilizzi le funzioni avanzate (function calling), potresti riscontrare problemi con alcuni modelli:
Descrizione della funzione troppo lunga;
Risposta della funzione troppo lunga.
Descrizione troppo lunga
Se la descrizione della tua funzione supera 1.024 caratteri, alcuni modelli (come quelli di OpenAI) potrebbero rispondere con un errore e rifiutarsi di rispondere alla richiesta dell'utente. In questo caso, l'Agente risponderà con "Mi dispiace, le mie risposte sono limitate. Devi farmi le domande giuste", indipendentemente dal fatto che la funzione sia stata effettivamente eseguita o meno.
Se hai una funzione con una descrizione molto lunga:
Sposta parte della descrizione nelle istruzioni;
Mantieni la descrizione della funzione entro 1.024 caratteri.
Questo ti consentirà, in caso di problemi del servizio, di passare rapidamente da un modello o provider all'altro senza configurazioni aggiuntive.
Risposta della funzione troppo lunga
Se la tua funzione restituisce una risposta eccessivamente lunga, il modello linguistico potrebbe rifiutarsi di rispondere con "Mi dispiace, le mie risposte sono limitate. Devi farmi le domande giuste".
Questo accade perché ogni modello linguistico ha un limite massimo di contesto che può gestire. Il limite varia in base al modello ed è particolarmente comune quando utilizzi l'URL di una pagina web come webhook della funzione.
Se hai bisogno di collegare pagine web particolarmente lunghe, ti suggeriamo di:
Estrarre solo le sezioni di testo rilevanti dalla pagina;
Fornire queste informazioni all'Agente in un formato più conciso (come.txt,.md o.json minimizzato);
Valutare l'uso di un modello con una finestra di contesto più ampia.
In questo modo, l'Agente può elaborare le informazioni senza raggiungere i limiti del modello.
Nome della funzione troppo lungo
Se il nome della tua funzione supera i 64 caratteri, tutti i provider restituiranno un errore e la funzione non potrà essere salvata o utilizzata.
Per risolvere questo problema:
Usa nomi concisi ma descrittivi (ad es.,
book_appointmentinvece dibook_specialist_medical_appointment_with_email_notification);Evita ripetizioni nel nome.
Usa abbreviazioni comuni quando appropriato;
Il limite di 64 caratteri si applica a tutti i provider (OpenAI, Anthropic, Mistral, ecc.) ed è un vincolo tecnico.
Come verificare se le funzioni avanzate vengono chiamate?
Per verificare che le tue funzioni vengano effettivamente utilizzate:
Vai alla sezione Conversazioni del tuo Agente;
Apri una conversazione in cui pensi sia stata utilizzata una funzione;
Cerca l'icona di debug accanto ai messaggi;
Fai clic sull'icona del bug per vedere i dettagli della chiamata alla funzione.
Questo ti consente di verificare rapidamente se le tue funzioni vengono chiamate e quali risultati restituiscono.
Ultimo aggiornamento