Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Tutoriel : WebRTC avec relais TURN à l'aide d'Amazon Kinesis Video Streams
Dans ce didacticiel, vous allez créer une connexion vocale WebRTC entre un client de navigateur et un agent s'exécutant sur AgentCore Runtime, en utilisant TURN géré par Amazon Kinesis Video Streams (KVS) pour le relais multimédia. L'agent traite le son en temps réel à l'aide d'un modèle de base Amazon Bedrock pour les conversations vocales.
Lorsque vous aurez terminé, vous disposerez d'une connexion WebRTC fonctionnelle qui diffusera le son de manière bidirectionnelle entre le navigateur et votre agent.
Ce didacticiel nécessite un VPC avec sortie Internet pour la connectivité aux points de terminaison KVS TURN. Pour plus d'informations, consultez la section Considérations relatives à l'accès à Internet. Tous les autres prérequis sont gérés par l'exemple d'application. L'exemple utilise la AgentCore CLI pour le déploiement sur AgentCore Runtime.
Pour l'exemple d'application complet, voir WebRTC Voice Agent avec KVS TURN activé.
Architecture
- Client de navigateur
-
Page Web qui capture le son du microphone à l'aide de l'API WebRTC du navigateur et diffuse la réponse audio de l'agent.
- AgentCore Durée d'exécution
-
Héberge l'agent et se connecte au VPC de l'utilisateur via une interface réseau élastique (ENI) dans un sous-réseau privé.
- Agent
-
Application Python déployée sur AgentCore Runtime qui gère la signalisation WebRTC et la gestion des informations d'identification TURN via le
/invocationspoint de terminaison, et diffuse le son entre le client et un modèle de base. - VPC utilisateur avec sortie Internet
-
Fournit une connectivité réseau entre l'agent et le serveur relais KVS TURN. Le trafic est acheminé depuis l'ENI dans le sous-réseau privé via une passerelle NAT et une passerelle Internet pour atteindre les points de terminaison TURN.
- Serveur relais KVS TURN
-
Relaie le trafic multimédia entre le client du navigateur et l'agent. L'agent obtient des informations d'identification TURN temporaires auprès de KVS à l'aide de l'GetIceServerConfigAPI.
Comment ça marche
-
Le client appelle l'agent pour récupérer les informations d'identification KVS TURN et la configuration du serveur ICE.
-
Le client crée une offre WebRTC et l'envoie à l'agent. L'agent crée une connexion homologue configurée avec les serveurs KVS TURN et renvoie une réponse.
-
Le client et l'agent échangent des candidats ICE pour établir une connectivité via le serveur TURN.
-
Une fois connecté, le client transmet le son du microphone à l'agent via WebRTC. L'agent transmet l'audio à un modèle Amazon Bedrock Foundation et retransmet la réponse vocale du modèle au client.