Tutorial: WebRTC dengan relay TURN menggunakan Amazon Kinesis Video Streams
Dalam tutorial ini, Anda membangun koneksi suara WebRTC antara klien browser dan agen yang berjalan AgentCore pada Runtime, menggunakan Amazon Kinesis Video Streams (KVS) mengelola TURN untuk media relay. Agen memproses audio secara real-time menggunakan model dasar Amazon Bedrock untuk percakapan ucapan-ke-ucapan.
Setelah selesai, Anda akan memiliki koneksi WebRTC yang berfungsi di mana audio mengalir dua arah antara browser dan agen Anda.
Tutorial ini membutuhkan VPC dengan jalan keluar internet untuk konektivitas ke titik akhir KVS TURN. Untuk informasi selengkapnya, lihat pertimbangan akses Internet. Semua prasyarat lainnya ditangani oleh aplikasi sampel. Sampel menggunakan AgentCore CLI untuk penerapan ke Runtime. AgentCore
Untuk aplikasi sampel selengkapnya, lihat WebRTC Voice Agent with KVS
Arsitektur
- Klien browser
-
Halaman web yang menangkap audio mikrofon menggunakan API WebRTC browser dan memutar respons audio agen.
- AgentCore Runtime
-
Menghosting agen dan menempel ke VPC pengguna melalui elastic network interface (ENI) di subnet pribadi.
- Agen
-
Aplikasi Python diterapkan ke AgentCore Runtime yang menangani pensinyalan WebRTC dan manajemen kredensi TURN melalui titik
/invocationsakhir, dan mengalirkan audio antara klien dan model dasar. - Pengguna VPC dengan jalan keluar internet
-
Menyediakan konektivitas jaringan dari agen ke server relay KVS TURN. Rute lalu lintas dari ENI di subnet pribadi melalui gateway NAT dan gateway internet untuk mencapai titik akhir TURN.
- Server relai KVS TURN
-
Relay lalu lintas media antara klien browser dan agen. Agen memperoleh kredensi TURN sementara dari KVS menggunakan API. GetIceServerConfig
Cara kerjanya
-
Klien memanggil agen untuk mengambil kredensi KVS TURN dan konfigurasi server ICE.
-
Klien membuat penawaran WebRTC dan mengirimkannya ke agen. Agen membuat koneksi rekan yang dikonfigurasi dengan server KVS TURN dan mengembalikan jawaban.
-
Klien dan agen bertukar kandidat ICE untuk membangun konektivitas melalui server TURN.
-
Setelah terhubung, klien mengalirkan audio mikrofon ke agen melalui WebRTC. Agen meneruskan audio ke model fondasi Amazon Bedrock dan mengalirkan respons lisan model kembali ke klien.