Memfilter penelusuran berdasarkan relevansi tingkat dokumen

Saat menelusuri di aplikasi Vertex AI Search, Anda dapat menentukan filter relevansi tingkat dokumen sehingga hanya dokumen yang memenuhi nilai minimum filter yang ditampilkan sebagai hasil. Halaman ini menjelaskan jenis nilai minimum, pentingnya mengoptimalkan nilai minimum, dan cara menentukan filter relevansi dan nilai minimumnya.

Tentang pemfilteran menurut relevansi tingkat dokumen

Saat kueri penelusuran menampilkan hasil, kueri tersebut akan menetapkan tingkat relevansi ke setiap dokumen yang diambil. Dalam permintaan penelusuran, Anda dapat menetapkan nilai minimum untuk menampilkan hanya dokumen yang memenuhi nilai minimum filter. Menetapkan nilai minimum yang tinggi dapat mengurangi jumlah dokumen yang ditampilkan kueri. Sedangkan menetapkan nilai minimum yang rendah dapat mengurangi kualitas hasil dengan dokumen yang kurang relevan dengan kueri pengguna.

Oleh karena itu, jika Anda menemukan bahwa hasil berisi terlalu banyak dokumen yang tidak cukup relevan bagi pengguna Anda, tetapkan nilai minimum relevansi yang tinggi untuk mempersempit hasil hanya ke beberapa dokumen yang paling relevan. Jika nilai minimum yang tinggi terlalu membatasi, Anda dapat menurunkannya ke nilai yang lebih optimal.

Jenis penelusuran

Anda dapat menerapkan filter relevansi ke jenis penelusuran berikut:

  • Penelusuran kata kunci: mengambil dokumen berdasarkan penelusuran kata kunci.
  • Penelusuran kemiripan semantik: mengambil dokumen berdasarkan embedding.

Dalam definisi filter relevansi, Anda dapat menentukan jenis nilai minimum untuk setiap penelusuran ini. Penelusuran mengambil dokumen untuk penelusuran tertentu, lalu menerapkan nilai minimum yang ditentukan.

Jenis nilai minimum

Anda dapat menentukan salah satu jenis nilai minimum berikut untuk penelusuran kata kunci dan kesamaan semantik saat mengirim permintaan penelusuran.

  • Nilai minimum relevansi: Saat Anda menetapkan nilai minimum ini, penelusuran akan menggunakan model eksklusif untuk menentukan relevansi dokumen. Dalam hal ini, penelusuran dapat menggunakan sinyal yang relevan, seperti skor kemiripan kata kunci, skor topik, dan skor kemiripan semantik.

    Nilai minimum relevansi adalah setelan dengan perincian kasar yang memungkinkan nilai berikut: HIGH, MEDIUM, LOW, dan LOWEST. Ambang batas HIGH dapat menampilkan lebih sedikit dokumen dengan skor relevansi tinggi, sedangkan ambang batas LOWEST dapat menampilkan lebih banyak dokumen yang mungkin tidak relevan dengan kueri penelusuran.

  • Nilai minimum relevansi semantik: Jika Anda menetapkan nilai minimum ini, filter hanya mengandalkan skor kemiripan semantik untuk menentukan relevansi dokumen.

    Nilai minimum relevansi semantik adalah setelan terperinci dan merupakan nilai floating point dalam rentang [0,1]. Menetapkan nilai minimum ke nol akan menampilkan semua dokumen, sedangkan menetapkan nilai minimum ke satu akan menampilkan dokumen yang paling relevan.

Definisi dan contoh filter relevansi

Untuk menentukan filter relevansi dalam permintaan penelusuran, tentukan hanya satu jenis nilai minimum (nilai minimum relevansi dan nilai minimum relevansi semantik) untuk setiap jenis penelusuran (penelusuran kata kunci dan penelusuran semantik). Anda dapat menentukan salah satu atau kedua jenis penelusuran di dalam spesifikasi filter relevansi. Namun, hanya boleh ada satu jenis nilai minimum yang ditentukan dalam setiap jenis penelusuran. Misalnya, pertimbangkan hal berikut:

{
  "relevanceFilterSpec": {
    "keywordSearchThreshold":  {
      "relevanceThreshold": "LOW"
    },
    "semanticSearchThreshold":  {
      "semanticRelevanceThreshold": 0.871
    }
  }
}

Dalam permintaan penelusuran ini, hasil ditampilkan dalam dua tahap: pengambilan dan pemfilteran.

  • Penelusuran mengambil dokumen sesuai dengan pencocokan kata kunci dan kemudian memfilter dokumen dengan nilai minimum relevansi yang rendah. Hal ini akan menampilkan sejumlah besar dokumen yang diambil.
  • Secara bersamaan, penelusuran mengambil dokumen menurut kemiripan semantik, lalu memfilter dokumen dengan nilai minimum relevansi semantik yang tinggi sebesar 0.871. Tindakan ini akan menampilkan lebih sedikit dokumen yang diambil.

Penekanan penelusuran lebih pada pencocokan kata kunci daripada kemiripan semantik. Filter memungkinkan lebih banyak dokumen yang diambil karena pencocokan kata kunci.

Demikian pula, Anda dapat menentukan filter relevansi dengan cara berikut untuk menampilkan lebih sedikit dokumen dengan kata kunci yang cocok dan lebih banyak dokumen dengan kesamaan semantik.

"relevanceFilterSpec": {
    "keywordSearchThreshold":  {
        "semanticRelevanceThreshold": 0.871
    },
    "semanticSearchThreshold":  {
        "relevanceThreshold": "LOW"
    }
}

Jenis data dan aplikasi yang didukung untuk filter relevansi tingkat dokumen

Filter relevansi tingkat dokumen dapat diterapkan ke penyimpanan data dengan jenis data berikut:

  • Data situs dengan pengindeksan situs lanjutan
  • Data tidak terstruktur kustom
  • Data terstruktur kustom

Filter relevansi tingkat dokumen tidak berfungsi untuk penyimpanan data dengan pengindeksan situs dasar, data media, atau data kesehatan.

Selain itu, filter relevansi tingkat dokumen tidak dapat digunakan dengan aplikasi penelusuran gabungan. Aplikasi penelusuran gabungan adalah aplikasi yang terhubung ke beberapa penyimpanan data.

Jenis filter lainnya

Filter relevansi tingkat dokumen bukan satu-satunya cara Anda dapat memfilter data yang ditampilkan oleh kueri. Anda juga dapat menggunakan ekspresi filter untuk memfilter hasil berdasarkan metadata (dalam pengindeksan situs lanjutan dan penyimpanan data tidak terstruktur dengan metadata) dan nilai kolom (dalam penyimpanan data terstruktur).

Untuk mengetahui informasi, lihat:

Jika Anda menggunakan ekspresi filter dan filter relevansi tingkat dokumen, ekspresi filter diterapkan terlebih dahulu pada hasil, lalu filter relevansi tingkat dokumen diterapkan.

Sebelum memulai

Pastikan Anda telah membuat aplikasi dan penyimpanan data serta telah menyerap data ke dalam penyimpanan data. Untuk mengetahui informasi selengkapnya, lihat Membuat aplikasi penelusuran. Lihat juga Jenis data dan aplikasi yang didukung untuk filter relevansi tingkat dokumen.

Untuk memfilter menurut relevansi, ikuti langkah-langkah berikut:

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

    1. Di konsol Google Cloud , buka halaman AI Applications.

      Buka Aplikasi

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

  2. Untuk memfilter penelusuran menurut relevansi tingkat dokumen, tentukan kolom relevanceFilterSpec yang hanya menentukan satu jenis nilai minimum untuk setiap jenis penelusuran menggunakan metode engines.servingConfigs.search. Artinya, Anda dapat menentukan relevanceThreshold atau semanticRelevanceThreshold untuk jenis penelusuran tertentu.

    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \
    -d '{
     "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search",
    "query": "QUERY",
    "relevanceFilterSpec": {
      "keywordSearchThreshold":  {
          "relevanceThreshold": "RELEVANCE_THRESHOLD"
      },
      "semanticSearchThreshold":  {
          "semanticRelevanceThreshold": SEMANTIC_RELEVANCE_THRESHOLD
      }
    }
    }'
    

    Ganti kode berikut:

    • PROJECT_ID: ID Google Cloud project Anda.
    • APP_ID: ID aplikasi Vertex AI Search yang ingin Anda kueri.
    • QUERY: teks kueri yang akan ditelusuri.
    • RELEVANCE_THRESHOLD: salah satu dari berikut: HIGH, MEDIUM, LOW, LOWEST.
    • SEMANTIC_RELEVANCE_THRESHOLD: nilai floating point dalam rentang [0,1].
  3. Uji beberapa kueri dengan berbagai nilai minimum untuk menentukan setelan nilai minimum terbaik untuk data dan aplikasi Anda.