Smart Reply

Smart Reply mengikuti percakapan antara agen manusia dan pengguna akhir serta menampilkan respons yang disarankan kepada agen manusia. Respons yang disarankan dihitung oleh model kustom yang telah dilatih dengan data percakapan Anda sendiri.

Dokumen ini akan memandu Anda melalui proses penggunaan API untuk menerapkan Smart Reply dan mendapatkan saran dari fitur ini. Jika ingin, Anda memiliki opsi untuk menggunakan konsol Agent Assist guna mengupload data, melatih model, dan menguji hasil Smart Reply selama waktu desain. Untuk melihat saran Smart Reply selama runtime, Anda harus memanggil API secara langsung. Lihat tutorial Smart Reply untuk mengetahui detail tentang cara melatih model dan menguji performanya menggunakan Agent Assist Console.

Agent Assist juga menyediakan data percakapan yang tersedia secara publik serta model terlatih dan daftar yang diizinkan. Anda dapat menggunakan referensi ini untuk melihat cara kerja Reply Cerdas atau menguji integrasi sebelum mengupload data Anda sendiri. Lihat dokumentasi format data percakapan untuk mengetahui informasi selengkapnya.

Sebelum memulai

Selesaikan hal-hal berikut sebelum memulai panduan ini:

  1. Buat set data percakapan menggunakan data transkrip Anda sendiri.
  2. Latih model Smart Reply menggunakan set data percakapan Anda.

Informasi Identitas Pribadi dan data anak-anak

Saat Anda mengirim data ke API ini, API akan mencoba menyamarkan semua informasi identitas pribadi (PII). Jika perlu memastikan bahwa model tidak menyertakan PII, Anda harus membersihkan data sebelum mengirimkannya ke API. Ganti kata yang disamarkan dengan placeholder seperti `REDACTED_NUMBER` atau `REDACTED_NAME`, bukan hanya menghapusnya.

Selain itu, jika data Anda berisi informasi yang dikumpulkan dari anak-anak, Anda harus menghapus data anak-anak sebelum mengirimkannya ke API.

Melatih dan men-deploy model

Model Smart Reply Agent Assist dilatih menggunakan set data percakapan. Set data percakapan berisi data transkrip yang Anda upload sendiri. Bagian ini akan memandu Anda melalui proses pembuatan set data percakapan, mengupload data percakapan ke set data tersebut, serta melatih dan men-deploy model. Anda juga dapat melakukan tindakan ini menggunakan Konsol Agent Assist jika tidak ingin memanggil API secara langsung.

Membuat set data percakapan

Sebelum dapat mulai mengupload transkrip percakapan, Anda harus membuat set data percakapan terlebih dahulu untuk menyimpannya. Panggil metode create pada resource ConversationDataset untuk membuat set data percakapan.

Respons berisi ID set data percakapan.

Mengimpor transkrip percakapan ke set data percakapan

Upload data percakapan chat Anda ke set data percakapan agar dapat diproses oleh Agent Assist. Pastikan transkrip setiap percakapan dalam format JSON dan disimpan di bucket Cloud Storage. Set data percakapan harus berisi minimal 30.000 percakapan. Jika tidak, pelatihan model akan gagal. Sebagai aturan umum, semakin banyak percakapan yang Anda lakukan, semakin baik kualitas model Anda. Sebaiknya upload percakapan setidaknya selama 3 bulan untuk mencakup sebanyak mungkin kasus penggunaan. Jumlah pesan maksimum dalam set data percakapan adalah 1.000.000.

Panggil metode importConversationData pada resource ConversationDataset untuk mengimpor percakapan Anda.

Kolom wajib diisi:

  • ID set data percakapan yang Anda buat sebelumnya.
  • Jalur inputConfig mengarah ke data transkrip percakapan Anda di bucket Cloud Storage.

Responsnya adalah operasi yang berjalan lama, yang dapat Anda polling untuk memeriksa penyelesaian.

Membuat model percakapan

Panggil metode create pada resource ConversationModel untuk membuat model percakapan. Tindakan ini juga membuat daftar yang diizinkan model.

Kolom wajib diisi:

  • Di datasets, berikan satu set data menggunakan ID set data percakapan yang Anda buat sebelumnya.
  • Tetapkan smartReplyModelMetadata ke objek kosong, atau isi kolom untuk mengganti default.

Responsnya adalah operasi yang berjalan lama, yang dapat Anda polling untuk memeriksa penyelesaian. Setelah selesai, ID model dan ID daftar yang diizinkan akan disertakan dalam metadata untuk operasi.

  • ID Model: name
  • ID Daftar yang Diizinkan: smart_reply_model_metadata.associated_allowlist_info.document

Men-deploy model percakapan

Panggil metode deploy pada resource ConversationModel untuk men-deploy model percakapan.

Kolom wajib diisi:

  • Gunakan conversationModels: Masukkan ID model percakapan yang Anda buat sebelumnya.

Mengelola daftar yang diizinkan

Setiap model memiliki daftar yang diizinkan yang terkait dengannya, yang dibuat secara otomatis saat Anda membuat model percakapan. Daftar yang diizinkan berisi semua respons, yang dihasilkan dari set data percakapan Anda, yang dapat ditampilkan kepada agen manusia saat runtime. Bagian ini menjelaskan pembuatan dan pengelolaan daftar yang diizinkan. Anda juga dapat melakukan tindakan ini menggunakan Konsol Agent Assist jika tidak ingin memanggil API secara langsung.

Mengekspor konten daftar yang diizinkan ke file CSV

Pembuatan model akan otomatis membuat daftar yang diizinkan yang terkait dengan model baru. Daftar yang diizinkan adalah resource Dokumen dengan ID unik. ID ditampilkan di smart_reply_model_metadata.associated_allowlist_info.document saat model dibuat. Untuk meninjau dan membuat perubahan pada pesan di daftar yang diizinkan, Anda harus mengekspornya ke bucket Cloud Storage.

Panggil metode export pada resource Document untuk mengekspor dokumen ke file CSV di bucket Cloud Storage. Kolom smart_messaging_partial_update bersifat opsional, tetapi memengaruhi cara Anda dapat memperbarui daftar yang diizinkan ini di masa mendatang. Jika ditetapkan ke true, file CSV yang diekspor akan menyertakan kolom yang berisi ID unik untuk setiap pesan. Anda dapat menggunakan ID pesan untuk hanya memperbarui pesan yang ditentukan, bukan seluruh dokumen. Jika smart_messaging_partial_update ditetapkan ke false atau tidak ditetapkan, kolom tambahan tidak akan muncul dalam file, dan setiap pembaruan pada daftar yang diizinkan akan memerlukan pembaruan pada seluruh dokumen.

Kolom wajib diisi:

  • Jalur gcsDestination mengarah ke bucket Cloud Storage Anda.

Responsnya adalah operasi yang berjalan lama, yang dapat Anda polling untuk memeriksa penyelesaian. Setelah itu, file CSV yang Anda berikan dalam permintaan akan diisi dengan kandidat respons.

Meninjau daftar yang diizinkan

Daftar yang diizinkan yang dihasilkan berisi respons yang otomatis dibuat oleh Smart Reply berdasarkan data percakapan Anda. Sekarang Anda dapat meninjau dan memperbarui respons tersebut sesuai kebutuhan. Download file CSV dari bucket Cloud Storage, edit file tersebut agar sesuai dengan kebutuhan Anda, lalu upload kembali file tersebut ke bucket Cloud Storage. Hanya respons di daftar yang diizinkan yang dapat ditampilkan kepada agen manusia.

Jika Anda mengedit respons, sebaiknya edit hanya untuk ejaan dan tata bahasa, dan jangan ubah arti pesan. Makin banyak teks yang diedit menyimpang dari makna dalam model, makin kecil kemungkinan pesan tersebut muncul.

Anda juga dapat membuat pesan baru jika diperlukan. Serupa dengan pesan yang diedit, pesan yang dibuat cenderung tidak ditampilkan selama runtime.

Memperbarui daftar yang diizinkan

Setelah selesai mengupdate file CSV, Anda dapat menggunakannya untuk mengupdate resource Document. Anda dapat memilih untuk memperbarui seluruh daftar yang diizinkan atau hanya pesan tertentu. Untuk hanya memperbarui pesan yang ditentukan, Anda harus menetapkan smart_messaging_partial_update ke true saat mengekspor daftar yang diizinkan. Jika Anda telah melakukannya, gunakan kolom yang dibuat secara otomatis dalam file CSV yang diekspor untuk menunjukkan pesan yang akan diperbarui.

Panggil metode reload pada resource Document untuk memperbarui daftar yang diizinkan. Untuk hanya memperbarui pesan yang ditentukan, tetapkan smart_messaging_partial_update ke true di ReloadDocumentRequest. Untuk memperbarui seluruh daftar yang diizinkan, biarkan smart_messaging_partial_update tidak ditetapkan atau tetapkan ke false.

Kolom wajib diisi:

  • gcsSource adalah jalur Cloud Storage ke file CSV.
  • Untuk name, gunakan nama resource daftar yang diizinkan yang dihasilkan saat Anda membuat model percakapan.

Contoh permintaan:

{
  "name":"projects/project-id/knowledgeBases/knowledge-base-id/documents/allowlist-id",
  "gcsSource" {
      "uri": "gs://revised_smart_reply_allowlist_path"
   }
}

Mengevaluasi performa model terlatih

Anda dapat menguji performa model setelah men-deploy model dan membuat daftar yang diizinkan untuk model tersebut. Anda juga harus memberikan set data pengujian. Respons yang dihasilkan oleh model Smart Reply terlatih dan daftar yang diizinkan terkaitnya akan dibandingkan dengan pesan agen yang sebenarnya dalam set data pengujian. Set data pengujian harus terdiri dari data percakapan dunia nyata, tetapi tidak boleh berisi data apa pun dalam set data percakapan yang Anda gunakan untuk melatih model. Misalnya, dengan traffic percakapan selama 1 bulan, Anda dapat menggunakan data percakapan selama 3 minggu untuk membuat set data percakapan dan data selama 1 minggu yang tersisa untuk membuat set data pengujian. Set data pengujian harus berisi minimal 1.000 percakapan, tetapi sebagai aturan umum, metrik evaluasi akan lebih andal dengan lebih banyak percakapan dalam set data pengujian. Format set data pengujian sama dengan format set data percakapan.

Untuk membuat evaluasi model baru, panggil metode CreateConversationModelEvaluation pada resource ConversationModel. Metode ini menampilkan operasi yang berjalan lama. Anda dapat melakukan polling operasi untuk memeriksa statusnya, yang akan menampilkan salah satu dari INITIALIZING, RUNNING, SUCCEEDED, CANCELLED, FAILED.

Kolom wajib diisi:

  • InputDataset: Set data pengujian yang akan digunakan untuk menguji performa model.
  • allowlist_document: Daftar yang diizinkan yang terkait dengan model Smart Reply yang akan diuji.

Resource ConversationModelEvaluation ditampilkan saat operasi yang berjalan lama telah selesai. Dua metrik disertakan:

  • allowlist_coverage: Persentase pesan agen dalam set data pengujian yang tercakup dalam daftar yang diizinkan.
  • recall: Persentase pesan agen dalam set data pengujian yang tercantum dalam daftar yang diizinkan dan muncul dalam 3 saran teratas yang ditampilkan oleh model Smart Reply.

Mengonfigurasi profil percakapan

Profil percakapan mengonfigurasi serangkaian parameter yang mengontrol saran yang diberikan kepada agen selama percakapan. Langkah-langkah berikut akan membuat ConversationProfile dengan objek HumanAgentAssistantConfig. Anda juga dapat melakukan tindakan ini menggunakan Konsol Agent Assist jika tidak ingin memanggil API secara langsung.

Membuat profil percakapan

Untuk membuat profil percakapan, panggil metode create pada resource ConversationProfile. Berikan ID basis pengetahuan, ID dokumen, ID project, dan ID model Anda.

Berikut adalah contoh JSON:
{
  "displayName":"smart_reply_assist",
  "humanAgentAssistantConfig":{
    "humanAgentSuggestionConfig":{
      "featureConfigs":[
        {
          "suggestionFeature": { "type":"SMART_REPLY" },
          "queryConfig": {
            "documentQuerySource":{
              "documents": ["projects/PROJECT_ID/knowledgeBases/KNOWLEDGE_BASE_ID/documents/DOCUMENT_ID"]
              },
                "maxResults": 3
              },
            }
          },
          "conversationModelConfig":{
            "model": "projects/PROJECT_ID/conversationModels/MODEL_ID"
          }
        }
      ]
    }
  }
}

Sebaiknya tetapkan nilai SuggestionFeatureConfig.enable_inline_suggestion. Jika nilai ini benar, panggilan berikutnya ke AnalyzeContent akan menghasilkan respons dengan daftar saran.

Respons ini berisi ID profil percakapan baru Anda.

Lihat smart reply generatif untuk mengetahui petunjuk tentang cara mengonfigurasi profil percakapan, menangani percakapan saat runtime, menguji hasil Anda, dan mengirim masukan ke Agent Assist.