Intent

Intent mengkategorikan niat pengguna akhir untuk satu giliran percakapan. Dibandingkan dengan intent ES, intent CX telah disederhanakan untuk menjadikannya resource yang lebih dapat digunakan kembali.

Intent berisi data berikut:

Masa Berlaku Definisi
Nama tampilan Nama yang ditampilkan di konsol untuk intent.
Label Label yang membantu mengategorikan intent. Misalnya: intent head.
Frasa latihan Frasa pelatihan adalah contoh frasa yang mungkin diketik atau dikatakan pengguna akhir, yang dikenal sebagai input pengguna akhir. Jika input pengguna akhir menyerupai salah satu frasa tersebut, Dialogflow akan cocok dengan intent. Anda tidak perlu menentukan setiap contoh yang mungkin, karena machine learning bawaan Dialogflow akan memperluas daftar Anda dengan frasa lain yang serupa.
Parameter Anda menentukan frasa pelatihan untuk menggunakan parameter guna mengekstrak nilai dari bagian tertentu pada input pengguna akhir.
Pola DTMF Lihat DTMF untuk integrasi telepon.

Pencocokan intent

Saat pengguna akhir memasukkan input (teks, ucapan, atau penekanan tombol telepon), Dialogflow akan membandingkan input tersebut dengan frasa latihan intent untuk menemukan yang paling cocok. Proses ini disebut pencocokan intent. Pencocokan intent hanya dapat terjadi untuk intent yang terkait dengan rute intent (pengendali status dengan persyaratan intent) dalam cakupan.

Input penekanan tombol dicocokkan sesuai dengan pola DTMF. Namun, saat menelusuri intent yang cocok dengan teks, Dialogflow akan memberi skor potensi kecocokan dengan keyakinan deteksi intent, yang juga dikenal sebagai skor keyakinan. Nilai-nilai ini berkisar dari 0.0 (benar-benar tidak pasti) hingga 1.0 (benar-benar pasti). Setelah intent diberi skor, ada dua kemungkinan hasil:

  • Jika intent skor tertinggi memiliki skor keyakinan lebih besar dari atau sama dengan setelan batas klasifikasi, maka intent tersebut ditampilkan sebagai kecocokan.
  • Jika tidak ada intent yang memenuhi nilai minimum tersebut, peristiwa tidak ada kecocokan akan dipanggil.

Model ML Dialogflow memiliki tingkat kepekaan huruf besar/kecil yang dapat menghasilkan skor kecocokan yang sedikit berbeda untuk input pengguna akhir, yang hanya berbeda dalam kapitalisasi. Lihat selengkapnya di panduan praktik terbaik desain agen.

Frasa latihan

Frasa pelatihan adalah contoh frasa yang mungkin diketik atau dikatakan pengguna akhir, disebut sebagai input pengguna akhir. Untuk setiap intent, Anda membuat banyak frasa pelatihan. Jika input pengguna akhir menyerupai salah satu frasa tersebut, Dialogflow akan cocok dengan intent.

Misalnya, frasa pelatihan "Saya ingin pizza" melatih agen Anda untuk mengenali input pengguna akhir yang mirip dengan frasa tersebut, seperti "Dapatkan pizza" atau "Pesan pizza".

Anda tidak perlu menentukan setiap contoh yang mungkin, karena machine learning bawaan Dialogflow akan memperluas daftar Anda dengan frasa lain yang serupa. Anda harus membuat setidaknya 10–20 frasa pelatihan (bergantung pada kompleksitas intent), sehingga agen Anda dapat mengenali berbagai input pengguna akhir. Misalnya, jika Anda ingin intent mengenali input pengguna akhir tentang warna favorit mereka, Anda dapat menentukan frasa pelatihan berikut:

  • "Saya suka warna merah"
  • "Warna favorit saya adalah kuning"
  • "hitam"
  • "Biru adalah favorit saya"
  • ...

Anotasi frasa pelatihan

Anda dapat mengontrol ekstraksi data pengguna akhir dengan menganotasi bagian frasa pelatihan dan mengonfigurasi parameter terkait.

Misalnya, pertimbangkan frasa pelatihan seperti "Apa prakiraan cuaca besok untuk Tokyo?" Anda harus menganotasi "tomorrow" dengan parameter date dan "Tokyo" dengan parameter location. Saat Anda menganotasi bagian frasa pelatihan, Dialogflow akan menyadari bahwa bagian-bagian tersebut hanyalah contoh nilai aktual yang akan disediakan oleh pengguna akhir saat runtime. Untuk input pengguna akhir seperti "Bagaimana prakiraan cuaca hari Jumat untuk Jakarta?", Dialogflow akan mengekstrak parameter date dari "Q" dan parameter location dari "Sydney".

Anda harus menganotasi semua bagian frasa pelatihan yang dimaksudkan untuk diekstrak sebagai parameter. Jika tidak, Dialogflow tidak akan mengekstrak nilainya.

Saat mem-build agen dengan konsol, sebagian besar anotasi dibuat secara otomatis saat Anda menambahkan frasa pelatihan yang berisi bagian-bagian yang dapat dicocokkan dengan jenis entity yang sudah ada. Bagian ini akan ditandai di konsol. Anda dapat mengedit anotasi dan parameter ini sesuai kebutuhan.

Untuk menganotasi frasa pelatihan secara manual dengan konsol:

  1. Pilih bagian frasa pelatihan yang ingin diberi anotasi.
  2. Pilih jenis entitas yang diinginkan dari daftar.
  3. Parameter dibuat untuk Anda dalam tabel parameter di bawah.

Saat membangun agen dengan API, Anda harus menganotasi bagian frasa pelatihan secara manual. Lihat jenis TrainingPhrase yang digunakan oleh jenis Intent.

Pilih protokol dan versi untuk referensi Intent:

Protokol V3 V3beta1
REST Resource intent Resource intent
RPC Antarmuka Intent Antarmuka Intent
C++ IntentsClient Tidak tersedia
C# IntentsClient Tidak tersedia
Go IntentsClient Tidak tersedia
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Tidak tersedia Tidak tersedia
Python IntentsClient IntentsClient
Ruby Tidak tersedia Tidak tersedia

Entitas implisit yang dibuat oleh frasa pelatihan

Sebagian besar entity kustom ditentukan secara eksplisit dengan membuat jenis entity dan menambahkan entri entity. Namun, entitas kustom juga dapat berisi nilai implisit. Ini terjadi saat Anda menganotasi teks frasa pelatihan, dengan teks yang dianotasi bukan merupakan nilai yang ditentukan oleh jenis entity yang dipilih. Teks yang dianotasi akan menjadi nilai referensi entity untuk entri entity yang ditambahkan secara implisit. Jika jenis entity adalah entity peta, teks juga menjadi sinonim untuk entri entity.

Niat sambutan default

Saat Anda membuat agen, intent sambutan default akan dibuat untuk Anda. Untuk beberapa bahasa, intent memiliki frasa pelatihan sederhana seperti "Halo" atau "Halo" yang dimaksudkan untuk mencocokkan input pengguna akhir awal. Anda dapat mengedit intent ini sesuai keinginan.

Saat menggunakan API, Anda dapat mereferensikan intent ini dengan ID intent berikut:

00000000-0000-0000-0000-000000000000

Jika agen Anda memulai percakapan, Anda dapat memicu intent ini menggunakan API. Gunakan nilai projects/<PROJECT_ID>/locations/<LOCATION_ID>/agents/<AGENT_ID>/intents/00000000-0000-0000-0000-000000000000 di kolom QueryInput.intent.intent saat memanggil metode detectIntent atau streamingDetectIntent.

Niat negatif default

Saat membuat agen, intent negatif default akan dibuat untuk Anda. Anda dapat menambahkan frasa pelatihan ke intent ini yang berfungsi sebagai contoh negatif. Mungkin ada kasus saat input pengguna akhir memiliki sedikit kemiripan dengan frasa latihan dalam intent normal, tetapi Anda tidak ingin input ini cocok dengan intent normal.

Misalnya, agen pemesanan ruang mungkin memiliki frasa pelatihan seperti "Saya ingin memesan ruang". Jika pengguna akhir ingin membeli buku tentang kamar, mereka mungkin akan mengatakan "Saya ingin membeli buku tentang kamar." Untuk memastikan input pengguna akhir tidak cocok dengan intent, Anda dapat menambahkan frasa tersebut sebagai contoh negatif.

Selain itu, Anda harus menambahkan kemungkinan frasa yang berada di luar cakupan agen, sehingga frasa tersebut tidak akan cocok dengan intent apa pun. Namun, hindari menambahkan frasa yang sangat besar. Misalnya, jika Anda menentukan 10.000 frasa intent negatif default, hal ini akan berdampak negatif pada pencocokan intent normal.

Anda harus meninjau frasa ini secara rutin, karena beberapa frasa ini mungkin awalnya berada di luar cakupan untuk agen, tetapi kemudian ditambahkan ke intent.

Intent negatif default berdampak pada semua pencocokan intent. Frasa yang Anda tambahkan dapat menguntungkan pencocokan untuk satu intent, tetapi dapat membahayakan pencocokan untuk intent yang lain. Misalnya, Anda dapat menambahkan "panggilan internasional" ke niat negatif default agar tidak cocok dengan niat perjalanan internasional. Namun, hal ini juga akan mencegah frasa tersebut cocok dengan intent panggilan internasional.

Saat menggunakan API, Anda dapat mereferensikan intent ini dengan ID intent berikut:

00000000-0000-0000-0000-000000000001

Membatalkan intent

Selama percakapan, pengguna akhir mungkin ingin membatalkan topik percakapan saat ini. Misalnya, halaman yang saat ini aktif mungkin meminta tanggal untuk janji temu baru, tetapi pengguna akhir telah memutuskan untuk tidak membuat janji temu baru. Pengguna akhir mungkin mengucapkan sesuatu seperti "batal" atau "Saya tidak ingin janji temu baru". Untuk menangani situasi ini, Anda dapat membuat satu atau beberapa intent pembatalan untuk agen Anda. Anda dapat menamai intent pembatalan ini sesuai keinginan, tetapi biasanya menyertakan "cancel" dalam namanya. Anda harus mengaitkan intent pembatalan ini dengan rute intent yang berada dalam cakupan pada titik yang relevan dalam percakapan. Rute intent ini harus bertransisi ke halaman yang sesuai untuk menangani pembatalan.

Frasa pelatihan untuk intent pembatalan harus menangani upaya pembatalan umum dan khusus topik. Contoh:

  • Batal
  • Hentikan
  • Saya berubah pikiran
  • Tidak jadi
  • Kembali
  • Kembali
  • Saya tidak ingin janji temu baru
  • Batalkan janji temu baru
  • Hapus janji temu baru

Membuat intent

Untuk membuat intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Klik +Create.
  7. Masukkan data intent.
  8. Klik Save.

API

Lihat metode create untuk jenis Intent.

Pilih protokol dan versi untuk referensi Intent:

Protokol V3 V3beta1
REST Resource intent Resource intent
RPC Antarmuka Intent Antarmuka Intent
C++ IntentsClient Tidak tersedia
C# IntentsClient Tidak tersedia
Go IntentsClient Tidak tersedia
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Tidak tersedia Tidak tersedia
Python IntentsClient IntentsClient
Ruby Tidak tersedia Tidak tersedia

Menghapus intent

Untuk menghapus intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Arahkan mouse ke intent yang ingin dihapus.
  7. Klik tombol hapus .

API

Lihat metode delete untuk jenis Intent.

Pilih protokol dan versi untuk referensi Intent:

Protokol V3 V3beta1
REST Resource intent Resource intent
RPC Antarmuka Intent Antarmuka Intent
C++ IntentsClient Tidak tersedia
C# IntentsClient Tidak tersedia
Go IntentsClient Tidak tersedia
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Tidak tersedia Tidak tersedia
Python IntentsClient IntentsClient
Ruby Tidak tersedia Tidak tersedia

Mengakses data intent

Untuk mengakses data intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Klik intent yang ingin Anda akses.
  7. Melihat atau memperbarui data intent.
  8. Klik Simpan untuk menyimpan perubahan.

API

Lihat metode get dan patch/update untuk jenis Intent.

Pilih protokol dan versi untuk referensi Intent:

Protokol V3 V3beta1
REST Resource intent Resource intent
RPC Antarmuka Intent Antarmuka Intent
C++ IntentsClient Tidak tersedia
C# IntentsClient Tidak tersedia
Go IntentsClient Tidak tersedia
Java IntentsClient IntentsClient
Node.js IntentsClient IntentsClient
PHP Tidak tersedia Tidak tersedia
Python IntentsClient IntentsClient
Ruby Tidak tersedia Tidak tersedia

Saran intent

Dialogflow secara otomatis menganalisis kemunculan yang tidak cocok selama percakapan dan dapat menyarankan intent baru atau merekomendasikan frasa pelatihan tambahan untuk intent yang ada. Menerima saran ini dapat membantu menghindari terjadinya tidak ada kecocokan di masa mendatang.

Saat menggunakan saran, Anda dapat menyesuaikan Ukuran Cluster. Nilai ukuran cluster yang lebih kecil menyarankan lebih banyak intent dengan lebih sedikit frasa pelatihan per intent. Nilai ukuran cluster yang lebih besar menunjukkan intent yang lebih sedikit dengan lebih banyak frasa pelatihan per intent.

Untuk menerima saran intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Klik tab Saran.
  7. Sesuaikan Cluster Size sesuai keinginan.
  8. Pilih saran.
  9. Pilih frasa latihan yang Anda inginkan.
  10. Untuk intent target, tambahkan frasa pelatihan ke intent yang sudah ada atau intent baru.
  11. Klik Save atau Create New untuk menyimpan perubahan. Saat Anda menerima saran intent, intent akan tetap ada dalam daftar saran.

Intent pemisahan

Anda dapat membagi satu intent menjadi dua intent menggunakan konsol. Antarmuka ini memungkinkan Anda memilih frasa pelatihan dari intent sumber dan memindahkannya ke intent baru:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Pilih intent yang ingin Anda pisahkan.
  7. Klik Pisahkan.
  8. Pilih intent dari intent sumber.
  9. Klik Pindahkan ke kanan.
  10. Berikan detail lainnya untuk intent target.
  11. Klik Pisahkan.

Membandingkan dan menggabungkan intent

Anda dapat membandingkan atau menggabungkan dua intent dengan satu intent menggunakan konsol:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Pilih dua intent yang ingin Anda bandingkan atau gabungkan.
  7. Klik Bandingkan.
  8. Frasa latihan ditampilkan berdampingan untuk perbandingan.
  9. Untuk menggabungkan kedua intent, klik Merge.

Mengekspor dan mengimpor intent

Anda dapat mengekspor dan mengimpor intent untuk berbagi di seluruh agen.

Salah satu opsi format ekspor adalah CSV, yang memiliki kolom berikut:

  • Nama Tampilan Intent
  • Language
  • Frasa

Setiap entri berisi nama tampilan, bahasa, dan frasa pelatihan pertama; atau hanya frasa pelatihan untuk intent yang dideklarasikan sebelumnya. Dialogflow mengenkode anotasi dalam frasa pelatihan yang diekspor, sehingga anotasi dipulihkan saat mengimpor. Format untuk encoding ini adalah:

(annotated part)[entity, parameter]

Contoh:

Intent Display Name,Language,Phrase
Shirt Selection,en,I want a (green)[@sys.color, color] shirt
,,I would like a (yellow)[@sys.color, color] shirt
Store Hours,en,When are you open?
,,What are your hours?

Saat mengimpor intent, mungkin ada konflik penggabungan saat nama tampilan untuk intent di agen yang ada cocok dengan intent yang diimpor. Anda dapat mengontrol perilaku penggabungan jika nama tampilan intent cocok dengan memilih salah satu opsi berikut:

  • Ganti intent yang ada: Intent yang diimpor akan menimpa intent dengan nama yang sama di agen yang ada.
  • Ganti nama dan impor sebagai intent baru: Nama intent yang diimpor diganti dengan menambahkan "_1" ke nama tampilan.
  • Gabungkan dengan intent yang ada: Frasa pelatihan intent yang diimpor akan ditambahkan ke intent yang ada. Jika ada frasa pelatihan yang sama, frasa tersebut tidak akan diduplikasi.
  • Pertahankan intent asli: Intent yang ada tetap tidak berubah, dan intent yang bertentangan akan diabaikan. Intent yang tidak bertentangan akan diimpor.

Untuk mengekspor intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Pilih setiap intent yang ingin diekspor.
  7. Klik Export selected intent.
  8. Pilih format dan tujuan yang diinginkan.
  9. Klik Submit.

Untuk mengimpor intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Klik Import.
  7. Pilih sumber.
  8. Jika ada konflik, jendela dialog akan ditampilkan untuk memilih perilaku penggabungan.
  9. Klik Submit.

Mengekspor dan mengimpor frasa pelatihan

Anda dapat mengekspor dan mengimpor frasa pelatihan untuk intent yang ada.

Format file untuk impor adalah CSV tanpa judul kolom dan satu kolom. Contoh:

"I want a pony"
"I need a pony"
"I must have a pony"

Saat mengimpor frasa pelatihan, Anda dapat memilih salah satu mode impor berikut:

  • Impor sebagai frasa pelatihan baru: Frasa dalam file ditambahkan ke daftar frasa yang ada.
  • Mengganti frasa pelatihan yang ada: Frasa pelatihan yang ada akan dihapus dan frasa pelatihan dari file akan ditambahkan.

Secara default, frasa pelatihan yang diimpor akan otomatis dianotasi. Anda dapat menonaktifkan perilaku ini dengan memilih Lewati anotasi otomatis.

Untuk mengekspor frasa pelatihan untuk intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Pilih intent.
  7. Scroll ke bawah ke bagian Frasa pelatihan.
  8. Pilih frasa pelatihan yang ingin diekspor.
  9. Klik Ekspor.

Untuk mengimpor frasa pelatihan untuk intent:

Konsol

  1. Buka Konsol Dialogflow CX.
  2. Pilih project Google Cloud Anda.
  3. Pilih agen Anda.
  4. Pilih tab Kelola.
  5. Klik Intent.
  6. Pilih intent.
  7. Scroll ke bawah ke bagian Frasa pelatihan.
  8. Jika mau, pilih lewati anotasi otomatis.
  9. Klik tombol impor tepat di atas daftar frasa pelatihan.
  10. Pilih file dan mode impor.
  11. Klik Submit.

Saat mendesain agen, terkadang ada baiknya untuk menganggap intent sebagai intent kepala atau intent tambahan.

Intent head mengidentifikasi tujuan utama pengguna akhir untuk berinteraksi dengan agen. Intent tambahan mengidentifikasi pertanyaan berikutnya dari pengguna akhir yang terkait dengan intent utama. Pertanyaan-pertanyaan berikutnya dapat memberikan konteks tambahan untuk kebutuhan pengguna akhir, atau mungkin berupa pertanyaan lanjutan yang membantu pengguna akhir mengklarifikasi atau lebih memahami sesuatu.

Intent head biasanya merupakan salah satu intent pertama yang cocok dalam percakapan, dan pertanyaan pengguna akhir selanjutnya cocok dengan intent tambahan. Contoh:

Dialog Penjelasan
Pengguna akhir: Aktifkan ponsel baru
Agen: Saya tentu bisa membantu Anda. Berapa 4 digit terakhir dari nomor telepon yang ingin Anda aktifkan?
Intent head cocok
Pengguna akhir: 1234
Agen: Siap mengaktifkan ponsel sekarang?
Parameter telah ditetapkan
Pengguna akhir: Apakah semua pesan saya akan diteruskan ke ponsel baru saya?
Agen: ...
Intent tambahan cocok