Panduan ini memberikan praktik terbaik untuk menggunakan layanan Dialogflow. Panduan ini dirancang untuk meningkatkan efisiensi dan akurasi serta waktu respons yang optimal dari layanan.
Sebaiknya Anda juga melihat panduan desain agen umum untuk semua jenis agen, dan panduan desain agen suara khusus untuk mendesain agen suara.
Produksi
Sebelum menjalankan agen dalam produksi, pastikan untuk menerapkan praktik terbaik berikut:
- Menggunakan versi agen
- Menggunakan kembali klien sesi
- Menerapkan penanganan error dengan percobaan ulang
Mengaktifkan log audit
Aktifkan log audit Akses Data untuk Dialogflow API di project Anda. Hal ini dapat membantu Anda melacak perubahan waktu desain di agen Dialogflow yang terkait dengan project ini.
Versi agen
Anda harus selalu menggunakan versi agen untuk traffic produksi. Lihat Versi dan lingkungan untuk mengetahui detailnya.
Membuat cadangan agen
Simpan cadangan agen yang diekspor terbaru. Dengan begitu, Anda dapat melakukan pemulihan dengan cepat jika Anda atau anggota tim tidak sengaja menghapus agen atau project.
Penggunaan ulang klien
Anda dapat meningkatkan performa aplikasi
dengan menggunakan kembali instance library klien *Client
selama masa aktif eksekusi aplikasi Anda.
Yang terpenting,
Anda dapat meningkatkan performa panggilan API intent deteksi
dengan menggunakan kembali instance library klien SessionsClient
.
Untuk mengetahui informasi selengkapnya tentang hal ini, lihat panduan Praktik Terbaik dengan Library Klien.
Kumpulan update ke agen
Jika Anda mengirim banyak permintaan API update agen individu dalam jangka waktu yang singkat, permintaan Anda dapat dibatasi. Metode API waktu desain ini tidak diimplementasikan untuk menangani tingkat update yang tinggi untuk satu agen.
Beberapa jenis data memiliki metode batch untuk tujuan ini:
- Gunakan metode
batchUpdate
ataubatchDelete
, bukan mengirim banyak permintaancreate
,patch
, ataudelete
EntityTypes. - Gunakan metode
batchUpdate
ataubatchDelete
, bukan mengirim banyak Intentcreate
,patch
, ataudelete
.
Percobaan ulang error API
Saat memanggil metode API, Anda mungkin menerima respons error. Ada beberapa error yang harus dicoba lagi, karena error tersebut sering kali disebabkan oleh masalah sementara. Ada dua jenis error:
- Error Cloud API.
- Error dikirim dari layanan webhook.
Selain itu, Anda harus mengimplementasikan backoff eksponensial untuk percobaan ulang. Hal ini memungkinkan sistem Anda menemukan tarif yang dapat diterima saat layanan API berada dalam beban berat.
Error Cloud API
Jika Anda menggunakan library klien yang disediakan Google, percobaan ulang error Cloud API dengan backoff eksponensial akan diterapkan untuk Anda.
Jika Anda telah menerapkan library klien Anda sendiri menggunakan REST atau gRPC, Anda harus menerapkan percobaan ulang untuk klien Anda. Untuk mengetahui informasi tentang error yang boleh atau tidak boleh Anda coba lagi, lihat Proposal Peningkatan API: Konfigurasi percobaan ulang otomatis.
Error webhook
Jika panggilan API Anda memicu panggilan webhook, webhook Anda mungkin menampilkan error.
Meskipun Anda menggunakan library klien yang disediakan Google, error webhook tidak akan dicoba lagi secara otomatis.
Kode Anda akan mencoba ulang 503 Service Unavailable
error yang diterima dari webhook.
Lihat dokumentasi layanan webhook untuk mengetahui informasi tentang jenis error webhook dan cara memeriksanya.
Pengujian beban
Sebaiknya jalankan pengujian beban untuk sistem sebelum Anda merilis kode ke produksi. Pertimbangkan titik-titik ini sebelum menerapkan pengujian beban:
Ringkasan | Detail |
---|---|
Menambah beban. | Pengujian beban Anda harus meningkatkan beban yang diterapkan pada layanan Dialogflow. Layanan ini tidak dirancang untuk menangani burst beban yang tiba-tiba, yang jarang dialami dengan traffic sebenarnya. Layanan memerlukan waktu untuk menyesuaikan dengan permintaan beban, jadi tingkatkan kecepatan permintaan secara perlahan, hingga pengujian Anda mencapai beban yang diinginkan. |
Panggilan API dikenai biaya. | Anda akan dikenai biaya untuk panggilan API selama pengujian, dan panggilan tersebut akan dibatasi oleh kuota project. |
Gunakan dummy pengujian. | Anda mungkin tidak perlu memanggil API selama pengujian beban. Jika tujuan uji beban Anda adalah menentukan cara sistem Anda menangani beban, sebaiknya gunakan pengujian ganda sebagai pengganti panggilan yang sebenarnya ke API. Pengujian ganda Anda dapat menyimulasikan perilaku API yang sedang dimuat. |
Gunakan percobaan ulang. | Uji beban Anda harus melakukan percobaan ulang dengan backoff. |
Memanggil Dialogflow dengan aman dari perangkat pengguna akhir
Jangan pernah menyimpan kunci pribadi yang digunakan untuk mengakses Dialogflow API di perangkat pengguna akhir. Ini berlaku untuk menyimpan kunci di perangkat secara langsung dan untuk kunci hard coding dalam aplikasi. Ketika perlu memanggil Dialogflow API, aplikasi klien Anda harus mengirim permintaan ke layanan proxy milik developer pada platform yang aman. Layanan proxy dapat melakukan panggilan Dialogflow yang sebenarnya dan diautentikasi.
Misalnya, Anda tidak boleh membuat aplikasi seluler yang memanggil Dialogflow secara langsung. Jika Anda melakukannya, Anda harus menyimpan kunci pribadi di perangkat pengguna akhir. Aplikasi seluler Anda harus meneruskan permintaan melalui layanan proxy yang aman.