Creare agenti AI di intelligenza artificiale
In questo libro si realizzeranno agenti AI di intelligenza artificiale, i quali possono comprendere input complessi come testo, comandi, dati, pianificare una sequenza di azioni da eseguire o agire in un ambiente esterno, ad esempio accedendo a database o integrandosi con altre applicazioni. In altre parole, un agente AI è un “cervello” in grado di ragionare e agire invece di limitarsi a rispondere a domande. Ad esempio un agente AI per e-commerce potrebbe ricevere una domanda (“Vorrei restituire il prodotto X”), verificare nel gestionale se l’ordine è stato spedito, generare un’etichetta di reso e inviare l’email al cliente, un agente AI per analisi dati potrebbe connettersi a un database di vendite, ricevere la richiesta “Mostrami i prodotti con crescita più rapida negli ultimi 3 mesi”, tradurla in una query SQL, eseguirla e restituire una tabella o un grafico.
Uno dei componenti fondamentali degli agenti AI è la capacità di interfacciarsi con i Large Language Models (OpenAI, Anthropic, Google Gemini, ecc.). Per creare gli agenti AI si utilizzerà la libreria open-source Litellm che permette di connettersi a diversi provider di LLM (OpenAI, Anthropic, Azure, Hugging Face, Google Gemini ecc.), senza dover riscrivere continuamente il codice.
In questo libro si userà Google Gemini. In ogni caso qualunque LLM si scelga, bisogna creare un'API KEY, per cui aprendo il notebook di Google Colab che conterrà il codice dell'agente, si clicca sull'immagine della chiave nella barra laterale di sinistra e si inserisce l'API KEY di Gemini abilitandola.
Gli agenti richiedono due capacità chiave:
- Prompt programmatico: mentre nei chatbot LLM come ChatGpt il prompt viene digitato dall'utente ottenendo una risposta, negli agenti il prompt (una domanda, un comando o una serie di istruzioni che il modello LLM deve seguire) viene fornito via codice, ottenendo una risposta che viene elaborata sempre via codice.
- Gestione della memoria: siccome gli LLM non hanno memoria e non "ricordano" intrinsecamente le conversazioni o le risposte precedenti dobbiamo fare in modo che l'agente ricordi le risposte precedenti.
I prompt con i relativi messaggi vengono forniti all'agente tramite ruoli che possono essere di 3 tipi:
- sistema: fornisce al modello istruzioni iniziali, regole o configurazioni su come dovrebbe comportarsi durante la sessione. Questo messaggio non fa parte della "conversazione", ma definisce le regole di base o il contesto (ad esempio, "Risponderai in JSON").
- utente: rappresenta l'input dell'utente con suggerimenti, domande o istruzioni.
- assistente: fornisce all'agente memoria consentendogli di ricordare le risposte precedenti
Altri Wikibooks
[modifica | modifica sorgente]- Applicazioni pratiche di machine learning
- Applicazioni pratiche di deep learning
- Esempi di statistica descrittiva e inferenziale
- Esempi di Business Analytics
- Intelligenza artificiale