Memeriksa grounding dengan RAG

Sebagai bagian dari pengalaman Retrieval Augmented Generation (RAG) di Vertex AI Agent Builder, Anda dapat memeriksa grounding untuk menentukan seberapa berdasar sebuah teks (disebut kandidat jawaban) dalam kumpulan teks referensi tertentu (disebut fakta).

Check grounding API menampilkan skor dukungan keseluruhan dari 0 hingga 1, yang menunjukkan seberapa banyak kandidat jawaban setuju dengan fakta yang diberikan. Respons juga menyertakan kutipan untuk fakta yang mendukung setiap klaim dalam kandidat jawaban.

Dasar yang sempurna mengharuskan setiap klaim dalam kandidat jawaban harus didukung oleh satu atau beberapa fakta yang diberikan. Dengan kata lain, klaim tersebut sepenuhnya diwajibkan oleh fakta. Jika klaim hanya tercakup sebagian, klaim tersebut tidak dianggap berdasar. Misalnya, klaim "Google didirikan oleh Larry Page dan Sergey Brin pada tahun 1975" hanya benar sebagian—nama pendirinya benar, tetapi tanggalnya salah—sehingga seluruh klaim dianggap tidak berdasar. Dalam versi check grounding API ini, kalimat dianggap sebagai satu klaim.

Anda dapat menggunakan check grounding API untuk memeriksa bagian teks apa pun. Deskripsi dapat berupa ulasan yang dibuat manusia atau respons yang dibuat mesin. Kasus penggunaan yang umum adalah memeriksa respons yang dihasilkan LLM terhadap kumpulan fakta tertentu. API pemeriksaan grounding dirancang agar cepat, dengan latensi kurang dari 500 md. Kecepatan ini memungkinkan bot chat memanggil API grounding pemeriksaan selama setiap inferensi, tanpa menyebabkan pelambatan yang signifikan. Check grounding API juga dapat memberikan referensi untuk mendukung temuannya, sehingga pengguna dapat mengetahui bagian mana dari respons yang dihasilkan yang dapat diandalkan. API ini juga memberikan skor dukungan untuk menunjukkan akurasi respons secara keseluruhan. Dengan menetapkan nilai minimum kutipan, bot chat dapat memfilter respons pada waktu inferensi yang cenderung berisi klaim yang berhalusinasi.

Halaman ini menjelaskan cara memeriksa grounding menggunakan check grounding API.

Fitur eksperimental

Jika Anda ingin mencoba fitur eksperimental berikut yang tersedia untuk check grounding API, hubungi tim akun Google Anda dan minta untuk ditambahkan ke daftar yang diizinkan:

  • Anti-kutipan: Fitur anti-kutipan memberi Anda skor kontradiksi yang menunjukkan seberapa besar kandidat jawaban bertentangan dengan fakta yang diberikan. Respons juga menyertakan kutipan ke fakta yang bertentangan untuk setiap klaim. Untuk informasi selengkapnya, lihat Mendapatkan skor kontradiksi untuk kandidat jawaban.

  • Skor dukungan tingkat klaim: Skor dukungan tingkat klaim menunjukkan dasar setiap klaim dalam kandidat jawaban, selain skor dukungan keseluruhan untuk kandidat jawaban. Untuk informasi selengkapnya, lihat Mendapatkan skor tingkat klaim untuk kandidat jawaban.

  • Skor kegunaan: Skor kegunaan adalah ukuran seberapa baik kandidat jawaban menjawab permintaan tertentu. Untuk mengetahui informasi selengkapnya, lihat Mendapatkan skor kegunaan untuk kandidat jawaban.

  • Pembumian dengan penyimpanan data: Sumberkan fakta dasar dari penyimpanan data Vertex AI Search, bukan memberikan fakta inline. Untuk informasi selengkapnya, lihat Memeriksa grounding dengan penyimpanan data.

Istilah yang ditentukan dan dijelaskan

Sebelum menggunakan check grounding API, sebaiknya pahami input dan output, serta cara menyusun fakta grounding untuk mendapatkan hasil terbaik.

Data input

Check grounding API memerlukan input berikut dalam permintaan.

  • Kandidat jawaban: Kandidat jawaban dapat berupa bagian teks apa pun yang dasarnya ingin Anda periksa. Misalnya, dalam konteks Vertex AI Search, kandidat jawaban mungkin adalah ringkasan penelusuran yang dihasilkan yang menjawab kueri. API kemudian akan menentukan seberapa kuat ringkasan dalam fakta input. Calon jawaban dapat memiliki panjang maksimum 4.096 token, dengan token didefinisikan sebagai kata dalam kalimat atau titik (tanda baca yang digunakan untuk mengakhiri kalimat). Misalnya, kalimat "Mereka mengenakan pakaian siap pakai pada tahun 2024" memiliki panjang tujuh token, termasuk enam kata dan titik.

  • Fakta: Serangkaian segmen teks yang akan digunakan sebagai referensi untuk grounding. Kumpulan atribut metadata (pasangan nilai kunci) dapat diberikan dengan setiap segmen teks. Misalnya, "Penulis" dan "Judul" adalah kunci atribut standar.

    Layanan ini mendukung hingga 200 fakta, masing-masing dengan maksimum 10 ribu karakter.

    Google merekomendasikan agar Anda tidak memberikan satu fakta yang sangat besar yang berisi semua informasi. Sebagai gantinya, Anda bisa mendapatkan hasil yang lebih baik dengan membagi fakta besar menjadi fakta yang lebih kecil dan memberikan atribut yang sesuai untuk fakta yang lebih kecil. Misalnya, Anda dapat membagi fakta besar berdasarkan judul, penulis, atau URL, dan memberikan informasi ini dalam atribut.

  • Nilai minimum kutipan: Nilai float dari 0 hingga 1 yang mengontrol keyakinan untuk kutipan yang mendukung kandidat jawaban. Nilai minimum yang lebih tinggi akan menerapkan keyakinan yang lebih ketat. Oleh karena itu, nilai minimum yang lebih tinggi menghasilkan sitasi yang lebih sedikit, tetapi lebih kuat.

Data output

Check grounding API menampilkan hal berikut untuk kandidat jawaban:

  • Skor dukungan: Skor dukungan adalah angka dari 0 hingga 1 yang menunjukkan seberapa kuat kandidat jawaban dalam kumpulan fakta yang diberikan. Ini secara kasar mendekati fraksi klaim dalam kandidat jawaban yang ditemukan didasarkan pada satu atau beberapa fakta yang diberikan.

  • Potongan yang dikutip: Potongan yang dikutip adalah bagian dari fakta input yang mendukung kandidat jawaban.

  • Klaim dan kutipan: Klaim dan kutipan menghubungkan klaim (biasanya kalimat) dari kandidat jawaban ke satu atau beberapa bagian yang dikutip yang memverifikasi klaim tersebut.

    Jika skor tingkat klaim diaktifkan, dengan setiap klaim, skor dukungan akan ditampilkan sebagai angka dari 0 hingga 1 yang menunjukkan seberapa kuat klaim dalam kumpulan fakta yang diberikan. Untuk informasi selengkapnya, lihat Mendapatkan skor tingkat klaim untuk kandidat jawaban.

  • Pemeriksaan grounding diperlukan: Dengan setiap klaim, boolean grounding-check-required akan ditampilkan. Jika ditampilkan sebagai False, artinya sistem menganggap bahwa klaim tidak memerlukan dasar, sehingga kutipan dan anti-kutipan tidak ditampilkan. Misalnya, kalimat seperti "Berikut yang saya temukan" bukanlah fakta itu sendiri dan, dengan demikian, tidak memerlukan pemeriksaan dasar.

    Jika grounding-check-required ditampilkan sebagai true, artinya pemeriksaan perujukan telah dilakukan dan skor dukungan, kutipan, dan anti-kutipan, jika ada, akan ditampilkan.

Mendapatkan skor dukungan untuk kandidat jawaban

Untuk mengetahui seberapa kuat dasar kandidat jawaban dalam serangkaian fakta, ikuti langkah-langkah berikut:

  1. Siapkan kumpulan fakta Anda. Untuk informasi dan contoh selengkapnya, lihat Istilah yang ditentukan dan dijelaskan.

  2. Panggil metode check menggunakan kode berikut:

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-H "X-Goog-User-Project: PROJECT_ID" \
"https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
-d '{
  "answerCandidate": "CANDIDATE",
  "facts": [
  {
    "factText": "TEXT_0",
    "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"}
  },
  {
    "factText": "TEXT_1",
    "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"}
  },
  {
    "factText": "TEXT_2",
    "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"}
  }
  ],
  "groundingSpec": {
    "citationThreshold": "CITATION_THRESHOLD"
  }
}'

Ganti kode berikut:

  • PROJECT_ID: nomor atau ID project Google Cloud Anda.

  • CANDIDATE: string kandidat jawaban yang ingin Anda dapatkan skor dukungannya—misalnya, Titanic was directed by James Cameron. It was released in 1997. Calon jawaban dapat memiliki panjang maksimum 4.096 token, dengan token didefinisikan sebagai kata dalam kalimat atau titik (tanda baca yang digunakan untuk mengakhiri kalimat). Misalnya, kalimat "Mereka mengenakan pakaian siap pakai pada tahun 2024" memiliki tujuh token, termasuk enam kata dan titik.

  • TEXT: segmen teks yang akan digunakan untuk grounding—misalnya, Titanic is a 1997 American epic... Academy Awards. (Lihat teks lengkapnya di Contoh fakta.)

  • ATTRIBUTE: nama atribut metadata yang terkait dengan fakta—misalnya, author atau title. Ini adalah label yang ditentukan pengguna untuk menambahkan informasi selengkapnya ke teks fakta. Misalnya, jika teks fakta Toronto is the capital of Ontario memiliki atribut author dengan nilainya sebagai Wikipedia, klaim berikut dianggap didasarkan pada fakta:

    • Wikipedia cites that Toronto is the capital of Ontario
    • Toronto is the capital of Ontario

      Namun, klaim bahwa Government of Ontario claims that Toronto is the capital of Ontario tidak berdasar seperti dua klaim pertama.

  • VALUE: nilai untuk atribut—misalnya, Simple Wikipedia atau Titanic (1997 film).

  • CITATION_THRESHOLD: nilai float dari 0 hingga 1 yang menentukan apakah fakta harus dikutip untuk klaim dalam kandidat jawaban. Nilai minimum yang lebih tinggi menghasilkan sitasi yang lebih sedikit, tetapi kuat, dan nilai minimum yang lebih rendah menghasilkan sitasi yang lebih banyak, tetapi lemah. Jika tidak ditetapkan, nilai minimum defaultnya adalah 0.6.

Python

Untuk mengetahui informasi selengkapnya, lihat Dokumentasi referensi API Python Vertex AI Agent Builder.

Untuk melakukan autentikasi ke Vertex AI Agent Builder, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.

from google.cloud import discoveryengine_v1 as discoveryengine

# TODO(developer): Uncomment these variables before running the sample.
# project_id = "YOUR_PROJECT_ID"

client = discoveryengine.GroundedGenerationServiceClient()

# The full resource name of the grounding config.
# Format: projects/{project_id}/locations/{location}/groundingConfigs/default_grounding_config
grounding_config = client.grounding_config_path(
    project=project_id,
    location="global",
    grounding_config="default_grounding_config",
)

request = discoveryengine.CheckGroundingRequest(
    grounding_config=grounding_config,
    answer_candidate="Titanic was directed by James Cameron. It was released in 1997.",
    facts=[
        discoveryengine.GroundingFact(
            fact_text=(
                "Titanic is a 1997 American epic romantic disaster movie. It was directed, written,"
                " and co-produced by James Cameron. The movie is about the 1912 sinking of the"
                " RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released"
                " on December 19, 1997. It received positive critical reviews. The movie won 11 Academy"
                " Awards, and was nominated for fourteen total Academy Awards."
            ),
            attributes={"author": "Simple Wikipedia"},
        ),
        discoveryengine.GroundingFact(
            fact_text=(
                'James Cameron\'s "Titanic" is an epic, action-packed romance'
                "set against the ill-fated maiden voyage of the R.M.S. Titanic;"
                "the pride and joy of the White Star Line and, at the time,"
                "the largest moving object ever built. "
                'She was the most luxurious liner of her era -- the "ship of dreams" -- '
                "which ultimately carried over 1,500 people to their death in the "
                "ice cold waters of the North Atlantic in the early hours of April 15, 1912."
            ),
            attributes={"author": "Simple Wikipedia"},
        ),
    ],
    grounding_spec=discoveryengine.CheckGroundingSpec(citation_threshold=0.6),
)

response = client.check_grounding(request=request)

# Handle the response
print(response)

Contoh fakta

Berikut adalah beberapa contoh fakta dan atributnya. Contoh ini untuk membantu Anda memahami respons grounding dan format perintah curl.

  • Fakta 0

    • Teks: "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards."

    • Atribut: {"Author": "Simple Wikipedia"}

  • Fakta 1

    • Teks: "James Cameron's "Titanic" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the "ship of dreams" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912."

    • Atribut: {"Author": "Rotten Tomatoes"}

Contoh permintaan

Setelah menyiapkan fakta, Anda dapat mengirim permintaan berikut, dengan mengganti kolom CANDIDATE dengan string berbeda yang grounding-nya ingin Anda periksa.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
      "attributes": {"author":"Simple Wikipedia"}
     },
     {
      "factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
      "attributes": {"author":"Simple Wikipedia"}
     }
    ],
    "groundingSpec": {
      "citationThreshold": "0.6"
    }
    }'

Contoh kandidat jawaban dan respons dasar

Tabel berikut menunjukkan contoh kandidat jawaban dan respons yang berbeda saat Anda mengirim permintaan contoh, berdasarkan fakta contoh.

Kandidat jawaban Memeriksa respons grounding
Here is what I found. Titanic was directed by James Cameron. Skor dukungan: 0.99

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
Klaim dan kutipan:
  • 0. Here is what I found.
    Pemeriksaan pentanahan diperlukan: false
  • 1. Titanic was directed by James Cameron.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
Titanic was directed by James Cameron. It was released in 1997. Skor dukungan: 0.99

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
  2. [From FACT 1]...Titanic is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912....
Klaim dan kutipan:
  • 0. Titanic was directed by James Cameron.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
  • 1. It was released in 1997.
    Kutipan: [1]
    Pemeriksaan grounding diperlukan: true
Titanic was directed by James Cameron. It was based on the sinking of the RMS Titanic that led to the death of 1500 people. Skor dukungan: 0.95

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
  2. [From FACT 1]...Titanic is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912....
Klaim dan kutipan:
  • 0. Cited chunks: Titanic was directed by James Cameron.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
  • 1. Cited chunks: It was based on the sinking of the RMS Titanic that led to the death of 1500 people.
    Kutipan: [1]
    Pemeriksaan grounding diperlukan: true
Titanic was directed by James Cameron. It starred Brad Pitt and Kate Winslet Skor dukungan: 0.54

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
  2. [From FACT 1]...Titanic is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912....
Klaim dan kutipan:
  • 0. Titanic was directed by James Cameron.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
  • 1. It starred Brad Pitt and Kate Winslet
    Kutipan: []
    Pemeriksaan grounding diperlukan: true
Catatan: Meskipun Kate Winslet membintangi film tersebut, karena klaim "It starred Brad Pitt and Kate Winslet" tidak sepenuhnya benar, klaim tersebut tidak mendapatkan kutipan. Dalam hal ini, Anda dapat memanggil metode dengan anti-kutipan diaktifkan untuk memberi Anda skor kontradiksi. Untuk informasi selengkapnya, lihat Mendapatkan skor kontradiksi untuk kandidat jawaban.

Mendapatkan skor kontradiksi untuk kandidat jawaban

Selain skor dukungan, Anda juga bisa mendapatkan skor kontradiksi. Skor kontradiksi secara kasar mendekati fraksi klaim yang bertentangan dengan fakta yang diberikan.

Untuk mencoba fitur Eksperimental ini, hubungi tim Akun Google Anda dan minta untuk ditambahkan ke daftar yang diizinkan.

Mendapatkan skor kontradiksi

Untuk mendapatkan skor kontradiksi, ikuti langkah-langkah berikut:

  1. Siapkan kumpulan fakta Anda. Untuk informasi dan contoh selengkapnya, lihat Istilah yang ditentukan dan dijelaskan.

  2. Panggil metode check, menggunakan perintah curl berikut:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "TEXT_0",
      "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"}
     },
     {
      "factText": "TEXT_1",
      "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"}
     },
     {
      "factText": "TEXT_2",
      "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"}
     },
    ],
    "groundingSpec": {
      "citationThreshold": "CITATION_THRESHOLD",
      "enableAntiCitations": "ENABLE_ANTI_CITATION",
      "antiCitationThreshold": "ANTI_CITATION_THRESHOLD",
    }
    }'
    

    Ganti kode berikut:

    • PROJECT_ID: nomor atau ID project Google Cloud Anda.

    • CANDIDATE: string kandidat jawaban yang ingin Anda dapatkan skor dukungannya—misalnya, Titanic was directed by James Cameron. It was released in 1997. Kandidat jawaban dapat memiliki panjang maksimum 4.096 token, dengan token didefinisikan sebagai kata dalam kalimat atau titik (tanda baca yang digunakan untuk mengakhiri kalimat). Misalnya, kalimat "Mereka mengenakan pakaian siap pakai pada tahun 2024" memiliki tujuh token, termasuk enam kata dan titik.

    • TEXT: segmen teks yang akan digunakan untuk grounding—misalnya, Titanic is a 1997 American epic... Academy Awards. (Lihat teks lengkapnya di Contoh fakta.)

    • ATTRIBUTE: nama atribut metadata yang terkait dengan fakta—misalnya, author atau title. Ini adalah label yang ditentukan pengguna untuk menambahkan informasi selengkapnya ke teks fakta. Misalnya, jika teks fakta Toronto is the capital of Ontario memiliki atribut author dengan nilainya sebagai Wikipedia, klaim berikut memiliki dasar yang kuat:

      • Wikipedia cites that Toronto is the capital of Ontario
      • Toronto is the capital of Ontario

      Namun, klaim bahwa Government of Ontario claims that Toronto is the capital of Ontario tidak memiliki dasar yang kuat.

    • VALUE: nilai untuk atribut—misalnya, Simple Wikipedia atau Titanic (1997 film).

    • CITATION_THRESHOLD: nilai float dari 0 hingga 1 yang menentukan apakah fakta harus dikutip untuk klaim dalam kandidat jawaban. Nilai minimum yang lebih tinggi akan menghasilkan kutipan yang lebih sedikit, tetapi kuat untuk mendukung klaim, dan nilai minimum yang lebih rendah akan menghasilkan kutipan yang lebih banyak, tetapi lemah untuk mendukung klaim. Jika tidak ditetapkan, nilai minimum defaultnya adalah 0,6.

    • ENABLE_ANTI_CITATION: nilai boolean. Tetapkan kolom ini ke true untuk mengaktifkan fitur eksperimental guna mengevaluasi skor kontradiksi. Hapus kolom ini atau tetapkan kolom ini ke false untuk menonaktifkan fitur ini.

    • ANTI_CITATION_THRESHOLD: nilai float dari 0 hingga 1 yang menentukan apakah fakta harus dikutip sebagai bertentangan dengan klaim dalam kandidat jawaban. Nilai minimum yang lebih tinggi akan menghasilkan lebih sedikit, tetapi lebih kuat kutipan yang bertentangan dengan klaim, dan nilai minimum yang lebih rendah akan menghasilkan lebih banyak, tetapi lebih lemah kutipan yang bertentangan dengan klaim. Jika tidak ditetapkan, nilai minimum defaultnya adalah 0,8.

Contoh permintaan

Dengan menggunakan contoh fakta dari bagian sebelumnya, Anda dapat mengirim permintaan berikut. Ganti kolom CANDIDATE dengan string yang berbeda yang grounding dan kontradiksi-nya ingin Anda periksa.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
      "attributes": {"author":"Simple Wikipedia"}
     },
     {
      "factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
      "attributes": {"author":"Simple Wikipedia"}
     }
    ],
    "groundingSpec": {
      "citationThreshold": "0.6",
      "enableAntiCitations": true,
      "antiCitationThreshold": "0.8",
    }
    }'

Contoh respons dengan kontradiksi

Tabel berikut menunjukkan contoh kandidat jawaban dan responsnya saat Anda mengirim contoh permintaan, berdasarkan contoh fakta.

Kandidat jawaban Memeriksa respons grounding
Titanic was directed by James Cameron. It starred Brad Pitt and Kate Winslet Skor dukungan: 0.36

Skor kontradiksi: 0.49

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
  2. [From FACT 1]...Titanic is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912....
Klaim dan kutipan:
  • 0. Titanic was directed by James Cameron.
    Kutipan: [0] Anti-kutipan: []
    Pemeriksaan perujukan diperlukan: true
  • 1. It starred Brad Pitt and Kate Winslet
    Kutipan: [] Anti-kutipan: [0]
    Pemeriksaan perujukan diperlukan: true

Mendapatkan skor kegunaan untuk kandidat jawaban

Untuk mencoba fitur Eksperimental ini, hubungi tim Akun Google Anda dan minta untuk ditambahkan ke daftar yang diizinkan.

Selain skor dukungan dan skor kontradiksi, check grounding API dapat memberikan skor kegunaan. Respons yang bermanfaat adalah respons yang secara efektif memenuhi permintaan pengguna (seperti yang dinyatakan dalam perintah) dengan cara yang informatif. Skor kegunaan adalah ukuran seberapa baik respons melakukan hal berikut:

  • Mengatasi intent inti perintah
  • Memberikan detail lengkap sekaligus ringkas
  • Langsung menjawab pertanyaan yang diajukan atau menyelesaikan tugas yang diminta dalam perintah
  • Menawarkan informasi yang relevan
  • Jelas dan mudah dipahami
  • Menghindari detail dan jargon yang tidak perlu

Untuk mendapatkan skor kegunaan bersama dengan skor perujukan, Anda harus memberikan perintah beserta kandidat jawaban dan fakta. Check grounding API meninjau kandidat jawaban dengan perintah dan memberikan skor yang menunjukkan seberapa membantu kandidat jawaban menjawab perintah. Skor berada dalam rentang [0,1] dengan semakin besar skor, semakin berguna jawabannya.

Mendapatkan skor kegunaan

Untuk mendapatkan skor kegunaan, ikuti langkah-langkah berikut:

  1. Siapkan perintah dan kandidat jawaban Anda.

  2. Panggil metode check, menggunakan perintah curl berikut:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
    {
      "factText": "TEXT_0",
      "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"}
    },
    {
      "factText": "TEXT_1",
      "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"}
    },
    {
      "factText": "TEXT_2",
      "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"}
    }
    ],
    "groundingSpec": {
      "enableHelpfulnessScore": true
    },
    "prompt": "PROMPT",
    }'
    

    Ganti kode berikut:

    • PROJECT_ID: nomor atau ID project Google Cloud Anda.

    • CANDIDATE: string kandidat jawaban yang ingin Anda dapatkan skor kegunaannya—misalnya, Titanic was directed by James Cameron. It was released in 1997. Calon jawaban dapat memiliki panjang maksimum 4.096 token.

    • TEXT: segmen teks yang akan digunakan untuk grounding—misalnya, Titanic is a 1997 American epic... Academy Awards. (Lihat teks lengkapnya di Contoh fakta.)

    • ATTRIBUTE: nama atribut metadata yang terkait dengan fakta—misalnya, author atau title. Ini adalah label yang ditentukan pengguna untuk menambahkan informasi selengkapnya ke teks fakta. Misalnya, jika teks fakta Toronto is the capital of Ontario memiliki atribut author dengan nilainya sebagai Wikipedia, klaim berikut memiliki dasar yang kuat:

      • Wikipedia cites that Toronto is the capital of Ontario
      • Toronto is the capital of Ontario

      Namun, klaim bahwa Government of Ontario claims that Toronto is the capital of Ontario tidak memiliki dasar yang kuat.

    • VALUE: nilai untuk atribut—misalnya, Simple Wikipedia atau Titanic (1997 film).

    • PROMPT: Perintah adalah kueri yang dibuat untuk menjawab kandidat jawaban—misalnya, Who directed and starred in the movie Titanic?.

Contoh permintaan

Dengan menggunakan contoh fakta dari bagian sebelumnya, Anda dapat mengirim permintaan berikut. Ganti kolom CANDIDATE dengan kandidat jawaban yang berbeda untuk mendapatkan skor kegunaan jawaban.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
      "attributes": {"author":"Simple Wikipedia"}
     },
     {
      "factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
      "attributes": {"author":"Simple Wikipedia"}
     }
    ],
    "groundingSpec": {
      "enableHelpfulnessScore": true
    },
    "prompt": "Who directed and starred in the movie Titanic?"
    }'

Contoh respons dengan skor kegunaan

Tabel berikut menunjukkan contoh kandidat jawaban dengan skor membantunya. Dalam setiap kasus, perintahnya adalah Who directed and starred in the Titanic?

Kandidat jawaban Skor kegunaan Penjelasan skor
Titanic was directed by James Cameron. It starred Leonardo DiCaprio and Kate Winslet. 0.980 Skor ringkas dan lengkap
Cameron, DiCaprio and Winslet. 0.947 Tidak lengkap
James Cameron's 1997 masterpiece, Titanic, captured the hearts of audiences worldwide with its tragic love story set against the backdrop of the ill-fated maiden voyage of the "unsinkable" ship. The film, a mesmerizing blend of historical drama and fictional romance, starred Leonardo DiCaprio as Jack Dawson, a penniless artist who falls for Rose DeWitt Bukater, a young woman trapped by her social standing and played exquisitely by Kate Winslet. Their passionate love affair unfolds amidst the grandeur and opulence of the Titanic, a floating palace of dreams that ultimately succumbs to a devastating fate. 0.738 Tidak ringkas

Mendapatkan skor tingkat klaim untuk kandidat jawaban

Selain skor dukungan tingkat jawaban, Anda bisa mendapatkan skor dukungan tingkat klaim untuk setiap klaim dalam kandidat jawaban.

Untuk mencoba fitur Eksperimental ini, hubungi tim Akun Google Anda dan minta untuk ditambahkan ke daftar yang diizinkan.

Untuk mendapatkan skor tingkat klaim, ikuti langkah-langkah berikut:

  1. Siapkan kumpulan fakta Anda. Untuk informasi dan contoh selengkapnya, lihat Istilah yang ditentukan dan dijelaskan.

  2. Panggil metode check, menggunakan perintah curl berikut:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "TEXT_0",
      "attributes": {"ATTRIBUTE_A": "VALUE_A0","ATTRIBUTE_B": "VALUE_B0"}
     },
     {
      "factText": "TEXT_1",
      "attributes": {"ATTRIBUTE_A": "VALUE_A1","ATTRIBUTE_B": "VALUE_B1"}
     },
     {
      "factText": "TEXT_2",
      "attributes": {"ATTRIBUTE_A": "VALUE_A2","ATTRIBUTE_B": "VALUE_B2"}
     },
    ],
    "groundingSpec": {
      "citationThreshold": "CITATION_THRESHOLD",
      "enableClaimLevelScore": "ENABLE_CLAIM_LEVEL_SCORE",
    }
    }'
    

    Ganti kode berikut:

    • PROJECT_ID: nomor atau ID project Google Cloud Anda.

    • CANDIDATE: string kandidat jawaban yang ingin Anda dapatkan skor dukungannya—misalnya, Titanic was directed by James Cameron. It was released in 1997. Kandidat jawaban dapat memiliki panjang maksimum 4.096 token, dengan token didefinisikan sebagai kata dalam kalimat atau titik (tanda baca yang digunakan untuk mengakhiri kalimat). Misalnya, kalimat "Mereka mengenakan pakaian siap pakai pada tahun 2024" memiliki tujuh token, termasuk enam kata dan titik.

    • TEXT: segmen teks yang akan digunakan untuk grounding—misalnya, Titanic is a 1997 American epic... Academy Awards. (Lihat teks lengkapnya di Contoh fakta.)

    • ATTRIBUTE: nama atribut metadata yang terkait dengan fakta—misalnya, author atau title. Ini adalah label yang ditentukan pengguna untuk menambahkan informasi selengkapnya ke teks fakta. Misalnya, jika teks fakta Toronto is the capital of Ontario memiliki atribut author dengan nilainya sebagai Wikipedia, klaim berikut memiliki dasar yang kuat:

      • Wikipedia cites that Toronto is the capital of Ontario
      • Toronto is the capital of Ontario

      Namun, klaim bahwa Government of Ontario claims that Toronto is the capital of Ontario tidak memiliki dasar yang kuat.

    • VALUE: nilai untuk atribut—misalnya, Simple Wikipedia atau Titanic (1997 film).

    • CITATION_THRESHOLD: nilai float dari 0 hingga 1 yang menentukan apakah fakta harus dikutip untuk klaim dalam kandidat jawaban. Nilai minimum yang lebih tinggi akan menghasilkan kutipan yang lebih sedikit, tetapi kuat untuk mendukung klaim, dan nilai minimum yang lebih rendah akan menghasilkan kutipan yang lebih banyak, tetapi lemah untuk mendukung klaim. Jika tidak ditetapkan, nilai minimum defaultnya adalah 0,6.

    • ENABLE_CLAIM_LEVEL_SCORE: nilai boolean. Tetapkan kolom ini ke true untuk mengaktifkan fitur skor tingkat klaim. Untuk menonaktifkan fitur ini, hapus kolom ini atau tetapkan kolom ini ke false.

Contoh permintaan

Dengan menggunakan contoh fakta dari bagian sebelumnya, Anda dapat mengirim permintaan berikut. Ganti kolom CANDIDATE dengan string yang berbeda yang ingin Anda periksa per-pernyataan.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
    "answerCandidate": "CANDIDATE",
    "facts": [
     {
      "factText": "Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. The movie is about the 1912 sinking of the RMS Titanic. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.",
      "attributes": {"author":"Simple Wikipedia"}
     },
     {
      "factText": "James Cameron's \"Titanic\" is an epic, action-packed romance set against the ill-fated maiden voyage of the R.M.S. Titanic; the pride and joy of the White Star Line and, at the time, the largest moving object ever built. She was the most luxurious liner of her era -- the \"ship of dreams\" -- which ultimately carried over 1,500 people to their death in the ice cold waters of the North Atlantic in the early hours of April 15, 1912.",
      "attributes": {"author":"Simple Wikipedia"}
     }
    ],
    "groundingSpec": {
      "citationThreshold": "0.6",
      "enableClaimLevelScore": true,
    }
    }'

Contoh respons dengan skor tingkat klaim

Tabel berikut menunjukkan contoh kandidat jawaban dan responsnya saat Anda mengirim contoh permintaan, berdasarkan contoh fakta.

Kandidat jawaban Memeriksa respons grounding
Here is what I found. Titanic was directed by James Cameron. It starred Kate Winslet and Leonardo DiCaprio. Skor dukungan: 0.99

Bagian yang dikutip:
  1. [From FACT 0]....Titanic is a 1997 American epic romantic disaster movie. It was directed, written, and co-produced by James Cameron. It stars Kate Winslet and Leonardo DiCaprio. The movie was released on December 19, 1997. It received positive critical reviews. The movie won 11 Academy Awards, and was nominated for fourteen total Academy Awards.....
Klaim dan kutipan:
  • 0. Here is what I found.
    Pemeriksaan pentanahan diperlukan: false
  • 1. Titanic was directed by James Cameron.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
    Skor: 0.99
  • 2. It starred Kate Winslet and Leonardo DiCaprio.
    Kutipan: [0]
    Pemeriksaan grounding diperlukan: true
    Skor: 0.99

Memeriksa grounding dengan penyimpanan data

Secara default, grounding diperiksa berdasarkan sekumpulan fakta yang diberikan secara inline dalam panggilan API check grounding. Namun, sebagai alternatif untuk memberikan fakta secara inline, Anda dapat memeriksa kandidat jawaban terhadap semua fakta di penyimpanan data Vertex AI Search.

Saat memanggil API pemeriksaan dasar, Anda memberikan nama aplikasi penelusuran Vertex AI. Sebagai gantinya, penyimpanan data tidak terstruktur yang terkait dengan aplikasi penelusuran tersebut menyimpan kumpulan fakta yang digunakan untuk memeriksa dasar kandidat jawaban.

Untuk memeriksa grounding terhadap penyimpanan data, ikuti langkah-langkah berikut:

  1. Identifikasi aplikasi penelusuran umum yang terkait dengan setidaknya satu penyimpanan data yang berisi data tidak terstruktur. Dokumen dalam penyimpanan data ini berfungsi sebagai sumber untuk fakta dasar Anda.

    Untuk mengetahui cara membuat penyimpanan data dan aplikasi penelusuran, lihat Membuat penyimpanan data penelusuran dan Membuat aplikasi penelusuran.

  2. Temukan ID aplikasi Anda. Jika Anda sudah memiliki ID aplikasi, lanjutkan ke langkah berikutnya.

    1. Di konsol Google Cloud, buka halaman Agent Builder.

      Buka Aplikasi

    2. Di halaman Aplikasi, temukan nama aplikasi Anda dan dapatkan ID aplikasi dari kolom ID.

  3. Panggil metode check, menggunakan perintah curl berikut:

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/groundingConfigs/default_grounding_config:check" \
    -d '{
        "answerCandidate": "CANDIDATE",
        "groundingSource": {
          "searchSource": "projects/SOURCE_PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search"
        }
    }'
    

    Ganti kode berikut:

    • PROJECT_ID: nomor atau ID project Google Cloud Anda.

    • SOURCE_PROJECT_ID: nomor atau ID project project yang berisi aplikasi untuk grounding.

      Project sumber ini harus berada di region yang sama dengan project Anda—misalnya, global atau eu. (Untuk informasi umum tentang multi-region, lihat Lokasi.)

    • CANDIDATE: string kandidat jawaban yang ingin Anda dapatkan skor dukungannya—misalnya, Titanic was directed by James Cameron. It was released in 1997. Kandidat jawaban dapat memiliki panjang maksimum 4.096 token, dengan token didefinisikan sebagai kata dalam kalimat atau titik (tanda baca yang digunakan untuk mengakhiri kalimat). Misalnya, kalimat "Mereka mengenakan pakaian siap pakai pada tahun 2024" memiliki panjang tujuh token, termasuk enam kata dan titik.

    • APP_ID: ID aplikasi penelusuran Vertex AI yang penyimpanan data tidak terstrukturnya berisi fakta yang ingin Anda gunakan sebagai sumber dasar.