In dieser Anleitung wird beschrieben, wie Sie einen Agent-to-Agent-Agenten (A2A), der mit dem Google Agent Development Kit (ADK) und der A2UI-Erweiterung erstellt wurde, in Cloud Run bereitstellen. Außerdem erfahren Sie, wie Sie den bereitgestellten Agenten bei Gemini Enterprise registrieren.
Der Beispielcode für diese Anleitung hat die folgende Ordnerstruktur.
Ordnerstruktur der Anleitung
Das Projekt hat die folgende Ordnerstruktur:
| Datei/Verzeichnis | Beschreibung |
|---|---|
examples/0.8/ |
Verzeichnis mit Beispielkonfigurationen oder ‑daten. |
__init__.py |
Markiert das Verzeichnis als Python-Paket. |
agent.py |
Definiert den KI‑Agenten, seine Fähigkeiten und sein Verhalten. |
agent_executor.py |
Verwaltet den Ausführungsablauf und die Tool-Interaktionen. |
contact_data.json |
Beispieldaten, die vom KI-Agenten verwendet werden (z. B. Testkontakte). |
deploy.sh |
Script zum Erstellen und Bereitstellen des Agenten in Cloud Run. |
main.py |
Der Haupteinstiegspunkt der Anwendung (FastAPI-App). |
prompt_builder.py |
Hilfe beim Erstellen von Prompts für das Modell. |
pyproject.toml |
Projektkonfiguration und ‑abhängigkeiten |
tools.py |
Definiert die Tools (Funktionen), die der Agent verwenden kann. |
Hinweis
Bevor Sie beginnen, benötigen Sie Folgendes:
Die Rolle Discovery Engine Admin.
Eine vorhandene Gemini Enterprise-App. Informationen zum Erstellen einer App finden Sie unter App erstellen.
Klonen Sie das Repository und wechseln Sie in das Beispielverzeichnis
cloud_run:git clone https://github.com/google/A2UI.git cd A2UI/samples/agent/adk/gemini_enterprise/cloud_run
APIs aktivieren
Aktivieren Sie die folgenden APIs für Ihr Projekt:
Console
Aktivieren Sie folgende APIs:
- Agent Platform API
- Cloud Build API
- Artifact Registry API
- Cloud Run API
- Cloud Logging API
- Discovery Engine API
- Cloud Storage API
- API für Identitäts- und Zugriffsverwaltung (IAM)
REST
Sie können diese APIs über die Google Cloud Console oder mit dem folgenden gcloud CLI-Befehl aktivieren:
gcloud services enable aiplatform.googleapis.com cloudbuild.googleapis.com artifactregistry.googleapis.com run.googleapis.com logging.googleapis.com discoveryengine.googleapis.com storage.googleapis.com iam.googleapis.com
Berechtigungen erteilen
Gewähren Sie die Berechtigung für die Rolle „Cloud Run Invoker“ (roles/run.invoker).
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com" \
--role="roles/run.invoker"
Ersetzen Sie Folgendes:
- PROJECT_ID : die ID Ihres Projekts.
- PROJECT_NUMBER: Ihre Google Cloud Projektnummer.
Agent bereitstellen
Das deploy.sh-Skript automatisiert den Bereitstellungsprozess. Um den Agent bereitzustellen, führen Sie das Skript über das Projektverzeichnis mit Ihrer Google Cloud ID und einem Namen für den neuen Dienst aus. Sie können optional auch das zu verwendende Gemini-Modell angeben.
Das Skript führt die folgenden Aktionen aus:
- Erstellt ein Container-Image aus Ihrem Quellcode.
- Überträgt das Image per Push in Artifact Registry.
- Stellt das Image in Cloud Run bereit.
- Legt Umgebungsvariablen fest, einschließlich der
MODELund der öffentlichenAGENT_URLdes Dienstes selbst.
chmod +x deploy.sh
./deploy.sh YOUR_PROJECT_ID contacts-agent MODEL_NAME
Ersetzen Sie Folgendes:
- PROJECT_ID: die Projekt-ID.
- MODEL_NAME: Optional. Dies ist das dritte Argument für das Skript. Unterstützte Werte sind
gemini-2.5-proundgemini-2.5-flash. Wenn nichts angegeben ist, wird standardmäßiggemini-2.5-flashverwendet.
Sobald das Skript abgeschlossen ist, wird die Dienst-URL Ihres bereitgestellten Agents ausgegeben. Sie benötigen diese Dienst-URL im nächsten Schritt.
Agent bei Gemini Enterprise registrieren
Nachdem Ihr Agent bereitgestellt wurde, müssen Sie ihn bei Gemini Enterprise registrieren, damit er gefunden werden kann.
Führen Sie den folgenden curl-Befehl aus und ersetzen Sie die Platzhalter durch Ihre eigenen Werte:
curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/collections/default_collection/engines/ENGINE_ID/assistants/default_assistant/agents -d '{
"name": "contacts-agent",
"displayName": "Contacts Agent",
"description": "This is a test agent which lists the contacts.",
"a2aAgentDefinition": {
"jsonAgentCard": "{\"protocolVersion\": \"0.3.0\", \"name\": \"contacts-agent\", \"description\": \"This is a test agent which lists the contacts.\", \"url\": \"AGENT_URL\", \"version\": \"1.0.0\", \"capabilities\": {\"streaming\": true, \"extensions\": [{\"uri\": \"https://a2ui.org/a2a-extension/a2ui/v0.8\", \"description\": \"Ability to render A2UI\", \"required\": false, \"params\": {\"supportedCatalogIds\": [\"https://a2ui.org/specification/v0_8/standard_catalog_definition.json\"]}}]}, \"skills\": [], \"defaultInputModes\": [\"text/plain\"], \"defaultOutputModes\": [\"text/plain\"]}"
}
}'
Ersetzen Sie Folgendes:
PROJECT_NUMBER: Ihre Google Cloud Projektnummer.LOCATION: Der multiregionale Standort Ihres Datenspeichers:global,usodereu.ENGINE_ID: Die ID der App, mit der Sie den Agenten registrieren möchten.AGENT_URL: Die Dienst-URL Ihres bereitgestellten Agenten.
Agent in der Gemini Enterprise-Web-App verwenden
Nachdem Sie einen KI-Agenten erstellt und registriert haben, können Sie ihn in der Gemini Enterprise Web-App verwenden und mit ihm interagieren.
URL der Web-App abrufen
Wenn Sie den Agent verwenden möchten, müssen Sie zuerst die Web-App-URL abrufen. Ein Gemini Enterprise-Administrator kann die Web-App-URL so abrufen und freigeben:
Rufen Sie in der Google Cloud Console die Seite Gemini Enterprise auf.
Klicken Sie auf den Namen der App, für die Sie den Agenten registriert haben.
Klicken Sie auf Integrations (Integrationen).
Kopieren Sie den Link zu Ihrer Webanwendung und geben Sie ihn an die Nutzer in der Organisation weiter.
Agent verwenden
So verwenden Sie den KI-Agenten und interagieren mit ihm:
- Öffnen Sie die URL der Webanwendung in einem neuen Browsertab.
- Klicken Sie im Navigationsmenü der Webanwendung auf Agenten.
- Rufen Sie den Bereich Von Ihrer Organisation auf und klicken Sie auf den von Ihnen erstellten Agenten.
- Dadurch wird die Konversationsoberfläche für den KI-Agenten geöffnet. Stellen Sie Fragen und interagieren Sie mit dem KI-Agenten.
Sie können den Agenten beispielsweise bitten, alle Kontakte aufzulisten. Der Agent verwendet das Tool list_contacts, um die Kontakte aus contact_data.json abzurufen, und rendert die Liste im Chat mithilfe benutzerdefinierter UI-Elemente, wie im folgenden Beispiel gezeigt:
