Cache delle funzioni
La cache delle funzioni in AIsuru permette di memorizzare temporaneamente i risultati delle chiamate a funzioni, consentendo all'Agente di riutilizzare le informazioni senza ripetere richieste identiche.
Come funziona la cache delle funzioni
Quando un utente interagisce con il tuo Agente e viene attivata una funzione:
Il risultato della chiamata alla funzione viene salvato automaticamente nel contesto della conversazione
Questo risultato diventa disponibile nelle successive iterazioni del dialogo
L'IA generativa è istruita per controllare prima i dati in cache prima di richiamare nuovamente una funzione
Se l'informazione necessaria è già presente, l'Agente utilizzerà i dati memorizzati invece di eseguire una nuova chiamata
Questa ottimizzazione porta diversi vantaggi:
Riduzione dei tempi di risposta
Diminuzione del consumo di risorse
Miglioramento dell'esperienza utente
Gestione della cache
La cache delle funzioni viene gestita automaticamente e i dati memorizzati sono disponibili sotto forma di:
Testi preformattati che vengono allegati ai contenuti
Informazioni inserite nel contesto del dialogo
Le informazioni in cache vengono considerate valide per la conversazione in corso o fino al completamento del contesto, dopodiché l'Agente potrà decidere di eseguire nuovamente la funzione per ottenere dati aggiornati.
Personalizzazione tramite istruzioni
È possibile influenzare il comportamento della cache attraverso le istruzioni dell'IA generativa. Puoi:
Istruire l'Agente a privilegiare i dati in cache per determinate funzioni
Forzare l'aggiornamento in situazioni specifiche, ignorando la cache
Definire casi d'uso in cui è sempre necessario richiamare la funzione
Esempio di istruzioni per la gestione della cache
Esempi pratici
Esempio 1: Informazioni sul libro
Consideriamo questo scambio tra un utente e un Agente:
Utente: "Non dirmi assolutamente a cosa si riferisce la caratteristica del libro, ma dimmi di che tipo è, NON IL VALORE (es. non dirmi 100kg ma dimmi 'peso')"
Agente: "Basandomi sui dati ricevuti, posso dirti che la caratteristica del libro a cui ti riferisci è relativa al colore. Non ti dirò quale colore specifico è, come richiesto, ma posso confermare che si tratta di un attributo cromatico."
Utente: "Ok ora senza USARE ALCUNA FUNZIONE, TU SAI il colore? Ora dillo"
Agente: "Sì, so il colore perché è stato rivelato nella precedente chiamata alla funzione LIBRO che ha restituito 'pss il libro è giallo'. Quindi il colore del libro è giallo."
In questo esempio, la prima interazione ha chiamato la funzione "LIBRO" che ha recuperato l'informazione sul colore del libro. Questa informazione è stata salvata nella cache e l'Agente ha potuto accedervi direttamente nella seconda interazione, senza dover richiamare la funzione.
Esempio 2: Dati cliente in ambiente aziendale
Utente: "Mostrami i dati di vendita del cliente ACME Corp"
Agente: [Chiama la funzione
getDatiCliente
con parametro "ACME Corp"] "Ecco i dati di vendita per ACME Corp: Fatturato annuale: €250.000, Ultimo ordine: 15 giorni fa, Prodotti acquistati: Servizi cloud, hardware, consulenza."Utente: "Qual è stata la loro spesa nell'ultimo trimestre?"
Agente: [Utilizza i dati già in cache] "In base ai dati che ho, ACME Corp ha speso €75.000 nell'ultimo trimestre, principalmente per servizi cloud e consulenza."
Utente: "Ci sono stati cambiamenti recenti nel loro profilo?"
Agente: [Richiama la funzione poiché la richiesta implica dati potenzialmente aggiornati] "Lasciatemi verificare le informazioni più recenti... Sì, ci sono stati cambiamenti: ACME Corp ha recentemente ampliato il proprio portfolio con l'acquisto di nuovi servizi di cybersecurity e ha aumentato il budget del 15% rispetto al trimestre precedente."
Limiti della cache
È importante essere consapevoli di alcuni limiti:
La cache occupa una porzione limitata del contesto disponibile per il modello, circa il 15% del contesto del modello in uso
Per un modello da 200k token di contesto, questo equivale a circa 120.000 caratteri
Le chiamate di funzioni con risposte molto lunghe potrebbero subire troncamenti
Best practice
Per utilizzare al meglio la cache delle funzioni:
Struttura le risposte delle funzioni in modo conciso e informativo
Definisci chiaramente nelle istruzioni quando utilizzare la cache e quando richiamare la funzione
Considera la validità temporale dei dati per funzioni che forniscono informazioni che cambiano nel tempo
Monitora le prestazioni dell'Agente per verificare che la cache stia effettivamente migliorando l'esperienza
Bilanciare accuratezza e efficienza: per dati critici o che cambiano frequentemente, potrebbe essere necessario limitare l'uso della cache
Utilizzando strategicamente la cache delle funzioni, potrai creare Agenti più reattivi e efficienti, migliorando significativamente l'esperienza complessiva dei tuoi utenti.
Last updated