View a markdown version of this page

Tutorial: WebRTC dengan relay TURN menggunakan Amazon Kinesis Video Streams - Batuan Dasar Amazon AgentCore

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 TURN on. GitHub

Arsitektur

Diagram arsitektur yang menunjukkan WebRTC AgentCore pada Runtime dengan KVS TURN menyampaikan melalui VPC.
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 /invocations akhir, 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

  1. Klien memanggil agen untuk mengambil kredensi KVS TURN dan konfigurasi server ICE.

  2. Klien membuat penawaran WebRTC dan mengirimkannya ke agen. Agen membuat koneksi rekan yang dikonfigurasi dengan server KVS TURN dan mengembalikan jawaban.

  3. Klien dan agen bertukar kandidat ICE untuk membangun konektivitas melalui server TURN.

  4. 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.