Tindakan Percakapan

Tindakan Percakapan memungkinkan Anda memperluas Asisten Google dengan antarmuka percakapan yang memberi pengguna akses ke produk dan layanan Anda. Actions memanfaatkan mesin natural language understanding (NLU) Asisten yang canggih untuk memproses dan memahami input bahasa alami dan melakukan tugas berdasarkan input tersebut.

Ringkasan

Tindakan Percakapan adalah objek sederhana yang menentukan titik entri (disebut sebagai pemanggilan) ke dalam percakapan:

  • Panggilan menentukan cara pengguna memberi tahu Asisten bahwa mereka ingin memulai percakapan dengan salah satu Action Anda. Pemanggilan Action ditentukan oleh satu intent yang akan dicocokkan saat pengguna meminta Action.
  • Percakapan menentukan cara pengguna berinteraksi dengan Action setelah dipanggil. Anda membuat percakapan dengan intent, jenis, adegan, dan perintah.
  • Selain itu, Actions Anda dapat mendelegasikan pekerjaan tambahan ke fulfillment, yang merupakan layanan web yang berkomunikasi dengan Action Anda melalui webhook. Ini memungkinkan Anda melakukan validasi data, memanggil layanan web lainnya, melakukan logika bisnis, dan lainnya.

Anda menggabungkan satu atau beberapa Action, berdasarkan kasus penggunaan yang penting bagi pengguna Anda ke dalam container logis yang disebut project Actions. Project Action Anda berisi seluruh model pemanggilan (kumpulan semua pemanggilan), yang memungkinkan pengguna mulai dari tempat logis dalam model percakapan (semua kemungkinan yang dapat dikatakan pengguna dan semua kemungkinan cara Anda merespons pengguna).

Gambar 1. Kumpulan Action yang berfungsi sebagai titik masuk ke model percakapan. Intent yang memenuhi syarat untuk pemanggilan dianggap global.

Pemanggilan

Pemanggilan dikaitkan dengan nama tampilan yang merepresentasikan merek, nama, atau persona yang memungkinkan pengguna meminta Asisten untuk memanggil Action Anda. Pengguna dapat menggunakan nama tampilan ini sendiri (disebut pemanggilan utama) atau kombinasi dengan frasa deep link opsional untuk memanggil Actions Anda.

Misalnya, pengguna dapat mengucapkan frasa berikut untuk memanggil tiga Action terpisah dalam project dengan nama tampilan "Fakta tentang Google":

  • "Ok Google, bicara dengan Fakta tentang Google"
  • "Ok Google, bicara dengan Fakta tentang Google untuk mendapatkan fakta perusahaan"
  • "Ok Google, bicara dengan Fakta tentang Google untuk mendapatkan fakta sejarah"

Pemanggilan pertama dalam contoh ini adalah pemanggilan utama. Pemanggilan ini dikaitkan dengan intent sistem khusus bernama actions.intent.MAIN. Pemanggilan kedua dan ketiga adalah pemanggilan deep link yang memungkinkan Anda menentukan frasa tambahan yang memungkinkan pengguna meminta fungsi tertentu. Pemanggilan ini sesuai dengan intent pengguna yang Anda tetapkan sebagai global. Setiap pemanggilan dalam contoh ini memberikan titik entri ke dalam percakapan dan sesuai dengan satu Action.

Gambar 2. Contoh pemanggilan utama

Gambar 2 menjelaskan alur pemanggilan utama yang umum:

  1. Saat meminta Action, pengguna biasanya meminta Action melalui nama tampilan Anda kepada Asisten.
  2. Asisten mencocokkan permintaan pengguna dengan intent yang sesuai yang cocok dengan permintaan. Dalam hal ini adalah actions.intent.MAIN.
  3. Action akan diberi tahu tentang pencocokan intent dan merespons dengan perintah yang sesuai untuk memulai percakapan dengan pengguna.

Percakapan

Percakapan menentukan cara pengguna berinteraksi dengan Action setelah dipanggil. Anda membangun interaksi ini dengan menentukan input pengguna yang valid untuk percakapan Anda, logika untuk memproses input tersebut, dan perintah terkait untuk merespons pengguna. Gambar dan penjelasan berikut menunjukkan bagaimana cara kerja percakapan umum dengan komponen tingkat rendah percakapan: intent, jenis, adegan, dan perintah.

Gambar 3. Contoh percakapan

Gambar 3 menjelaskan pergantian percakapan yang umum:

  1. Saat pengguna mengucapkan sesuatu, NLU Asisten akan mencocokkan input dengan intent yang sesuai. Intent cocok jika model bahasa untuk intent tersebut dapat sangat cocok atau sama persis dengan input pengguna. Anda menentukan model bahasa dengan menentukan frasa pelatihan, atau contoh hal-hal yang mungkin ingin diucapkan pengguna. Asisten menggunakan frasa pelatihan ini dan memperluasnya untuk membuat model bahasa intent.
  2. Saat cocok dengan intent, NLU Asisten dapat mengekstrak parameter yang Anda butuhkan dari input. Parameter ini memiliki jenis yang terkait dengannya, seperti tanggal atau angka. Anda menganotasi bagian tertentu dari frasa pelatihan intent untuk menentukan parameter yang ingin diekstrak.
  3. Selanjutnya, scene akan memproses intent yang cocok. Anda dapat menganggap scene sebagai eksekutor logika suatu Action, melakukan tugas berat dan melakukan logika yang diperlukan untuk memajukan percakapan. Scene berjalan dalam satu loop, sehingga menyediakan siklus proses eksekusi fleksibel yang memungkinkan Anda melakukan hal-hal seperti memvalidasi parameter intent, melakukan pengisian slot, mengirimkan perintah kembali kepada pengguna, dan lainnya.
  4. Setelah selesai dijalankan, scene biasanya mengirim permintaan kembali ke pengguna untuk melanjutkan percakapan atau dapat mengakhiri percakapan.

Pemenuhan pemesanan

Selama pemanggilan atau percakapan, Action Anda dapat memicu webhook yang memberi tahu layanan fulfillment untuk melakukan beberapa tugas.

Gambar 4. Contoh percakapan

Gambar 4 menjelaskan cara menggunakan fulfillment untuk menghasilkan perintah, yang merupakan cara umum untuk menggunakan fulfillment:

  1. Pada titik tertentu eksekusi Action Anda, tindakan ini dapat memicu webhook yang mengirimkan permintaan ke pengendali webhook terdaftar (layanan fulfillment Anda) dengan payload JSON.
  2. fulfillment Anda memproses permintaan, seperti memanggil REST API untuk melakukan beberapa pencarian data atau memvalidasi beberapa data dari payload JSON. Cara yang sangat umum untuk menggunakan fulfillment adalah dengan membuat perintah dinamis saat runtime sehingga percakapan Anda lebih disesuaikan dengan pengguna saat ini.
  3. Fulfillment Anda menampilkan respons kembali ke Action yang berisi payload JSON. Aplikasi dapat menggunakan data dari payload untuk melanjutkan eksekusinya dan merespons kembali ke pengguna.