1. Cosa imparerai a fare
Ti diamo il benvenuto nel corso intensivo ADK: il tuo viaggio nei sistemi multi-agente
Stai per entrare nell'entusiasmante mondo degli agenti AI. Dimentica i semplici chatbot che si limitano a rispondere alle domande. Approfondiremo l'utilizzo di Agent Development Kit (ADK) per creare sistemi autonomi e sofisticati in grado di ragionare, pianificare e utilizzare strumenti per svolgere attività complesse.

Al termine di questo tutorial, sarai in grado di:
- Creare il tuo primo agente AI: parti da zero e arriva a un agente completamente funzionale in grado di comprendere le esigenze di un utente, utilizzare strumenti come la Ricerca Google e generare risposte dettagliate e utili.
- Costruire sistemi multi-agente: scopri il pattern "Agente come strumento", un concetto rivoluzionario in cui gli agenti delegano le attività ad altri agenti specializzati, creando un team di esperti di AI che lavorano insieme.
- Orchestrare workflow complessi: vai oltre la semplice delega e padroneggia pattern avanzati come router, catene sequenziali, cicli ed esecuzione parallela per creare applicazioni robuste, efficienti e intelligenti in grado di gestire quasi tutte le richieste.
- Fornire memoria agli agenti: comprendi il ruolo fondamentale della memoria conversazionale, che consente agli agenti di gestire le domande di approfondimento, imparare dal feedback e gestire senza problemi le attività in più passaggi.
- Connetterti a MCP: connettiti al toolbox MCP.
Iniziamo. 🚀
2. Configurare Google Cloud e la chiave API Gemini
Configurare il progetto Google Cloud e la chiave API Gemini
Per alimentare i nostri agenti AI, abbiamo bisogno di due cose: un progetto Google Cloud per fornire le basi e una chiave API Gemini per accedere ai potenti modelli di Google.
Passaggio 1: attiva l'account di fatturazione
Per eseguire questo codelab, devi avere un account di fatturazione con un po' di credito. Per iniziare, utilizza i crediti del banner nella parte superiore di questo codelab. Se hai già un collegamento a un account di fatturazione, puoi saltare questo passaggio.
Passaggio 2: crea un nuovo progetto Google Cloud
- Vai alla console Google Cloud e crea un nuovo progetto.

- Vai alla console Google Cloud e crea un nuovo progetto.
- Apri il riquadro di sinistra, fai clic su
Billinge controlla se l'account di fatturazione è collegato a questo account Google Cloud.

Se vedi questa pagina, controlla il manage billing account, scegli la prova senza costi di Google Cloud e collegala.
Passaggio 3: trova l'ID progetto Google Cloud
👉Fai clic su Attiva Cloud Shell nella parte superiore della console Google Cloud (è l'icona a forma di terminale nella parte superiore del riquadro di Cloud Shell), 
👉Fai clic sul pulsante "Apri editor" (ha l'aspetto di una cartella aperta con una matita). Verrà aperto l'editor di codice di Cloud Shell nella finestra. A sinistra vedrai un Esplora file. 
👉Trova l'ID progetto Google Cloud:
- Apri la console Google Cloud: link
- Seleziona il progetto che vuoi utilizzare per questo workshop dal menu a discesa del progetto nella parte superiore della pagina.
- L'ID progetto viene visualizzato nella scheda Informazioni sul progetto della dashboard

👉💻 Nel terminale, verifica di aver già eseguito l'autenticazione e che il progetto sia impostato sull'ID progetto utilizzando il seguente comando:
gcloud auth list
👉💻 Clona il progetto di bootstrap da GitHub:
git clone https://github.com/cuppibla/adk_tutorial.git
👉💻 Esegui lo script di inizializzazione. Questo script ti chiederà di inserire l'ID progetto Google Cloud. Quando richiesto dallo script setup_venv.sh, inserisci l'ID progetto Google Cloud che hai trovato nel passaggio precedente.
cd ~/adk_tutorial
./setup_venv.sh
gcloud services enable compute.googleapis.com \
artifactregistry.googleapis.com \
run.googleapis.com \
iam.googleapis.com \
aiplatform.googleapis.com \
cloudresourcemanager.googleapis.com
3. Sessione 1: il tuo primo agente in ADK Web
Apri ADK Web eseguendo:
cd ~/adk_tutorial
source .adk_env/bin/activate
adk web
Dopo aver eseguito i comandi, dovresti vedere un output nel terminale che indica che il server web ADK è stato avviato, simile a questo:
+-----------------------------------------------------------------------------+
| ADK Web Server started |
| |
| For local testing, access at http://localhost:8000. |
+-----------------------------------------------------------------------------+
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
👉 Poi, per accedere all'UI di sviluppo ADK dal browser:
Dall'icona Anteprima web (spesso ha l'aspetto di un occhio o di un quadrato con una freccia) nella barra degli strumenti di Cloud Shell (in genere in alto a destra), seleziona Cambia porta. Nella finestra popup, imposta la porta su 8000 e fai clic su "Cambia e visualizza anteprima". Cloud Shell aprirà una nuova scheda o finestra del browser che mostra l'UI di sviluppo ADK.

👉 Il rituale di evocazione è completo e l'agente è ora in esecuzione. L'UI di sviluppo ADK nel browser è la tua connessione diretta al Familiar.
Scegli l'agente del workflow parallelo Nel menu a discesa nella parte superiore dell'UI, scegli parallel_agent.
Puoi selezionare il single_agent qui: 
Puoi vedere la traccia qui: 
👉 Prompt di test:
Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art.
4. Sessione 2: agente del workflow: agente sequenziale, agente parallelo, agente di loop
Agente parallelo
Scegli l'agente del workflow parallelo Nel menu a discesa nella parte superiore dell'UI, scegli parallel_agent.
👉 Prompt di test:
Plan my trip to San Francisco, I want to find some good concert, restaurant and museum.
Puoi selezionare parallel_agent qui: 
Puoi vedere la traccia qui: 
Agente sequenziale
Scegli l'agente del workflow sequenziale Nel menu a discesa nella parte superiore dell'UI, scegli sequential_agent.
👉 Prompt di test:
Find a good sushi near Standford and tell me how to get there.
Puoi selezionare sequential_agent qui: 
Puoi vedere la traccia qui: 
Agente di loop
Scegli l'agente del workflow di loop Nel menu a discesa nella parte superiore dell'UI, scegli loop_agent.
👉 Prompt di test:
Plan a trip from Sunnyvale to San Francisco today.
Puoi selezionare loop_agent qui: 
Puoi vedere la traccia qui: 
5. Sessione 3: agente personalizzato
Una volta aperta l'UI web ADK, puoi selezionare l'agente Custom_Agent.
👉 Prompt di test:
Plan a trip from Sunnyvale to San Francisco this weekend, I love food and art. Make sure within budget of 100 dollars.
Puoi selezionare il Custom_Agent qui: 
Puoi vedere la traccia qui: 
6. Sessione 4: pattern di orchestratore - agente di routing
Una volta aperta l'UI web ADK, puoi selezionare routing_agent.
👉 Prompt di test:
Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.
Puoi selezionare il routing_agent qui: 
Puoi vedere la traccia qui: 
7. Sessione 5: agente come strumento
Una volta aperta l'UI web ADK, puoi selezionare l'agente Agent_as_tool.
👉 Prompt di test:
Plan a trip from Sunnyvale to San Francisco this weekend, I love concert, restaurant and museum.
Puoi selezionare il agent_as_tool qui: 
Puoi vedere la traccia qui: 
8. Sessione 6: agente con memoria a lungo termine
👉💻 Testa la memoria a lungo termine andando alla cartella e utilizzando il runner per migliorare l'agente:
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py
👉 Prompt di test:
I like Art and Italian food.
Quindi, termina la sessione premendo "Ctrl+C". Riavvia la sessione:
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/f_agent_with_memory
python main.py
👉 Prompt di test:
Plan a trip to San Francisco based on my preference.
9. Sessione 7: potenzia l'agente con MCP
Passaggio 1: prepara il database locale
👉💻 Esegui il seguente comando nel terminale
cd ~/adk_tutorial
source .adk_env/bin/activate
chmod +x setup_trip_database.py
./setup_trip_database.py
Passaggio 2: installa ed esegui il server del toolbox MCP
👉💻 Esegui il seguente comando nel terminale
cd ~/adk_tutorial/mcp_tool_box
export VERSION=0.16.0
curl -O https://storage.googleapis.com/mcp-toolbox-for-databases/v$VERSION/linux/amd64/toolbox
Al termine del download, esegui
chmod +x toolbox
Passaggio 3
In un terminale Esegui il seguente comando
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/mcp_tool_box
./toolbox --tools-file "trip_tools.yaml" --port 7001
In un altro terminale Esegui il seguente comando
cd ~/adk_tutorial
source .adk_env/bin/activate
cd ~/adk_tutorial/g_agents_mcp
python main.py