Mengintegrasikan agen data dengan aplikasi

Tutorial ini menjelaskan cara menyiapkan dan menggunakan agen data di Cloud SQL untuk PostgreSQL menggunakan konsol Google Cloud dan mengintegrasikannya dengan aplikasi Anda. Anda akan mempelajari cara membuat file konteks agen, membuat agen data yang menggunakan konteks, menggunakan MCP Toolbox untuk memanggil QueryData API guna membuat kueri SQL untuk pertanyaan bahasa alami, dan akhirnya mengintegrasikannya dengan aplikasi Anda.

Untuk mengetahui informasi selengkapnya, lihat Ringkasan agen data.

Tujuan

  • Buat dan isi tabel.
  • Membangun konteks agen dengan Gemini CLI dan MCP Toolbox.
  • Buat agen data dan upload konteks.
  • Periksa agen dan buat kueri SQL di Studio.
  • Integrasikan agen dengan aplikasi Anda menggunakan alat Gemini Data Analytics QueryData di MCP Toolbox.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih berikut:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.

Pengguna Google Cloud baru mungkin memenuhi syarat untuk mendapatkan uji coba gratis.

Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk informasi selengkapnya, lihat Pembersihan.

Sebelum memulai

Selesaikan prasyarat berikut sebelum membuat agen.

Mengaktifkan layanan yang diperlukan

Aktifkan layanan berikut untuk project Anda:

Siapkan instance Cloud SQL

Pastikan Anda memiliki akses ke instance Cloud SQL yang ada atau buat instance baru. Untuk mengetahui informasi selengkapnya, lihat Membuat instance untuk Cloud SQL.

Peran dan izin yang diperlukan

Memberikan izin executesql ke instance Cloud SQL

Untuk memberikan izin executesql ke instance Cloud SQL dan mengaktifkan Cloud SQL Data API, jalankan perintah berikut:
gcloud components update
gcloud beta sql instances patch INSTANCE_ID --data-api-access=ALLOW_DATA_API
Ganti INSTANCE_ID dengan ID instance Cloud SQL Anda.

Untuk melakukan langkah-langkah dalam tutorial ini, login ke Google Cloud, lalu autentikasi ke database menggunakan autentikasi IAM.

Buat skema dan tabel flights dan airports

Di bagian ini, Anda akan membuat database flights dan airports untuk tutorial ini.

  1. Di konsol Google Cloud , buka halaman Cloud SQL.

    Buka Cloud SQL

  2. Pilih instance dari daftar.

  3. Di menu navigasi, klik Cloud SQL Studio.

  4. Login ke Studio menggunakan autentikasi Identity and Access Management (IAM).

  5. Klik Autentikasikan. Panel Explorer menampilkan daftar objek di database Anda.

  6. Klik New SQL editor tab atau New tab untuk membuka tab baru.

  7. Buat tabel dan skema airports:

    CREATE TABLE IF NOT EXISTS airports (
      id INT PRIMARY KEY,
      iata TEXT,
      name TEXT,
      city TEXT,
      country TEXT
      );
    
  8. Buat tabel dan skema flights:

    CREATE TABLE IF NOT EXISTS flights (
      id INT PRIMARY KEY,
      airline VARCHAR(10),
      flight_number INT,
      departure_airport VARCHAR(5),
      arrival_airport VARCHAR(5),
      departure_time TIMESTAMP,
      arrival_time TIMESTAMP,
      departure_gate VARCHAR(10),
      arrival_gate VARCHAR(10)
    );
    

Isi tabel flights dan airport

Di bagian ini, Anda akan mengisi tabel flights dan airports menggunakan skrip SQL yang disediakan.

  1. Isi tabel airports.

  2. Isi tabel flights.

  3. Jalankan kueri berikut untuk memverifikasi bahwa tabel telah diisi:

    SELECT * FROM "public"."flights" LIMIT 10;
    SELECT * FROM "public"."airports" LIMIT 10;
    

Membuat agen data

Di bagian ini, Anda akan membuat agen data bernama flights-assistant. Agen ini tidak menyertakan konteks agen yang diupload ke dalamnya.

  1. Di panel Explorer, di samping Agen Data, klik Lihat tindakan.
  2. Klik Buat agen.
  3. Di Beri nama agen Anda, masukkan flights-assistant.
  4. Klik Buat.

Memeriksa agen di Studio

Di bagian ini, Anda mengajukan pertanyaan bahasa alami kepada agen flights-assistant dan agen tersebut akan membuat kueri SQL. Karena tidak memiliki konteks, bahkan setelah mengajukan pertanyaan dengan konteks seperti nighttime traffic, agen akan membuat kueri yang kurang optimal.

  1. Di panel Explorer, di samping agen data Anda, klik View actions.
  2. Klik Periksa agen.
  3. Di editor kueri, klik Generate SQL using agent: flights-assistant.
  4. Masukkan pertanyaan bahasa alami berikut untuk membuat kueri SQL, lalu klik Generate.

    Find flights from SFO to JFK.
    

    Tinjau kueri SQL. Perhatikan bahwa agen membuat SQL yang benar untuk pertanyaan yang tidak ambigu ini.

      SELECT
        *
      FROM
        "flights"
      WHERE
        "departure_airport" = 'SFO' AND "arrival_airport" = 'JFK';
    
  5. Di jendela Generate SQL using agent: flights-assistant, klik Edit.

  6. Masukkan pertanyaan bahasa alami berikut untuk membuat kueri SQL, lalu klik Perbarui.

    Tell me flights that can help me beat nighttime traffic if traveling from New York
    

    Database gagal memahami istilah traffic nighttime. Hal ini dapat mencegahnya membuat kueri SQL atau menyebabkannya membuat kueri yang mengabaikan istilah tersebut, seperti yang ditunjukkan oleh kueri berikut.

    -- The database schema does not contain information about traffic.
    -- Returning all flights departing from New York airports.
    SELECT
      f.airline,
      f.flight_number,
      a.name AS departure_airport_name,
      f.departure_time,
      b.name AS arrival_airport_name,
      f.arrival_time
    FROM
      flights AS f
    JOIN
      airports AS a
      ON f.departure_airport = a.iata
    JOIN
      airports AS b
      ON f.arrival_airport = b.iata
    WHERE
      a.city = 'New York'
    ORDER BY
      f.departure_time;
    

Membuat konteks untuk agen

Di bagian ini, Anda akan membuat file konteks yang membantu meningkatkan kemampuan kueri agen. Untuk mengatasi masalah dari bagian sebelumnya saat agen tidak mengenali istilah nighttime traffic, tentukan istilah dalam konteks agen sebagai traffic yang terjadi antara 5:00 PM dan 7:00 PM.

Untuk membuat konteks agen, lakukan langkah-langkah berikut:

  1. Di direktori lokal Anda, instal Gemini CLI. Untuk mengetahui informasi selengkapnya, lihat Panduan memulai Gemini CLI.
  2. Instal gcloud CLI dan siapkan Kredensial Default Aplikasi (ADC).
  3. Instal ekstensi MCP Toolbox Gemini CLI, yang terhubung ke database.

    gemini extensions install https://github.com/gemini-cli-extensions/mcp-toolbox
  4. Buat file konfigurasi tools.yaml di direktori yang sama tempat Anda menginstal MCP toolbox untuk mengonfigurasi koneksi database:

    sources:
      flight-sql-source:
        kind: cloud-sql-postgres
        project: PROJECT_ID
        region: REGION_ID
        instance: INSTANCE_ID
        database: DATABASE_ID
        user: USER_NAME
        password: PASSWORD
    
    tools:
      # (Optional) Fetches database schemas for context generation in the bulk generation (/generate_bulk_templates) phase.
      list_flight_schemas_tool:
        kind: postgres-list-tables
        source: flight-sql-source
        description: Use this tool to list all tables and their schemas in the flight database.
      # (Optional) Executes generated SQL for validation in the bulk generation (/generate_bulk_templates) phase.
      execute_sql_tool:
        kind: postgres-execute-sql
        source: flight-sql-source
        description: Use this tool to execute SQL against the flight database.
    

    Ganti kode berikut:

    • PROJECT_ID: Project ID Google Cloud Anda.
    • REGION_ID: Region instance Cloud SQL Anda (misalnya, us-central1).
    • INSTANCE_ID: ID instance Cloud SQL Anda.
    • DATABASE_ID: Nama database yang akan dihubungkan.
    • USER_NAME: Pengguna database. Tetapkan ini sebagai variabel lingkungan, bukan nilai literal. Untuk mengetahui informasi selengkapnya tentang cara menetapkan nilai ini, lihat Sumber dalam toolbox MCP.
    • PASSWORD: Sandi untuk pengguna database. Tetapkan ini sebagai variabel lingkungan, bukan nilai literal. Untuk mengetahui informasi selengkapnya tentang cara menetapkan nilai ini, lihat Sumber dalam toolbox MCP.
  5. Instal penginstal paket Python uv dengan mengikuti panduan penginstalan resmi dan verifikasi keberhasilan penginstalan dengan menjalankan:

    uv --version
  6. Instal Server MCP Pengayaan Konteks DB, yang mencakup alur kerja untuk pembuatan konteks.

    gemini extensions install https://github.com/GoogleCloudPlatform/db-context-enrichment
  7. Ekspor kunci Gemini API sebagai variabel lingkungan. Untuk mengetahui informasi selengkapnya tentang cara menemukan kunci API, lihat Menggunakan kunci API Gemini.

    export GEMINI_API_KEY="YOUR_API_KEY"

    Ganti YOUR_API_KEY dengan kunci Gemini API Anda.

  8. Di direktori yang sama tempat Anda membuat file tools.yaml, mulai Gemini:

    gemini
  9. Selesaikan Penyiapan Autentikasi Gemini CLI.

  10. Pastikan toolbox MCP dan ekstensi pengayaan database terhubung dan siap digunakan.

    /mcp list
  11. Jalankan perintah /generate_targeted_templates dan ikuti alur kerja:

    /generate_targeted_templates
  12. Berikan kueri bahasa alami yang ingin Anda tambahkan ke template kueri di terminal.

    Tell me flights that can help me beat nighttime traffic if traveling from New York
  13. Berikan kueri SQL terkait yang ingin Anda tambahkan ke template kueri. Template kueri ini mendefinisikan istilah nighttime yang terjadi antara 5:00 PM dan 7:00 PM.

    SELECT
      f.airline,
      f.flight_number,
      a.name AS airport_name,
      f.departure_time
    FROM
      flights f
    JOIN
      airports a
      ON f.departure_airport = a.iata
    WHERE
      a.city = 'New York'
      AND (
        EXTRACT(HOUR FROM f.departure_time) < 17
        OR EXTRACT(HOUR FROM f.departure_time) >= 19
      )
    ORDER BY
      f.departure_time;
    
  14. Tekan Enter. Gemini mengonversi input Anda ke dalam format tertentu yang meningkatkan performa agen di berbagai kueri pengguna. Untuk mengetahui informasi selengkapnya, lihat Konteks agen.

    Secara opsional, jalankan alur kerja /generate_bulk_templates agar Gemini CLI membuat lebih banyak konteks dengan memindai skema database Anda dan menyarankan konteks terkait. Pastikan Anda menambahkan list_flight_schemas_tool dan execute_sql_tool ke konfigurasi tools.yaml yang Anda buat pada langkah 4.

  15. Tinjau template kueri yang dihasilkan. Anda dapat menyimpan template kueri sebagai file konteks agen baru atau menambahkannya ke file konteks agen yang ada.

  16. Pilih opsi untuk membuat file konteks agen baru. Gemini membuat nama file INSTANCE_ID_DATABASE_ID_context_set_TIMESTAMP.json di direktori yang sama, dengan konten berikut:

    {
      "templates": [
        {
          "nl_query": "Tell me flights that can help me beat nighttime traffic if traveling from New York",
          "sql": "SELECT f.airline, f.flight_number, a.name AS airport_name, f.departure_time FROM flights f JOIN airports a ON f.departure_airport = a.iata WHERE a.city = 'New York' AND (EXTRACT(HOUR FROM f.departure_time) < 17 OR EXTRACT(HOUR FROM f.departure_time) >= 19) ORDER BY f.departure_time;",
          "intent": "Tell me flights that can help me beat nighttime traffic if traveling from New York",
          "manifest": "Tell me flights that can help me beat nighttime traffic if traveling from a given city",
          "parameterized": {
            "parameterized_sql": "SELECT f.airline, f.flight_number, a.name AS airport_name, f.departure_time FROM flights f JOIN airports a ON f.departure_airport = a.iata WHERE a.city = ? AND (EXTRACT(HOUR FROM f.departure_time) < 17 OR EXTRACT(HOUR FROM f.departure_time) >= 19) ORDER BY f.departure_time;",
            "parameterized_intent": "Tell me flights that can help me beat nighttime traffic if traveling from ?"
          }
        }
      ]
    }
    

Mengupload konteks ke agen

Di bagian ini, Anda mengupload file konteks agen ke agen data, sehingga meningkatkan kemampuan pembuatan SQL agen di database Anda.

Untuk mengupload konteks, lakukan langkah-langkah berikut:

  1. Di konsol Google Cloud , buka halaman Cloud SQL.

    Buka Cloud SQL

  2. Pilih instance dari daftar.

  3. Di menu navigasi, klik Cloud SQL Studio.

  4. Login ke Studio menggunakan autentikasi Identity and Access Management (IAM).

  5. Di panel Explorer, di samping Agen Data, klik Lihat tindakan.

  6. Klik Edit agen.

  7. Opsional: Edit Deskripsi agen.

  8. Klik Browse di bagian Upload file konteks agen, lalu pilih file konteks agen yang dibuat sebelumnya.

  9. Klik Simpan.

Membuat kueri SQL menggunakan konteks agen

Di bagian ini, Anda akan menggunakan file konteks agen yang diupload untuk mengajukan pertanyaan dalam bahasa alami. Dengan demikian, Anda dapat memverifikasi bahwa agen memahami dan menerapkan definisi dengan benar untuk istilah seperti nighttime traffic dan frasa terkait lainnya.

Untuk membuat kueri SQL, lakukan langkah-langkah berikut:

  1. Di panel Explorer, di samping agen data Anda, klik View actions.
  2. Klik Periksa agen.
  3. Di editor kueri, klik Generate SQL using agent: flights-assistant.
  4. Masukkan pertanyaan bahasa alami berikut untuk membuat kueri SQL, lalu klik Generate.

    Tell me flights that can help me beat nighttime traffic if traveling from New York

    Kueri SQL yang dihasilkan akan terlihat mirip dengan berikut ini:

    SELECT
      f.airline,
      f.flight_number,
      a.name AS airport_name,
      f.departure_time
    FROM
      flights f
    JOIN
      airports a ON f.departure_airport = a.iata
    WHERE
      a.city = 'New York'
      AND (
        EXTRACT(HOUR FROM f.departure_time) < 17
        OR EXTRACT(HOUR FROM f.departure_time) >= 19
      )
    ORDER BY
      f.departure_time;
    

    Ini adalah pertanyaan yang sama yang Anda tambahkan ke konteks agen data. Perhatikan bahwa agen kini dapat menafsirkan istilah nighttime traffic secara akurat.

    Meskipun konteks berasal dari satu pertanyaan tertentu, agen menggunakannya untuk meningkatkan pembuatan SQL untuk berbagai pertanyaan serupa.

  5. Di jendela Generate SQL using agent: flights-assistant, klik Edit.

  6. Masukkan pertanyaan serupa berikut untuk membuat kueri SQL, lalu klik Perbarui.

    What are the flights that can help me avoid evening traffic if departing from Boston

    Karena pertanyaan tersebut mengganti istilah nighttime traffic dengan istilah serupa, evening traffic, agen memberikan jawaban yang konsisten untuk pertanyaan ini dengan menerapkan interpretasi yang sama.

    Kueri SQL yang dihasilkan akan terlihat mirip dengan berikut ini:

    -- What are the flights that can help me avoid evening traffic if departing from Boston
    SELECT
      f.airline,
      f.flight_number,
      a.name AS airport_name,
      f.departure_time
    FROM
      flights f
    JOIN
      airports a
    ON
      f.departure_airport = a.iata
    WHERE
      a.city = 'Boston'
      AND (
        EXTRACT(HOUR FROM f.departure_time) < 17
        OR EXTRACT(HOUR FROM f.departure_time) >= 19
      )
    ORDER BY
      f.departure_time;
    

Mengintegrasikan agen dengan aplikasi Anda

Di bagian ini, Anda akan membuat agen data untuk aplikasi pencarian penerbangan. Agen data ini menyediakan antarmuka percakapan ke tabel flights dan airports yang Anda buat sebelumnya. Dokumen ini juga menjelaskan cara membuat dan mengintegrasikan agen ini ke dalam aplikasi Anda menggunakan Agent Development Kit (ADK), alat Gemini Data Analytics QueryData MCP, dan konteks agen untuk meningkatkan kualitas respons.

  1. Download MCP Toolbox versi 0.24.0 atau yang lebih baru. Toolbox MCP mengekspos agen data sebagai alat yang dapat digunakan aplikasi untuk terhubung. Toolbox MCP berbeda dengan ekstensi Gemini CLI Toolbox MCP yang Anda instal sebelumnya, yang menghasilkan konteks.

  2. Di terminal, tetapkan project yang Anda gunakan.

    gcloud config set project [PROJECT_ID]
  3. Siapkan Kredensial Default Aplikasi (ADC).

    gcloud auth application-default login
  4. Temukan ID konteks agen. Untuk mengetahui informasi selengkapnya tentang cara menemukan ID set konteks, lihat Menemukan ID konteks agen.

  5. Buat konfigurasi tools.yaml untuk terhubung ke agen data menggunakan toolbox MCP. Untuk mengetahui informasi selengkapnya, lihat Sumber Analisis Data Gemini dan Alat QueryData Analisis Data Gemini.

    sources:
      gda-api-source:
        kind: cloud-gemini-data-analytics
        projectId: "PROJECT_ID"
    
    tools:
      cloud_gda_query_tool:
        kind: cloud-gemini-data-analytics-query
        source: gda-api-source
        description: Use this tool to send natural language queries to the Gemini Data Analytics API and receive SQL, natural language answers, and explanations.
        location: "REGION_ID"
        context:
          datasourceReferences:
            cloudSqlReference:
              databaseReference:
                engine: "POSTGRESQL"
                projectId: "PROJECT_ID"
                region: "REGION_ID"
                instanceId: "INSTANCE_ID"
                databaseId: "DATABASE_ID"
              agentContextReference:
                contextSetId: "DATA_AGENT_CONTEXT_SET_ID"
        generationOptions:
          generateQueryResult: true
          generateNaturalLanguageAnswer: true
          generateExplanation: true
          generateDisambiguationQuestion: true
    

    Ganti kode berikut:

    • PROJECT_ID: Project ID Google Cloud Anda.
    • REGION_ID: Region instance Cloud SQL Anda (misalnya, us-central1).
    • INSTANCE_ID: ID instance Cloud SQL Anda.
    • DATABASE_ID: Nama database yang akan dihubungkan.
    • DATA_AGENT_CONTEXT_SET_ID: ID set konteks agen data.
  6. Jalankan server MCP Toolbox dengan file tools.yaml.

    ./toolbox --tools-file "tools.yaml"
  7. Buat aplikasi ADK yang memanggil alat Gemini Data Analytics QueryData menggunakan Python SDK MCP Toolbox. Untuk mengetahui informasi selengkapnya tentang cara menggunakan Python SDK MCP Toolbox, lihat panduan memulai Toolbox dan untuk Python ADK, lihat panduan memulai ADK.

    1. Buat direktori untuk menyimpan aplikasi, misalnya flight-assistant-app.
    2. Ubah direktori ke direktori flight-assistant-app.

      mkdir flight-assistant-app
      cd flight-assistant-app
    3. Jalankan perintah berikut di direktori flight-assistant-app untuk membuat lingkungan virtual dan menginstal komponen yang diperlukan.

      python3 -m venv .venv
      source .venv/bin/activate
      pip install toolbox-core
      pip install google-genai
      pip install google-adk
    4. Siapkan agen ADK.

      1. Buat agen ADK.

        adk create my_agent
      2. Pilih model gemini-2.5-flash.

      3. Pilih Google AI, lalu masukkan kunci Gemini API Anda. Untuk mengetahui informasi selengkapnya tentang cara menemukan kunci API Anda, lihat Menggunakan kunci API Gemini.

    5. Ganti konten file agent.py dengan kode aplikasi contoh Flight Data Assistant berikut.

      from typing import cast
      
      from google.adk.agents.llm_agent import Agent
      from google.adk.agents.llm_agent import ToolUnion
      
      from toolbox_core import ToolboxSyncClient
      
      TOOLBOX_URL = "http://127.0.0.1:5000"
      
      INSTRUCTION = """
      # ROLE
      You are a friendly and factual flight data assistant. Your goal is to help users find the best flights for their needs by providing accurate information with a helpful, professional tone.
      - use the Query Data Tool to answer the user's question, if the tool fails to generate a valid query, ask the user to clarify their question.
      
      # OPERATIONAL CONSTRAINTS
      - TOOL LIMITATION: You only have access to the Query Data Tool. Do not claim to have capabilities beyond what this tool provides.
      - TRANSPARENCY POLICY: Maintain a seamless user experience. Never mention that you are using a tool, querying a database, or generating SQL. Frame all responses as your own direct assistance.
      - SCOPE MANAGEMENT: If a user asks for something beyond your capabilities, politely state that you cannot perform that specific task. Guide the user towards what you can help with.
      
      # COMMUNICATION STYLE
      - Be concise and scannable when listing answers.
      - Maintain a helpful, professional persona.
      
      =====
      
      # QUERY DATA TOOL
      
      Inputs:
      1. query: A natural language formulation of a database query.
      
      Outputs: (all optional)
      1. disambiguation_question: Clarification questions or comments where the tool needs the users' input.
      2. generated_query: The generated query for the user query.
      3. intent_explanation: An explanation for why the tool produced `generated_query`.
      4. query_result: The result of executing `generated_query`.
      5. natural_language_answer: The natural language answer that summarizes the `query` and `query_result`.
      
      Usage guidance:
      1. If `disambiguation_question` is produced, then solicit the needed inputs from the user and try the tool with a new `query` that has the needed clarification.
      2. If `natural_language_answer` is produced, use `intent_explanation` and `generated_query` to see if you need to clarify any assumptions for the user.
      3. If the tool output indicates failure or empty results, explain that clearly using the provided reasoning.
      """
      
      client = ToolboxSyncClient(TOOLBOX_URL)
      
      mcp_tool = client.load_tool("cloud_gda_query_tool")
      
      root_agent = Agent(
          model="gemini-2.5-flash",
          name="root_agent",
          instruction=INSTRUCTION,
          tools=cast(list[ToolUnion], [mcp_tool]),
      )
      
  8. Jalankan perintah berikut di direktori flight-assistant-app untuk memulai aplikasi dan mengakses server web ADK di http://127.0.0.1:8000.

    adk web --port 8000
  9. Masukkan teks apa pun, seperti hello, untuk mulai berinteraksi dengan agen.

    Agen ADK menjawab pertanyaan umum dan memanggil alat MCP yang diperlukan.

  10. Masukkan pertanyaan terkait penerbangan berikut.

    How many flights depart from the west side?
    

    Alat MCP dipanggil untuk menjawab pertanyaan ini. Namun, karena istilah the west ambigu dan tidak menentukan bandara mana pun, alat MCP akan menampilkan pertanyaan disambiguasi yang digunakan agen untuk membuat respons.

    I cannot determine how many flights depart from the 'west side' as the database does not contain information about which airports are considered to be on the 'west side'. However, I can help you with questions like:
    
    1. How many flights depart from a specific airport?
    
    2. What are the departure airports for all flights?
    
    3. How many flights depart from each airport? Would you like to rephrase your question based on these options?
    
  11. Masukkan pertanyaan yang mirip dengan pertanyaan dalam template kueri yang dibuat untuk agen.

    Help me find flights from San Francisco that avoid the evening rush hour.
    

    Berdasarkan konteks agen yang ditambahkan sebelumnya, alat MCP memahami bahwa evening traffic terjadi antara pukul 17.00 dan 19.00. Alat MCP menampilkan data terkait yang akan digunakan agen dalam menyusun responsnya.

    Here are the flights departing from San Francisco that avoid the evening rush hour (defined as 5 PM to 7 PM):
    
    * UA 1532 departing at 05:50:00
    * UA 1158 departing at 05:57:00
    * CY 922 departing at 06:38:00
    * OO 5441 departing at 07:08:00
    * UA 616 departing at 07:14:00
    * AA 24 departing at 07:14:00
    * B6 434 departing at 08:00:00
    * AA 242 departing at 08:18:00
    * UA 1739 departing at 08:22:00
    * OO 6336 departing at 08:32:00
    * US 1784 departing at 08:47:00
    * DL 1631 departing at 09:00:00
    * DL 1106 departing at 09:06:00
    * OO 5427 departing at 09:06:00
    * CY 352 departing at 09:25:00
    

Mengulangi performa agen

UI web ADK memungkinkan Anda memeriksa permintaan dan respons dari alat MCP QueryData Analisis Data Gemini. Anda dapat menggunakan respons ini untuk mengamati respons alat seperti kueri SQL yang dihasilkan, set hasil, penjelasan maksud, pertanyaan penghilangan ambiguitas, dan jawaban natural language, untuk membantu Anda mengonfirmasi kebenaran respons agen.

Misalnya, untuk teks input How many flights depart from the west side? yang Anda masukkan sebelumnya, klik balon agen. Di tab Peristiwa di navigasi kiri, luaskan functionResponse untuk melihat respons berikut.

"{"disambiguationQuestion": ["[NOT_ENOUGH_INFO] The database schema does not
contain information about which airports are on the 'west side'. Therefore, I
cannot determine how many flights depart from the west side.Possible alternative
questions: 1. How many flights depart from a specific airport? 2. What are the
departure airports for all flights? 3. How many flights depart from each
airport?"]}"

Mempertajam akurasi respons

Anda dapat terus meningkatkan akurasi respons dari alat Gemini Data Analytics QueryData dengan menambahkan konteks tambahan. Gunakan Gemini CLI untuk membuat konteks, lalu upload konteks agen yang telah diupdate ke agen flights-assistant yang ada. Untuk mengetahui informasi selengkapnya, lihat Membangun konteks menggunakan Gemini CLI. Konsol akan segera menyerap konteks baru setelah Anda menguploadnya, sehingga Anda dapat meningkatkan akurasi agen tanpa waktu non-operasional aplikasi.

Beberapa agen

Di lingkungan pengembangan, Anda dapat melakukan pengujian A/B pada beberapa konteks agen dengan menetapkan nama yang berbeda untuk alat di file tools.yaml. Misalnya, Anda dapat membuat konfigurasi tools.yaml unik dengan menentukan dua alat cloud-gemini-data-analytics-query dengan nama yang berbeda, seperti cloud_gda_query_tool_v1 dan cloud_gda_query_tool_v2. Penyiapan ini memungkinkan Anda menerapkan logika aplikasi yang secara terprogram memilih versi konteks agen yang diperlukan dengan memilih nama alat yang sesuai.

Contoh tools.yaml berikut menunjukkan cara menyiapkan beberapa agen untuk sumber database:

sources:
  gda-api-source:
    kind: cloud-gemini-data-analytics
    projectId: "<var>PROJECT_ID</var>"
tools:
  cloud_gda_query_tool_v1:
    kind: cloud-gemini-data-analytics-query
    source: gda-api-source
    context:
      datasourceReferences:
        <var>DB_SOURCE</var>:
          databaseReference: ...
          agentContextReference:
            contextSetId: "V1_YOUR_DATA_AGENT_CONTEXT_SET_ID"
    generationOptions: ...
  cloud_gda_query_tool_v2:
    kind: cloud-gemini-data-analytics-query
    source: gda-api-source
    context:
      datasourceReferences:
        <var>DB_SOURCE</var>:
          databaseReference: ...
          agentContextReference:
            contextSetId: "V2_YOUR_DATA_AGENT_CONTEXT_SET_ID"
    generationOptions: ...

Ganti kode berikut:

  • PROJECT_ID: Project ID Google Cloud Anda.
  • V1_YOUR_DATA_AGENT_CONTEXT_SET_ID: ID set konteks agen data untuk versi 1.
  • V2_YOUR_DATA_AGENT_CONTEXT_SET_ID: ID set konteks agen data untuk versi 2.

Pembersihan

Bagian berikut menjelaskan cara menghapus resource dan objek ini.

Menghapus agen

Sebelum menghapus instance, hapus agen yang Anda buat.

  1. Di konsol Google Cloud , buka halaman Cloud SQL.

    Buka Cloud SQL

  2. Pilih instance dari daftar.

  3. Di menu navigasi, klik Cloud SQL Studio.

  4. Login ke Studio menggunakan autentikasi Identity and Access Management (IAM).

  5. Di panel Explorer, di samping agen data Anda, klik View actions.

  6. Di jendela Hapus agen, masukkan flight-assistant di kotak konfirmasi.

  7. Klik Konfirmasi.

Menghapus instance

Saat Anda menghapus instance yang Anda buat di bagian sebelum memulai, Anda juga menghapus semua objek yang Anda buat.

  1. Di konsol Google Cloud , buka halaman Cloud SQL.

    Buka Cloud SQL

  2. Pilih instance dari daftar.

  3. Klik Hapus.

  4. Konfirmasi bahwa Anda ingin menghapus instance dengan memasukkan nama instance dan mengklik Hapus.

Langkah berikutnya