KI-Datenagenten prüfen und aufrufen

In diesem Dokument wird beschrieben, wie Sie einen KI-Agenten prüfen und die Kontextdatei des KI-Agenten aktualisieren. Sie können einen KI-Agenten prüfen, um zu testen, ob er SQL-Abfragen aus Fragen in natürlicher Sprache generieren kann. Wenn eine generierte Abfrage nicht korrekt ist, können Sie den Kontext des KI-Agenten aktualisieren.

Weitere Informationen zu KI-Datenagenten finden Sie unter Übersicht über KI-Datenagenten.

Hinweis

Ein KI-Datenagent muss bereits erstellt und der Kontext des KI-Agenten in den KI-Datenagenten hochgeladen worden sein. Weitere Informationen finden Sie unter KI-Datenagenten in Cloud SQL Studio verwalten.

KI-Datenagenten prüfen

So prüfen Sie einen KI-Datenagenten:

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud SQL“ auf.

    Zu Cloud SQL

  2. Wählen Sie eine Instanz aus der Liste aus.

  3. Klicken Sie im Navigationsmenü auf Cloud SQL Studio.

  4. Melden Sie sich mit der IAM-Authentifizierung (Identity and Access Management) bei Studio an.

  5. Klicken Sie im Bereich Explorer neben dem verwendeten KI-Datenagenten auf Aktionen ansehen.

  6. Klicken Sie auf KI-Agenten prüfen.

  7. Klicken Sie im Abfrageeditor auf SQL generieren, um den Bereich Hilfe bei der Programmierung zu öffnen.

  8. Geben Sie im Editor eine Frage in natürlicher Sprache ein, um eine SQL-Abfrage zu generieren, und klicken Sie auf Generieren.

  9. Prüfen Sie, ob die SQL-Abfrage korrekt ist.

Kontext für einen KI-Datenagenten herunterladen und aktualisieren

Wenn Sie mit der generierten SQL-Abfrage für eine Frage in natürlicher Sprache nicht zufrieden sind, laden Sie die vorhandene Kontextdatei des KI-Agenten herunter. Anschließend können Sie die Abfragevorlage prüfen und aktualisieren und die aktualisierte Kontextdatei wieder in den KI-Agenten hochladen.

So laden Sie den Kontext für einen KI-Datenagenten herunter und aktualisieren ihn:

  1. Klicken Sie im Bereich Explorer auf Aktionen ansehen.
  2. Klicken Sie auf Kontextdatei des KI-Agenten herunterladen.
  3. Folgen Sie der Anleitung unter Kontexte mit der Gemini CLI erstellen, um den Kontext mit zusätzlichen Abfragepaaren zu aktualisieren.
  4. Klicken Sie im Bereich Explorer neben dem verwendeten KI-Datenagenten auf Aktionen ansehen.
  5. Klicken Sie auf KI-Agenten bearbeiten.
  6. Klicken Sie im Bereich Kontextdatei des KI-Agenten hochladen auf Durchsuchen und wählen Sie die aktualisierte Kontextdatei des KI-Agenten aus.
  7. Klicken Sie auf Speichern , um den Kontext des KI-Agenten zu aktualisieren.

Wenn Sie mit der Genauigkeit Ihrer Antworten zufrieden sind, können Sie den Endpunkt QueryData verwenden, um Ihre Anwendung mit dem KI-Datenagenten zu verbinden.

Kontext-ID des KI-Agenten finden

Um eine Datenanwendung mit dem KI-Datenagenten zu verbinden, benötigen Sie die Kontext-ID des KI-Agenten.

  1. Rufen Sie in der Google Cloud Console die Seite „Cloud SQL“ auf.

    Zu Cloud SQL

  2. Wählen Sie eine Instanz aus der Liste aus.

  3. Klicken Sie im Navigationsmenü auf Cloud SQL Studio.

  4. Melden Sie sich mit der IAM-Authentifizierung (Identity and Access Management) bei Studio an.

  5. Klicken Sie im Bereich Explorer neben dem verwendeten KI-Datenagenten auf Aktionen ansehen.

  6. Klicken Sie auf KI-Agenten bearbeiten.

  7. Notieren Sie sich die Kontext-ID unter Kontext-ID des KI-Agenten. Das Format der Kontext-ID des KI-Agenten ähnelt projects/data-agents-project/locations/us-east1/contextSets/bdf_pg_all_templates.

KI-Datenagenten mit Anwendung verbinden

Legen Sie die Kontext-ID des KI-Agenten im QueryData-Methodenaufruf fest, um einen erstellten Kontext für Datenbankdatenquellen wie AlloyDB, Spanner, Cloud SQL und Cloud SQL for PostgreSQL bereitzustellen. Weitere Informationen finden Sie unter Kontext für KI-Datenagenten für Datenbankdatenquellen definieren.

Nachdem Sie den KI-Datenagenten geprüft haben, können Sie im QueryData-Aufruf auf die Datenbankdatenquelle verweisen.

Beispiel für eine QueryData-Anfrage mit erstelltem Kontext

Im folgenden Beispiel wird eine QueryData-Anfrage mit der Datenbankdatenquelle cloud_sql_reference gezeigt. Das Feld agent_context_reference.context_set_id wird verwendet, um auf einen vorab erstellten Kontext zu verweisen, der in der Datenbank gespeichert ist.

{
  "parent": "projects/data-agents-project/locations/us-central1",
  "prompt": "How many accounts in the Prague region are eligible for loans? A3 contains the data of region.",
  "context": {
    "datasource_references": [
      {
        "cloud_sql_reference": {
          "database_reference": {
            "engine": "MYSQL"
            "project_id": "data-agents-project",
            "region": "us-central1",
            "instance_id": "data-agents-primary",
            "database_id": "financial"
          },
          "agent_context_reference": {
            "context_set_id": "projects/data-agents-project/locations/us-east1/contextSets/bdf_pg_all_templates"
          }
        }
      }
    ]
  },
  "generation_options": {
    "generate_query_result": true,
    "generate_natural_language_answer": true,
    "generate_disambiguation_question": true,
    "generate_explanation": true
  }
}

Der Anfragetext enthält die folgenden Felder:

  • prompt: Die Frage in natürlicher Sprache vom Endnutzer.
  • context: Enthält Informationen zu den Datenquellen.
    • datasource_references: Gibt den Datenquellentyp an.
      • cloud_sql_reference: Erforderlich beim Abfragen der Datenbank. Dieses Feld ändert sich je nach der Datenbank, die Sie abfragen.
        • database_reference: Gibt Informationen zu Ihrer Datenbankinstanz an.
          • engine: Die Datenbank-Engine. Legen Sie für Cloud SQL-Instanzen MYSQL fest.
          • project_id: Die Projekt-ID der Datenbankinstanz.
          • region: Die Region der Cloud SQL-Instanz.
          • instance_id: Die Instanz-ID der Cloud SQL-Instanz.
          • database_id: Die ID der Datenbank.
        • agent_context_reference: Verweist auf den erstellten Kontext in der Datenbank.
          • context_set_id: Die vollständige Kontext-ID des KI-Agenten des in der Datenbank gespeicherten Kontexts. Beispiel: projects/data-agents-project/locations/us-east1/contextSets/bdf_gsql_gemini_all_templates.
  • generationOptions: Konfiguriert den Typ der zu generierenden Ausgabe.
    • generate_query_result: Auf „true“ setzen, um die Abfrageergebnisse zu generieren und zurückzugeben.
    • generate_natural_language_answer: Optional. Wenn auf „true“ gesetzt, wird eine Antwort in natürlicher Sprache generiert.
    • generate_explanation: Optional. Wenn auf „true“ gesetzt, wird eine Erklärung der SQL-Abfrage generiert.
    • generate_disambiguation_question: Optional. Wenn auf „true“ gesetzt, werden Fragen zur Auflösung von Mehrdeutigkeiten generiert, wenn die Abfrage mehrdeutig ist.

Beispiel für eine QueryData-Antwort

Hier ist ein Beispiel für eine erfolgreiche Antwort von einem QueryData-Aufruf:

{
  "generated_query": "-- Count the number of accounts in Prague that are eligible for loans\nSELECT\n  COUNT(DISTINCT \"loans\".\"account_id\")\nFROM \"loans\"\nJOIN \"district\" -- Join based on district ID\n  ON \"loans\".\"district_id\" = \"district\".\"district_id\"\nWHERE\n  \"district\".\"A3\" = 'Prague'; -- Filter for the Prague region",
  "intent_explanation": "The question asks for the number of accounts eligible for loans in the Prague region. I need to join the `district` table with the `loans` table to filter by region and count the distinct accounts. The `A3` column in the `district` table contains the region information, and I'll filter for 'Prague'. The `loans` table contains information about loans, including the `account_id` and `district_id`. I will join these two tables on their respective district IDs.",
  "query_result": {
    "columns": [
      {
        "name": "count"
      }
    ],
    "rows": [
      {
        "values": [
          {
            "value": "2"
          }
        ]
      }
    ],
    "total_row_count": 1
  },
  "natural_language_answer": "There are 2 accounts in Prague that are eligible for loans."
}

Nächste Schritte