Halaman ini menunjukkan cara melakukan streaming input audio ke permintaan intent deteksi menggunakan API. Dialogflow memproses audio dan mengonversinya menjadi teks sebelum mencoba pencocokan intent. Konversi ini dikenal sebagai input audio, pengenalan ucapan, speech-to-text, atau STT.
Sebelum memulai
Fitur ini hanya berlaku saat menggunakan API untuk interaksi pengguna akhir. Jika menggunakan integrasi, Anda dapat melewati panduan ini.
Anda harus melakukan hal berikut sebelum membaca panduan ini:
- Baca Dasar-dasar Dialogflow.
- Lakukan langkah-langkah penyiapan.
Membuat agen
Jika Anda belum membuat agen, buat sekarang:
- Buka konsol Dialogflow ES.
- Jika diminta, login ke Konsol Dialogflow. Lihat Ringkasan konsol Dialogflow untuk informasi selengkapnya.
- Klik Buat Agen di menu sidebar kiri. (Jika Anda sudah memiliki agen lain, klik nama agen, scroll ke bawah, lalu klik Buat agen baru.)
- Masukkan nama agen, bahasa default, dan zona waktu default Anda.
- Jika Anda telah membuat project, masukkan project tersebut. Jika Anda ingin mengizinkan Dialogflow Console membuat project, pilih Create a new Google project.
- Klik tombol Buat.
Mengimpor file contoh ke agen Anda
Langkah-langkah dalam panduan ini membuat asumsi tentang agen Anda, sehingga Anda perlu import agen yang disiapkan untuk panduan ini. Saat mengimpor, langkah-langkah ini menggunakan opsi restore, yang menimpa semua setelan, intent, dan entity agen.
Untuk mengimpor file, ikuti langkah-langkah berikut:
-
Download file
room-booking-agent.zip
. - Buka konsol Dialogflow ES.
- Pilih agen Anda.
- Klik tombol setelan settings di samping nama agen.
- Pilih tab Ekspor dan Impor.
- Pilih Pulihkan Dari Zip dan ikuti petunjuk untuk memulihkan file zip yang Anda download.
Dasar-dasar streaming
Metode streamingDetectIntent
jenis Session
akan menampilkan objek streaming gRPC dua arah.
Metode yang tersedia untuk objek ini bervariasi menurut bahasa,
jadi lihat dokumentasi referensi untuk library klien Anda guna mengetahui detailnya.
Objek streaming digunakan untuk mengirim dan menerima data secara serentak.
Dengan menggunakan objek ini, klien Anda akan melakukan streaming konten audio ke Dialogflow,
sembari secara bersamaan memproses StreamingDetectIntentResponse
.
Metode streamingDetectIntent
memiliki
parameter query_input.audio_config.single_utterance
yang memengaruhi pengenalan ucapan:
- Jika
false
(default), pengenalan ucapan tidak akan berhenti hingga klien menutup streaming. - Jika
true
, Dialogflow akan mendeteksi satu ucapan lisan dalam audio input. Saat Dialogflow mendeteksi bahwa suara audio telah berhenti atau dijeda, Dialogflow akan menghentikan pengenalan ucapan dan mengirimkanStreamingDetectIntentResponse
dengan hasil pengenalanEND_OF_SINGLE_UTTERANCE
ke klien Anda. Setiap audio yang dikirim ke Dialogflow di streaming setelah penerimaanEND_OF_SINGLE_UTTERANCE
akan diabaikan oleh Dialogflow.
Dalam streaming dua arah, klien dapat setengah menutup objek streaming
untuk memberi sinyal ke server bahwa klien tidak akan mengirim lebih banyak data.
Misalnya, di Java dan Go, metode ini disebut closeSend
.
Penting untuk menutup sebagian (tetapi tidak membatalkan) streaming dalam situasi berikut:
- Klien Anda telah selesai mengirim data.
- Klien Anda dikonfigurasi dengan
single_utterance
ditetapkan ke benar, dan menerimaStreamingDetectIntentResponse
dengan hasil pengenalanEND_OF_SINGLE_UTTERANCE
.
Setelah menutup streaming, klien Anda harus memulai permintaan baru dengan streaming baru sesuai kebutuhan.
Streaming mendeteksi intent
Contoh berikut menggunakan metode streamingDetectIntent
jenis
Session
untuk melakukan streaming audio.
Go
Untuk melakukan autentikasi ke Dialogflow, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Java
Untuk melakukan autentikasi ke Dialogflow, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Node.js
Untuk melakukan autentikasi ke Dialogflow, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Python
Untuk melakukan autentikasi ke Dialogflow, siapkan Kredensial Default Aplikasi. Untuk mengetahui informasi selengkapnya, baca Menyiapkan autentikasi untuk lingkungan pengembangan lokal.
Bahasa tambahan
C#: Ikuti Petunjuk penyiapan C# di halaman library klien, lalu kunjungi Dokumentasi referensi Dialogflow untuk .NET.
PHP: Ikuti petunjuk penyiapan PHP di halaman library klien, lalu kunjungi dokumentasi referensi Dialogflow untuk PHP.
Ruby: Ikuti Petunjuk penyiapan Ruby di halaman library klien, lalu buka Dokumentasi referensi Dialogflow untuk Ruby.
Sampel
Lihat halaman contoh untuk mengetahui praktik terbaik tentang streaming dari mikrofon browser ke Dialogflow.