1. Übersicht
Wo fängt die Arbeit mit KI heute an? Für die meisten von uns beginnt es oft mit einer einfachen Frage: „Kann das Modell mir tatsächlich helfen, dieses Problem zu lösen, über das ich nachgedacht habe?“ Genau hier kommt Google AI Studio ins Spiel. Hier können Sie schnell Prototypen für alles erstellen. Ich möchte meine Küche umbauen und bin sicher, dass Gemini mir dabei helfen kann. Ich bin aber Ingenieur und kein Generalunternehmer. Ich weiß gar nicht, was ich fragen soll – es gibt so viel zu beachten: Vorschriften, Armaturen usw. Lassen Sie uns das also in einzelne Schritte unterteilen und Gemini einen super detaillierten Prompt für uns generieren, dann einen vollständigen Renovierungsplan und auch die Umgestaltung visualisieren. Aber Moment. Wie kann ich Unternehmen dabei helfen, zu wachsen? AGENTS eingeben
Ein Agent ist ein autonomes Programm, das mit einem KI-Modell kommuniziert, um mit den vorhandenen Tools und im vorhandenen Kontext eine zielbasierte Operation auszuführen. Außerdem ist er in der Lage, fundierte Entscheidungen zu treffen.
Agent Development Kit (ADK)
Das Agent Development Kit (ADK) ist ein flexibles und modulares Framework für die Entwicklung und Bereitstellung von KI-Agenten. Mit ADK können Sie komplexe Anwendungen erstellen, indem Sie mehrere unterschiedliche Agentinstanzen in einem Multi-Agent-System (MAS) zusammenstellen.
In ADK ist ein Multiagentensystem eine Anwendung, in der verschiedene Agenten, die oft eine Hierarchie bilden, zusammenarbeiten oder sich koordinieren, um ein größeres Ziel zu erreichen. Diese Strukturierung Ihrer Anwendung bietet erhebliche Vorteile, darunter eine verbesserte Modularität, Spezialisierung, Wiederverwendbarkeit, Wartbarkeit und die Möglichkeit, strukturierte Kontrollabläufe mithilfe spezieller Workflow-Agents zu definieren.
Aufgaben
Sind Sie bereit, vom Prototyp zum Erstellen eines Agents überzugehen? Wir erstellen einen Agenten, der beim Erstellen des Angebotsdokuments für die Küchenrenovierung hilft. In diesem Lab lernen Sie Folgendes:
- Einen einfachen Agenten erstellen, um mit dem ADK ein Renovierungsvorschlagsdokument zu generieren
- Das generierte Renovierungsvorschlagsdokument in einem Cloud Storage-Bucket speichern
- Agent in Cloud Shell und in der Webausgabe des Agents testen
Voraussetzungen
2. Hinweis
Projekt erstellen
- Wählen Sie in der Google Cloud Console auf der Seite der Projektauswahl ein Google Cloud-Projekt aus oder erstellen Sie eines.
- Die Abrechnung für das Cloud-Projekt muss aktiviert sein. So prüfen Sie, ob die Abrechnung für ein Projekt aktiviert ist.
- Wenn Sie Google Cloud und ADK ausprobieren möchten, können Sie sich über diesen Link Guthaben sichern.
- Eine Anleitung zum Einlösenfindest du hier. Hinweis: Dieser Link ist nur bis zum 15. Juli 2025 gültig.
- Klicken Sie auf diesen Link, um Cloud Shell zu aktivieren. Sie können zwischen dem Cloud Shell-Terminal (zum Ausführen von Cloud-Befehlen) und dem Editor (zum Erstellen von Projekten) wechseln, indem Sie in Cloud Shell auf die entsprechende Schaltfläche klicken.
- Nachdem Sie eine Verbindung zu Cloud Shell hergestellt haben, prüfen Sie mit dem folgenden Befehl, ob Sie bereits authentifiziert sind und das Projekt auf Ihre Projekt-ID festgelegt ist:
gcloud auth list
- Führen Sie in Cloud Shell den folgenden Befehl aus, um zu prüfen, ob der gcloud-Befehl Ihr Projekt kennt.
gcloud config list project
- Wenn Ihr Projekt nicht festgelegt ist, verwenden Sie den folgenden Befehl, um es festzulegen:
gcloud config set project <YOUR_PROJECT_ID>
- Python 3.9 oder höher
Weitere Informationen zu anderen gcloud-Befehlen und deren Verwendung finden Sie in der Dokumentation.
3. Prototyp
Rufen Sie Google AI Studio auf. Geben Sie den Prompt ein. Hier ist mein Prompt:
I want to renovate my kitchen, basically just remodel it. I don't know where to start. So I want to use Gemini to generate a plan. For that I need a good prompt. Give me a short yet detailed prompt that I can use.
Passen Sie die Parameter auf der rechten Seite an und konfigurieren Sie sie, um eine optimale Antwort zu erhalten.
Anhand dieser einfachen Beschreibung hat mir Gemini einen unglaublich detaillierten Prompt für den Start meiner Renovierung erstellt. Mit Gemini können wir noch bessere Antworten von AI Studio und unseren Modellen erhalten. Je nach Anwendungsfall können Sie auch verschiedene Modelle auswählen.
Wir haben uns für Gemini 2.5 Pro entschieden. Dies ist ein Thinking-Modell. Das bedeutet, dass wir für Analysen im Langformat und detaillierte Dokumente noch mehr Ausgabetokens erhalten, in diesem Fall bis zu 65.000 Tokens. Das Gemini-Denken-Symbol wird angezeigt, wenn Sie Gemini 2.5 Pro aktivieren, das native Inferenzfunktionen hat und lange Kontextanfragen verarbeiten kann.
Unten siehst du ein Snippet der Antwort:
AI Studio hat meine Daten analysiert und alle diese Dinge wie Schränke, Arbeitsplatten, Rückwand, Fußboden, Spüle, Einheitlichkeit, Farbpalette und Materialauswahl erstellt. Gemini zitiert sogar Quellen.
Versuchen Sie nun, die Idee mit einem anderen Prompt zum Leben zu erwecken.
- Kopieren Sie diese Aufforderung und fügen Sie sie in den Prompt-Editor ein:
Add flat and circular light accessories above the island area for my current kitchen in the attached image.
- Hängen Sie ein Bild Ihrer aktuellen Küche an oder verwenden Sie mein Beispielbild für eine Küche.
- Ändern Sie das Modell in „Gemini 2.0 Flash Preview Image Generation“, damit Sie Bilder generieren können.
Ich erhalte folgende Ausgabe:
Das ist die Stärke von Gemini.
Von der Videoerkennung über die native Bildgenerierung bis hin zur Verknüpfung echter Informationen mit der Google Suche – es gibt Dinge, die nur mit Gemini möglich sind.
In AI Studio können Sie diesen Prototyp mit dem API-Schlüssel abrufen und mithilfe des Vertex AI ADK zu einer vollständigen KI-Agent-Anwendung skalieren.
4. ADK einrichten
Rufen Sie nun das Cloud Shell-Terminal auf, das Sie im Abschnitt „Vorbereitung“ aktiviert haben:
- Virtuelle Umgebung erstellen und aktivieren (empfohlen)
Erstellen Sie über Ihr Cloud Shell-Terminal eine virtuelle Umgebung:
python -m venv .venv
Aktivieren Sie die virtuelle Umgebung:
source .venv/bin/activate
- ADK installieren
pip install google-adk
5. Projektstruktur
- Erstellen Sie im Cloud Shell-Terminal ein Stammverzeichnis für Ihre Agenten-Apps am gewünschten Projektspeicherort:
mkdir agentic-apps
- Erstellen Sie im Hauptverzeichnis einen Ordner, der speziell für unser aktuelles Projekt bestimmt ist:
mkdir renovation-agent
- Rufen Sie den Cloud Shell-Editor auf und erstellen Sie die folgende Projektstruktur, indem Sie die Dateien erstellen (zuerst leer):
renovation-agent/
__init__.py
agent.py
requirements.txt
.env
6. Quellcode
- Gehen Sie zu init.py und ersetzen Sie den Inhalt durch Folgendes:
from . import agent
- Rufen Sie „agent.py“ auf und aktualisieren Sie die Datei mit dem folgenden Inhalt aus dem folgenden Pfad:
https://github.com/AbiramiSukumaran/adk-renovation-single-agent/blob/main/agent.py
In „agent.py“ importieren wir die erforderlichen Abhängigkeiten, rufen Konfigurationsparameter aus der .env-Datei ab und definieren den „root_agent“, der ein Angebotsdokument generiert und in einem Cloud Storage-Bucket speichert. Für den Cloud Storage-Schritt verwenden wir das Tool „store_pdf“.
- Cloud Storage-Bucket prüfen
Hier wird das vom Kundenservicemitarbeiter erstellte Angebotsdokument gespeichert. Erstellen Sie es und stellen Sie den Zugriff so bereit, dass das mit Vertex AI erstellte Agentensystem darauf zugreifen kann. So gehts:
https://cloud.google.com/storage/docs/creating-buckets#console
Geben Sie als Namen für den Bucket „next-demo-store
“ ein. Wenn Sie einen anderen Namen verwenden, denken Sie daran, den Wert für STORAGE_BUCKET in der .env-Datei (im Schritt zur Einrichtung der Umgebungsvariablen) zu aktualisieren.
- Rufen Sie die Cloud Storage Console auf und rufen Sie dann Ihren Storage Bucket auf. In unserem Fall lautet der Bucket-Name „next-demo-storage“: https://console.cloud.google.com/storage/browser/next-demo-storage.
Gehen Sie zu „Berechtigungen“ -> „Hauptkonten ansehen“ -> „Zugriff gewähren“. Wählen Sie als „Principals“ (Berechtigte) „allUsers“ (alle Nutzer) und als „Role“ (Rolle) „Storage Object User“ (Storage-Objekt-Nutzer) aus.
Make sure to not enable "prevent public access". Since this is a demo/study application we are going with a public bucket. Remember to configure permission settings appropriately when you are building your application.
- Liste der Abhängigkeiten erstellen
Listen Sie alle Abhängigkeiten in requirements.txt auf. Sie können diesen Code aus dem Repository kopieren.
Erläuterung des Quellcodes für ein System mit einem einzelnen Agenten
In der Datei „agent.py“ wird die Struktur und das Verhalten unseres Multi-Agenten-Systems für die Küchenrenovierung mit dem Agent Development Kit (ADK) definiert. Sehen wir uns die wichtigsten Komponenten an:
Agent-Definition
Root-Agent (Orchestrator): proposal_agent
Der root_agent fungiert als Orchestrator dieses Systems mit einem einzelnen Agenten. Er empfängt die erste Anfrage zur Renovierung und bestimmt anhand der Anforderungen der Anfrage, welche Tools aufgerufen werden sollen.
Der root_agent sammelt dann die Antworten der Tools und kombiniert sie, um dem Nutzer eine umfassende Antwort zu geben. In diesem Fall haben wir nur ein Tool: „store_pdf“.
7. Datenfluss und wichtige Konzepte
Der Nutzer sendet eine Anfrage über die ADK-Benutzeroberfläche (entweder das Terminal oder die Web-Benutzeroberfläche).
- Die Anfrage wird vom root_agent empfangen.
- Der root_agent analysiert die Anfrage und leitet sie bei Bedarf an das Tool weiter.
- Das Tool „store_pdf“ ist dazu gedacht, den überarbeiteten Textinhalt in eine PDF-Datei zu schreiben und dann in Google Cloud Storage hochzuladen.
- Die Antwort wird dann an den root_agent zurückgegeben.
- Der root_agent kombiniert die Antworten und stellt dem Nutzer eine endgültige Ausgabe zur Verfügung.
Large Language Models (LLMs)
Die Chatbots nutzen LLMs in großem Umfang, um Text zu generieren, Fragen zu beantworten und Aufgaben zur Logik auszuführen. Die LLMs sind das „Gehirn“ hinter der Fähigkeit der Kundenservicemitarbeiter, Nutzeranfragen zu verstehen und zu beantworten. In dieser Anwendung verwenden wir Gemini 2.5.
Google Cloud Storage
Hier werden die generierten Dokumente für den Renovierungsvorschlag gespeichert. Sie müssen einen Bucket erstellen und den Kundenservicemitarbeitern die erforderlichen Berechtigungen für den Zugriff darauf gewähren.
Cloud Run (optional)
Der OrderingAgent verwendet eine Cloud Run-Funktion, um mit AlloyDB zu kommunizieren. Cloud Run bietet eine serverlose Umgebung, in der Code als Reaktion auf HTTP-Anfragen ausgeführt werden kann.
AlloyDB
Wenn Sie den OrderingAgent verwenden, müssen Sie eine AlloyDB-Datenbank einrichten, um Bestellinformationen zu speichern.
.env-Datei
In der .env-Datei werden vertrauliche Informationen wie API-Schlüssel, Datenbankanmeldedaten und Bucket-Namen gespeichert. Bewahren Sie diese Datei unbedingt sicher auf und committen Sie sie nicht in Ihr Repository. Außerdem werden dort Konfigurationseinstellungen für die Kundenservicemitarbeiter und Ihr Google Cloud-Projekt gespeichert. Normalerweise werden Werte aus dieser Datei vom root_agent oder von unterstützenden Funktionen gelesen. Prüfen Sie, ob alle erforderlichen Variablen in der .env-Datei richtig festgelegt sind. Dazu gehört auch der Name des Cloud Storage-Buckets.
8. Modelleinrichtung
Die Fähigkeit des Kundenservicemitarbeiters, Nutzeranfragen zu verstehen und Antworten zu generieren, wird durch ein Large Language Model (LLM) unterstützt. Ihr Kundenservicemitarbeiter muss sichere Aufrufe an diesen externen LLM-Dienst senden, für den Anmeldedaten erforderlich sind. Ohne gültige Authentifizierung lehnt der LLM-Dienst die Anfragen des Agents ab und der Agent kann nicht funktionieren.
- Rufen Sie einen API-Schlüssel in Google AI Studio ab.
- Ersetzen Sie im nächsten Schritt, in dem Sie die .env-Datei einrichten,
<<your API KEY>>
durch den tatsächlichen Wert Ihres API-Schlüssels.
9. Umgebungsvariablen einrichten
- Legen Sie die Werte für die Parameter in der .env-Datei der Vorlage in diesem Repository fest. In meinem Fall enthält die .env-Datei die folgenden Variablen:
GOOGLE_GENAI_USE_VERTEXAI=FALSE
GOOGLE_API_KEY=<<your API KEY>>
GOOGLE_CLOUD_LOCATION = us-central1 <<or your region>>
GOOGLE_CLOUD_PROJECT = <<your project id>>
PROJECT_ID = <<your project id>>
GOOGLE_CLOUD_REGION=us-central1 <<or your region>>
STORAGE_BUCKET = next-demo-store <<or your storage bucket name>>
Ersetzen Sie die Platzhalter durch Ihre Werte.
10. Agent ausführen
- Rufen Sie im Terminal das übergeordnete Verzeichnis Ihres Kundenservicemitarbeiterprojekts auf:
cd agentic-apps/renovation-agent
- Alle Abhängigkeiten installieren
pip install -r requirements.txt
- Sie können den folgenden Befehl in Ihrem Cloud Shell-Terminal ausführen, um den Agenten auszuführen:
adk run .
- Führen Sie den folgenden Befehl aus, um ihn in einer von ADK bereitgestellten Web-UI auszuführen:
adk web
- Testen Sie mit den folgenden Prompts:
user>>
Hello. Generate Proposal Document for the kitchen remodel requirement in a proper format that applies to a renovation contract. Remember this text will eventually be stored as a pdf file so make sure to have the formatting appropriate. I have no other specification.
11. Ergebnis
Für den Befehl adk run . Ergebnis ist wie folgt:"
…
Sie können prüfen, ob das Dokument „Renovierungsvorschlag“ im Cloud Storage-Bucket erstellt wurde.
12. Bereinigen
Mit den folgenden Schritten vermeiden Sie, dass Ihrem Google Cloud-Konto die in diesem Beitrag verwendeten Ressourcen in Rechnung gestellt werden:
- Rufen Sie in der Google Cloud Console die Seite Ressourcen verwalten auf.
- Wählen Sie in der Projektliste das Projekt aus, das Sie löschen möchten, und klicken Sie auf Löschen.
- Geben Sie im Dialogfeld die Projekt-ID ein und klicken Sie auf Beenden, um das Projekt zu löschen.
13. Glückwunsch
Sie haben das Lab erfolgreich abgeschlossen. Sie haben mithilfe des ADK eine Multi-Agent-App erstellt und mit ihr interagiert. Das Multi-Agenten-System soll den Prozess der Küchenrenovierung optimieren, indem Aufgaben wie die Angebotserstellung, die Genehmigungsprüfung und das Überwachen des Bestellstatus automatisiert werden. Jeder Agent hat eine bestimmte Rolle und der root_agent koordiniert ihre Aktivitäten, um eine umfassende Lösung zu bieten. Das System nutzt LLMs, Google Cloud-Dienste und möglicherweise externe APIs, um seine Funktionen bereitzustellen. Hier finden Sie einen Link zur Produktdokumentation.