A2A-Agenten registrieren und verwalten

Das Agent2Agent-Protokoll (A2A) ist ein offenes Kommunikationsprotokoll und eine universelle Sprache für Agenten. So können Agenten von verschiedenen Entwicklern und Plattformen einander finden, zusammenarbeiten und Aufgaben sicher delegieren. In diesem Dokument wird beschrieben, wie Gemini Enterprise-Administratoren Agenten, die mit A2A erstellt wurden und auf einer beliebigen Plattform gehostet werden, mit Gemini Enterprise verbinden und so für Nutzer in der Gemini Enterprise Web-App verfügbar machen können.

Hinweis

Sie benötigen Folgendes:

  • Die Rolle Gemini Enterprise Admin.

  • Aktivieren Sie die Discovery Engine API. Wenn Sie die Discovery Engine API für das Google Cloud-Projekt aktivieren möchten, rufen Sie in der Google Cloud Console die Seite Discovery Engine API auf.

    Zur Discovery Engine API

  • Eine vorhandene Gemini Enterprise-App. Informationen zum Erstellen einer App finden Sie unter App erstellen.

  • Ein Agent, der das A2A-Protokoll verwendet.

    Gemini Enterprise unterstützt den A2A v0.3-Streaming-Mechanismus.

    Wenn Sie A2A v1.0.0 oder höher verwenden, nutzen Sie die vom SDK bereitgestellten Kompatibilitätspakete, um sicherzustellen, dass Ihr Agent mit dem früheren Mechanismus funktioniert (z. B. das Paket a2acompat/a2av0 für Go oder das Paket a2a.compat.v0_3 für Python).

  • Wenn Ihr A2A-Agent in Cloud Run gehostet wird, direkt eine Standard-.run.app-URL verwendet und eine Authentifizierung erfordert, weisen Sie dem Discovery Engine-Dienst-Agenten die Rolle „Cloud Run Invoker“ (roles/run.invoker) zu. Dies gilt nicht, wenn Cloud Run hinter Apigee, einem Load Balancer oder einer benutzerdefinierten Domain liegt:

    gcloud projects add-iam-policy-binding <var>PROJECT_ID</var> \
       --member="serviceAccount:service-<var>PROJECT_NUMBER</var>@gcp-sa-discoveryengine.iam.gserviceaccount.com" \
       --role="roles/run.invoker"
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die Projekt-ID.
    • PROJECT_NUMBER: Die Nummer Ihres Projekts in Google Cloud .

Authentifizierung und Autorisierung konfigurieren

Je nach Hosting-Umgebung und Sicherheitsanforderungen Ihres Agenten können Sie konfigurieren, wie sich Gemini Enterprise bei Ihrem Agenten authentifiziert, wie Ihr Agent im Namen des Endnutzers auf Ressourcen zugreift und wie Sie den Endpunkt Ihres Agenten sichern.

So authentifiziert sich Gemini Enterprise bei Ihrem KI-Agenten

Wenn Gemini Enterprise einen A2A-Agenten aufruft, kann es je nach Hosting- und Sicherheitskonfiguration Authentifizierungs- und Autorisierungsdaten in Anfrageheadern senden:

Header Beschreibung
X-Serverless-Authorization

IAM-Authentifizierung von Dienst zu Dienst (für Cloud Run).

Wenn Ihr A2A-Agent in Cloud Run gehostet wird und die Agenten-URL eine Standard-.run.app-URL ist, generiert Gemini Enterprise automatisch ein von Google signiertes OIDC-ID-Token für den Discovery Engine-Dienst-Agenten (service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com) mit Ihrer Agenten-URL als Zielgruppe und fügt es im X-Serverless-Authorization-Header an. Wenn Ihre Agenten-URL Apigee, einen Load Balancer oder eine benutzerdefinierte Domain verwendet, sendet Gemini Enterprise diesen Header nicht.

Wenn Gemini Enterprise eine Standard-.run.app-URL direkt aufruft, wird dieser Header von der Cloud Run-Infrastruktur für eingehenden Traffic verwendet, um zu prüfen, ob der Dienst-Agent die IAM-Rolle roles/run.invoker hat (siehe Vorbereitung), bevor die Anfrage an Ihren Anwendungscontainer weitergeleitet wird.

Authorization

OAuth 2.0-Autorisierung für Endnutzer (für Nutzerkontext und API-Zugriff).

Wenn Sie OAuth 2.0-Anmeldedaten für Ihren A2A-Agenten konfigurieren (siehe OAuth 2.0 für die Endnutzerautorisierung konfigurieren), ruft Gemini Enterprise im Namen des angemeldeten Endnutzers ein OAuth 2.0-Zugriffstoken oder ‑ID-Token ab, nachdem dieser seine Einwilligung erteilt hat, und sendet es im Standard-Authorization-Header (z. B. Bearer USER_OAUTH_TOKEN).

Cloud Run leitet den Header Authorization direkt an Ihren Container weiter. So kann der Anwendungscode Ihres KI-Agenten das Nutzertoken lesen und nachgelagerte APIs im Namen des Nutzers aufrufen.

OAuth 2.0 für die Endnutzerautorisierung konfigurieren (optional)

Konfigurieren Sie für A2A-Agenten OAuth 2.0-Anmeldedaten, wenn Ihr Agent auf Ressourcen vonGoogle Cloud zugreifen oder Vorgänge im Namen des Endnutzers ausführen muss. Weitere Informationen zur Funktionsweise von Authentifizierungs- und Autorisierungsheadern finden Sie unter So authentifiziert sich Gemini Enterprise bei Ihrem Agenten.

So erstellen Sie eine OAuth-Client-ID:

  1. Rufen Sie in der Google Cloud Console auf der Seite APIs & Dienste die Seite Anmeldedaten auf.

    Zu den Anmeldedaten

  2. Wählen Sie das Projekt von Google Cloud aus, in dem sich die Datenquelle befindet, auf die der Agent zugreifen soll. Wählen Sie beispielsweise das Projekt aus, in dem das BigQuery-Dataset enthalten ist, das der Agent abfragen soll.

  3. Klicken Sie auf Anmeldedaten erstellen und wählen Sie OAuth-Client-ID aus.

  4. Wählen Sie unter Anwendungstyp die Option Webanwendung aus.

  5. Fügen Sie im Abschnitt Autorisierte Weiterleitungs-URIs die folgenden URIs hinzu:

    • https://vertexaisearch.cloud.google.com/oauth-redirect
    • https://vertexaisearch.cloud.google.com/static/oauth/oauth.html
  6. Klicken Sie auf Erstellen.

  7. Klicken Sie im Bereich OAuth-Client erstellt auf JSON herunterladen. Die heruntergeladene JSON-Datei enthält Client ID, Authorization URI, Token URI und Client secret für das ausgewählteGoogle Cloud -Projekt. Sie benötigen diese Informationen, um eine Autorisierungsressource zu erstellen.

A2A-Agenten-Endpunkt schützen

Informationen zu den Authentifizierungsheadern, die Gemini Enterprise an Ihren A2A-Agenten sendet, finden Sie unter So authentifiziert sich Gemini Enterprise bei Ihrem KI-Agenten. Beachten Sie beim Sichern Ihres Agenten-Endpunkts oder eines API-Gateways davor Folgendes:

  • Sicherheitsschemas für Agentenkarten: Gemini Enterprise verwendet die Felder securitySchemes und security Ihrer Agentenkarte nicht für die Authentifizierung bei Ihrem Agenten.
  • API-Schlüssel und benutzerdefinierte Header: Gemini Enterprise unterstützt das Sicherheitsschema apiKey nicht und bietet keine Möglichkeit, statische API-Schlüssel oder andere benutzerdefinierte Headerwerte zu den Anfragen hinzuzufügen, die an Ihren Agenten gesendet werden.
  • Dienst-Agent-ID-Token: Gemini Enterprise sendet den Header X-Serverless-Authorization nur, wenn die URL Ihres Agenten eine Standard-Cloud Run-URL ist, die auf .run.app endet. Wenn Ihre Agenten-URL eine benutzerdefinierte Domain, einen Load Balancer oder ein API-Gateway verwendet, sendet Gemini Enterprise diesen Header nicht.
  • Endnutzer-Token: Wenn Sie OAuth 2.0 für Ihren Agenten konfigurieren, sendet Gemini Enterprise das Token des Endnutzers von Ihrem OAuth 2.0-Anbieter im Header Authorization.

Agent Endpoint mit Apigee schützen

Wenn Sie Ihren A2A-Agenten über einen Apigee-API-Proxy verfügbar machen, empfängt der Proxy das Endnutzertoken im Authorization-Header, aber nicht den X-Serverless-Authorization-Header. So sichern Sie den Proxy:

  1. Konfigurieren Sie OAuth 2.0 für die Endnutzerautorisierung für Ihren Agenten (entweder mit einer OAuth 2.0-Client-ID von Google Cloud oder einem OAuth 2.0-Drittanbieter) und geben Sie diese OAuth 2.0-Details an, wenn Sie den Agenten registrieren. Die Konfiguration von OAuth 2.0 ist erforderlich, wenn Sie einen Apigee API-Proxy sichern. Überspringen Sie den Autorisierungsschritt bei der Registrierung nicht.
  2. Legen Sie in Ihrer Agentenkarte url auf die URL Ihres Apigee API-Proxys fest.
  3. Validieren Sie im API-Proxy das Endnutzer-Token im Authorization-Header, bevor Sie die Anfrage an Ihren Agent weiterleiten. Wählen Sie die Apigee-Richtlinie basierend auf dem Tokenformat aus, das Ihr OAuth 2.0-Anbieter ausgibt:
    • Drittanbieter-OAuth 2.0-Anbieter, die signierte JWT-Zugriffstokens ausstellen: Verwenden Sie die VerifyJWT-Richtlinie, um die Tokensignatur mit dem öffentlichen JSON Web Key Set (JWKS)-URI Ihres Anbieters zu vergleichen und die Ansprüche des Ausstellers (iss) und der Zielgruppe (aud) zu validieren.
    • Google OAuth 2.0 (accounts.google.com): Google OAuth 2.0-Zugriffstokens (ya29...) sind intransparente Tokens und keine signierten JWTs. Verwenden Sie eine ServiceCallout-Richtlinie, um https://oauth2.googleapis.com/tokeninfo aufzurufen und die Felder „audience“ (aud) und scope zu prüfen.

A2A-Agenten bei Gemini Enterprise registrieren

Sie können Ihren A2A-Agenten bei Gemini Enterprise entweder über dieGoogle Cloud Console oder die REST API registrieren. Dadurch wird der Agent für Nutzer in einer Gemini Enterprise-App verfügbar.

Console

So registrieren Sie einen A2A-Agenten über die Google Cloud Console:

  1. Rufen Sie in der Google Cloud Console die Seite Gemini Enterprise auf.

    Gemini Enterprise

  2. Klicken Sie auf den Namen der App, für die Sie den Agenten registrieren möchten.

  3. Klicken Sie auf Agenten > Agenten hinzufügen.

  4. Klicken Sie im Bereich Agenttyp auswählen für Benutzerdefinierter Agent über A2A auf Hinzufügen.

  5. Geben Sie im Feld JSON-Agentenkarte die Details der Agentenkarte im JSON-Format ein. Eine vollständige Liste der verfügbaren Felder finden Sie in der offiziellen Spezifikation des Agent2Agent-Protokolls (A2A). Im folgenden Beispiel werden nur die erforderlichen Felder verwendet.

    Beispiel:

    {
      "protocolVersion": "0.3",
      "name": "Hello World Agent",
      "description": "Just a hello world agent",
      "url": "https://example.com/myagent",
      "iconUrl": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOTkiIGhlaWdodD0iOTkiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyYXk7IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0zMyAwaDMzdjMzSDMzeiBNMCAzM2gzM3YzM0gweiBNNjYgMzNoMzN2MzNINjZ6IE0zMyA2NmgzM3YzM0gzM3oiIGZpbGw9ImJsdWUiLz48L3N2Zz4=",
      "version": "1.0.0",
      "capabilities": {
      },
      "skills": [
        {
          "id": "data-analysis",
          "name": "Data Analysis",
          "description": "Data analysis",
          "tags": []
        }
      ],
      "defaultInputModes": [
        "text/plain"
      ],
      "defaultOutputModes": [
        "text/plain"
      ]
    }
    
  6. Klicken Sie auf Agentendetails ansehen > Weiter.

  7. Schließen Sie die Einrichtung mit einer der folgenden Methoden ab:

    • Wenn der Agent in Ihrem Namen auf Google Cloud -Ressourcen zugreifen soll oder wenn Ihr Agent-Endpunkt einen Authorization-Header erfordert (z. B. beim Sichern eines Apigee API-Proxys), gehen Sie so vor:

      1. Geben Sie die Client-ID, den Clientschlüssel, den Autorisierungs-URI und den Token-URI ein, die Sie im Abschnitt OAuth 2.0 für die Endnutzerautorisierung konfigurieren (optional) generiert haben.

      2. Geben Sie die Bereiche ein.

      3. Klicken Sie auf Beenden.

    • Wenn Sie nicht möchten, dass der Agent in Ihrem Namen auf Ressourcen von Google Cloud zugreift, und Ihr Agent Endpoint keinen Authorization-Header erfordert, klicken Sie auf Überspringen und beenden.

REST

So registrieren Sie einen A2A-Agenten über die REST API:

Autorisierungsressource zu Gemini Enterprise hinzufügen (optional)

Wenn der KI-Agent im Namen eines Nutzers auf Ressourcen von Google Cloud zugreifen muss, führen Sie den folgenden Befehl aus, um die Autorisierungsressource, die Sie im Abschnitt Autorisierungsdetails konfigurieren (optional) erstellt haben, bei Gemini Enterprise zu registrieren:

curl -X POST \
   -H "Authorization: Bearer $(gcloud auth print-access-token)" \
   -H "Content-Type: application/json" \
   -H "X-Goog-User-Project: PROJECT_ID" \
   "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_NUMBER/locations/LOCATION/authorizations?authorizationId=AUTH_ID" \
   -d '{
      "name": "projects/PROJECT_NUMBER/locations/LOCATION/authorizations/AUTH_ID",
      "serverSideOauth2": {
         "clientId": "OAUTH_CLIENT_ID",
         "clientSecret": "OAUTH_CLIENT_SECRET",
         "authorizationUri": "OAUTH_AUTH_URI",
         "tokenUri": "OAUTH_TOKEN_URI"
      }
   }'

Ersetzen Sie Folgendes:

  • PROJECT_ID: die Projekt-ID.
  • PROJECT_NUMBER: Die Nummer Ihres Projekts von Google Cloud .
  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
  • us für die Multiregion „USA“
  • eu für die Multiregion „EU“
  • global für den Standort „Global“
Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • LOCATION: die Multiregion Ihres Datenspeichers: global, us oder eu
  • AUTH_ID: die ID der Autorisierungsressource. Dies ist eine beliebige alphanumerische ID, die Sie definieren. Sie müssen später auf diese ID verweisen, wenn Sie einen Agenten registrieren, der OAuth-Unterstützung erfordert.
  • OAUTH_CLIENT_ID: die OAuth 2.0-Client-ID, die Sie beim Erstellen der OAuth-Anmeldedaten erhalten haben.
  • OAUTH_CLIENT_SECRET: der OAuth 2.0-Clientschlüssel, den Sie beim Erstellen der OAuth-Anmeldedaten erhalten haben.
  • OAUTH_AUTH_URI: der Autorisierungs-URI. Wenn Sie Ihre App autorisieren möchten, erstellen Sie einen bestimmten Autorisierungs-URI mit den Details aus der JSON-Datei mit den OAuth-Anmeldedaten. Kopieren Sie die folgende Vorlage und ersetzen Sie die Platzhalter durch Ihre spezifischen Werte.

    https://accounts.google.com/o/oauth2/v2/auth?client_id=OAUTH_CLIENT_ID&redirect_uri=https%3A%2F%2Fvertexaisearch.cloud.google.com%2Fstatic%2Foauth%2Foauth.html&scope=YOUR_CUSTOM_SCOPES&include_granted_scopes=true&response_type=code&access_type=offline&prompt=consent
    
    • YOUR_CUSTOM_SCOPES: Sie können die erforderlichen Bereiche hinzufügen. Mit dem folgenden OAuth-Bereichsstring wird beispielsweise Lesezugriff auf Google Drive und Google Docs angefordert.

      scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive.readonly%20https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdocuments.readonly
      
  • OAUTH_TOKEN_URI: der Token-URI, den Sie beim Erstellen der OAuth-Anmeldedaten erhalten haben.

  • Weitere Informationen zu Autorisierungs-URI-Parametern.

    Prüfen Sie die folgenden Felder, um sicherzustellen, dass der URI ordnungsgemäß funktioniert:

    Parameter Wert oder Aktion
    client_id Ersetzen Sie durch den client_id, der in der heruntergeladenen JSON-Datei enthalten ist.
    redirect_uri Nicht ändern. Muss https://vertexaisearch.cloud.google.com/static/oauth/oauth.html lauten.
    scope

    Listen Sie die Google API-Bereiche auf, auf die Ihre App im Namen des Nutzers zugreifen muss. Wenn Sie beispielsweise Zugriff auf BigQuery gewähren möchten, verwenden Sie den Bereich https://www.googleapis.com/auth/bigquery. Für den Lesezugriff auf Google Docs verwenden Sie https://www.googleapis.com/auth/documents.readonly.

    Wenn Sie mehrere Bereiche verwenden, trennen Sie sie durch ein Leerzeichen, das in der URL zu %20 wird.

    include_granted_scopes Muss true lauten.
    response_type Sie müssen code sein, um einen Autorisierungscode zu erhalten.
    access_type Legen Sie offline fest, damit Sie ein Aktualisierungstoken erhalten.
    prompt Legen Sie consent fest, damit dem Nutzer immer ein Zustimmungsbildschirm angezeigt wird.

    A2A-Agenten registrieren

    Verwenden Sie zum Erstellen und Registrieren eines Agenten mit Gemini Enterprise die Methode agents.create. Im folgenden Befehl werden nur die erforderlichen Felder verwendet. Eine vollständige Liste der verfügbaren Felder finden Sie in der offiziellen Spezifikation des Agent2Agent-Protokolls (A2A).

    Führen Sie diesen Befehl aus, um Ihren A2A-Agenten bei Gemini Enterprise zu registrieren:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents \
    -d '
    {
      "name": "AGENT_NAME",
      "displayName": "AGENT_DISPLAY_NAME",
      "description": "AGENT_DESCRIPTION",
      "a2aAgentDefinition": {
        "jsonAgentCard": "{\"protocolVersion\":\"PROTOCOLVERSION\",\"name\":\"AGENT_NAME\",\"description\":\"AGENT_DESCRIPTION\",\"url\":\"AGENT_URL\",\"version\":\"AGENT_VERSION\",\"defaultInputModes\":[\"INPUT_MODE\"],\"defaultOutputModes\":[\"OUTPUT_MODE\"],\"capabilities\":{ CAPABILITIES },\"skills\":[SKILLS]}"
      },
      "authorizationConfig": {
        "agentAuthorization": "projects/PROJECT_ID/locations/LOCATION/authorizations/AUTH_ID"
      }
    }
    '
    

    Ersetzen Sie Folgendes:

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • LOCATION: Der multiregionale Standort Ihres Datenspeichers: global, us oder eu.
  • PROJECT_ID: Die Projekt-ID.
  • APP_ID: Die ID der App, mit der Sie den Agenten registrieren möchten.
  • AGENT_NAME: die eindeutige Kennung für den Agenten.
  • AGENT_DISPLAY_NAME: Der Name des Agenten, der in der Web-App angezeigt wird.
  • AGENT_DESCRIPTION: Die Beschreibung der Funktionen des Agenten.
  • PROTOCOLVERSION: Die Version des A2A-Protokolls, die der Agent unterstützt. Weitere Informationen zu den unterstützten Versionen finden Sie in den A2A-Versionshinweisen.
  • AGENT_URL: Die Endpunkt-URL des Agenten.
  • AGENT_VERSION: die Version des Agenten.
  • INPUT_MODE: der Standard-Eingabemedientyp. Zum Beispiel application/json oder text/plain.
  • OUTPUT_MODE: der Standard-Ausgabemedientyp. Zum Beispiel text/plain" oder image/png.
  • CAPABILITIES: ein JSON-Objekt mit unterstützten A2A-Funktionen. Beispiel: \"streaming\": true oder \"pushNotifications\": false
  • SKILLS: eine Liste der AgentSkill-Objekte, die der Agent anbietet.
  • authorizationConfig: Wenn Sie die Autorisierungsdetails erhalten haben und der Agent im Namen des Nutzers auf Google Cloud -Ressourcen zugreifen soll, fügen Sie das Feld authorization_config in Ihre JSON-Ressource ein.
  • Mit einer App verbundene Agenten auflisten

    Im folgenden Codebeispiel wird gezeigt, wie Sie die Details aller mit Ihrer App verbundenen Agenten abrufen können:

    REST

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents"
    

    Ersetzen Sie die Variablen durch folgende Werte:

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die ID Ihres Google Cloud -Projekts.
  • LOCATION: Der multiregionale Standort Ihrer Anwendung: global, us oder eu.
  • APP_ID: die ID Ihrer Gemini Enterprise-App.
  • Wenn Ihr Agent nicht von Google vorab erstellt wurde, enthält die Antwort in den ersten Zeilen das Feld name. Der Wert dieses Felds enthält die Agenten-ID am Ende des Pfads. In der folgenden Antwort lautet die Agenten-ID beispielsweise 12345678901234567890:

    {
    "name": "projects/123456/locations/global/collections/default_collection/engines/my-app/assistants/default_assistant/agents/12345678901234567890",
    ...
    }
    

    A2A-Agentendetails ansehen

    Im folgenden Codebeispiel wird gezeigt, wie Sie die Details eines Agenten abrufen können, der bei Gemini Enterprise registriert wurde:

    REST

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents/AGENT_ID"
    

    Ersetzen Sie die Variablen durch folgende Werte:

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die ID Ihres Google Cloud -Projekts.
  • LOCATION: Der multiregionale Standort Ihrer Anwendung: global, us oder eu.
  • APP_ID: die ID Ihrer Gemini Enterprise-App.
  • AGENT_ID: Die ID des Agenten. Sie können die Agenten-ID abrufen, indem Sie die mit Ihrer App verbundenen Agenten auflisten.
  • A2A-Agenten aktualisieren

    Sie können die Details eines vorhandenen A2A-Agenten, der bei Gemini Enterprise registriert ist, entweder über die Google Cloud Console oder die REST API ändern.

    Console

    So aktualisieren Sie einen A2A-Agenten über die Google Cloud Console:

    1. Rufen Sie in der Google Cloud Console die Seite Gemini Enterprise auf.

      Gemini Enterprise

    2. Klicken Sie auf den Namen der App, die den Agenten enthält, den Sie aktualisieren möchten.

    3. Klicken Sie auf Agenten.

    4. Klicken Sie auf den Namen des (benutzerdefinierten) A2A-Agenten, den Sie aktualisieren möchten, und dann auf Bearbeiten.

    5. Aktualisieren Sie im Feld JSON-Agentenkarte die Details der Agentenkarte im JSON-Format. Eine vollständige Liste der verfügbaren Felder finden Sie in der offiziellen Spezifikation des Agent2Agent-Protokolls (A2A). Im folgenden Beispiel werden nur die erforderlichen Felder verwendet.

      Beispiel:

      {
        "protocolVersion": "0.3",
        "name": "Hello World Agent",
        "description": "Just a hello world agent",
        "url": "https://example.com/myagent",
        "iconUrl": "data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iOTkiIGhlaWdodD0iOTkiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOmdyYXk7IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjxwYXRoIGQ9Ik0zMyAwaDMzdjMzSDMzeiBNMCAzM2gzM3YzM0gweiBNNjYgMzNoMzN2MzNINjZ6IE0zMyA2NmgzM3YzM0gzM3oiIGZpbGw9ImJsdWUiLz48L3N2Zz4=",
        "version": "1.1.0",
        "capabilities": {
        },
        "skills": [
          {
            "id": "data-analysis",
            "name": "Data Analysis",
            "description": "Data analysis",
            "tags": []
          }
        ],
        "defaultInputModes": [
          "text/plain"
        ],
        "defaultOutputModes": [
          "text/plain"
        ]
      }
      
    6. Klicken Sie auf Speichern.

    REST

    Verwenden Sie die Methode agents.patch, um die Details eines A2A-Agenten zu aktualisieren, der bei Gemini Enterprise registriert ist. Im folgenden Befehl werden nur die erforderlichen Felder verwendet. Eine vollständige Liste der verfügbaren Felder finden Sie in der offiziellen Spezifikation des Agent2Agent-Protokolls (A2A).

    Führen Sie diesen Befehl aus, um Ihren A2A-Agenten bei Gemini Enterprise zu aktualisieren:

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents/AGENT_ID \
    -d '
    {
      "name": "AGENT_NAME",
      "displayName": "AGENT_DISPLAY_NAME",
      "description": "AGENT_DESCRIPTION",
      "a2aAgentDefinition": {
        "jsonAgentCard": "{\"protocolVersion\":\"PROTOCOLVERSION\",\"name\":\"AGENT_NAME\",\"description\":\"AGENT_DESCRIPTION\",\"url\":\"AGENT_URL\",\"version\":\"AGENT_VERSION\",\"defaultInputModes\":[\"INPUT_MODE\"],\"defaultOutputModes\":[\"OUTPUT_MODE\"],\"capabilities\":{ CAPABILITIES },\"skills\":[SKILLS]}"
      },
      "authorizationConfig": {
        "agentAuthorization": "projects/PROJECT_ID/locations/LOCATION/authorizations/AUTH_ID"
      }
    }
    '
    

    Ersetzen Sie Folgendes:

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • LOCATION: Der multiregionale Standort Ihres Datenspeichers: global, us oder eu.
  • PROJECT_ID: Die Projekt-ID.
  • APP_ID: Die ID der Anwendung, mit der Sie den Agenten registrieren möchten.
  • AGENT_ID: Die ID des Agenten. Sie können die Agenten-ID abrufen, indem Sie die mit Ihrer Anwendung verbundenen Agenten auflisten.
  • AGENT_NAME: Die eindeutige Kennung für den Agenten.
  • AGENT_DISPLAY_NAME: Der Name des Agenten, der in der Web-App angezeigt wird.
  • AGENT_DESCRIPTION: Die Beschreibung der Funktionen des Agenten.
  • PROTOCOLVERSION: Die Version des A2A-Protokolls, die der Agent unterstützt. Weitere Informationen zu den unterstützten Versionen finden Sie in den A2A-Versionshinweisen.
  • AGENT_URL: Die Endpunkt-URL des Agenten.
  • AGENT_VERSION: die Version des Agenten.
  • INPUT_MODE: der Standard-Eingabemedientyp. Zum Beispiel application/json oder text/plain.
  • OUTPUT_MODE: der Standard-Ausgabemedientyp. Zum Beispiel text/plain oder image/png.
  • CAPABILITIES: ein JSON-Objekt mit unterstützten A2A-Funktionen. Beispiel: \"streaming\": true oder \"pushNotifications\": false
  • SKILLS: eine Liste der AgentSkill-Objekte, die der Agent anbietet.
  • authorizationConfig: Wenn Sie die Autorisierungsdetails erhalten haben und der Agent im Namen des Nutzers auf Google Cloud -Ressourcen zugreifen soll, fügen Sie das Feld authorization_config in Ihre JSON-Ressource ein.
  • A2A-Agenten löschen

    Im folgenden Codebeispiel wird gezeigt, wie Sie einen Agenten löschen, der mit Ihrer Anwendung verbunden ist:

    REST

    curl -X DELETE \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID/assistants/default_assistant/agents/AGENT_ID"
    

    Ersetzen Sie die Variablen durch folgende Werte:

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
    • us für die Multiregion „USA“
    • eu für die Multiregion „EU“
    • global für den Standort „Global“
    Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • PROJECT_ID: die ID Ihres Projekts in Google Cloud .
  • LOCATION: Der multiregionale Standort Ihrer Anwendung: global, us oder eu.
  • APP_ID: die ID Ihrer Gemini Enterprise-App.
  • AGENT_ID: Die ID des Agenten. Sie können die Agenten-ID abrufen, indem Sie die mit Ihrer App verbundenen Agenten auflisten.
  • Nächste Schritte

    • Verwenden Sie den Agenten, den Sie bei Gemini Enterprise in der Web-App registriert haben.