ElevenAgents
-
Restriction des outils MCP dans les workflows d’agents : les nœuds de workflow d’agents peuvent désormais limiter les outils MCP qu’un sous-agent est autorisé à appeler. Lorsque l’héritage des outils est désactivé sur un nœud, seuls les outils MCP explicitement sélectionnés sont chargés pour ce sous-agent, ce qui donne aux équipes un contrôle précis de l’accès aux outils à chaque étape du workflow.
-
Téléversement de fichiers dans les conversations : les endpoints créer un agent et mettre à jour un agent prennent désormais en charge un champ
file_inputdansConversationConfig. Lorsqu’il est activé, les utilisateurs finaux peuvent joindre des images ou des PDF dans le chat (nécessite un LLM compatible avec les entrées multimodales). Configurable avecenabled(booléen) etmax_files_per_conversation(entier). -
Relancer l’analyse de conversation : le nouvel endpoint exécuter l’analyse de conversation (
POST /v1/convai/conversations/{conversation_id}/analysis/run) réévalue une conversation terminée à l’aide des critères d’évaluation et paramètres de collecte de données actuels de l’agent, sans nécessiter de nouvel appel. -
Simulation des réponses d’outils pour les tests : les tests de simulation d’agents et les exécutions de suites de tests prennent désormais en charge un champ
tool_mock_configpour contrôler le traitement des appels d’outils pendant les tests. UtilisezMockingStrategy(all,selected,none) pour choisir les outils simulés etMockNoMatchBehavior(call_real_tool,raise_error) pour définir le comportement de secours lorsqu’aucune simulation ne correspond. -
Ordre de tri de la recherche textuelle : l’endpoint recherche textuelle dans les conversations accepte désormais un paramètre de requête
sort_byavec les valeurssearch_score(par défaut) oucreated_at, afin de contrôler si les résultats sont classés par pertinence ou par date de création. -
Connexions d’authentification mTLS : les connexions d’authentification des agents prennent désormais en charge TLS mutuel (
mtls) commeauth_type, en plus des options existantes. De nouveaux schémasCreateMTLSAuthRequestetMTLSAuthResponsesont disponibles pour créer et récupérer des connexions authentifiées par mTLS. -
Message de durée maximale : ajout du champ
max_conversation_duration_messageà la configuration de l’agent. Lorsqu’il est défini sur une chaîne non vide, l’agent envoie ce message à l’utilisateur lorsque la durée maximale de la conversation est atteinte. -
Branche et environnement lors de l’initiation d’une conversation : ajout des champs facultatifs
branch_idetenvironmentaux données client d’initiation de conversation (ConversationInitiationClientDataRequest) et au corps de requête soumettre un appel par lot, permettant le routage vers des branches et environnements d’agents spécifiques.
Musique
- Vidéo vers musique : le nouvel endpoint
POST /v1/music/video-to-musicgénère une musique de fond à partir d’un ou plusieurs fichiers vidéo. Les vidéos sont combinées dans l’ordre. Accepte les paramètres facultatifsdescription(jusqu’à 1 000 caractères) ettags(jusqu’à 10 balises de style telles queupbeatoucinematic) pour influencer la piste générée.
Speech to Text
- Transcrire depuis une URL : l’endpoint convertir la parole en texte accepte désormais un paramètre
source_url(chaîne, facultatif) pour transcrire de l’audio ou de la vidéo depuis une URL hébergée, y compris des vidéos YouTube, des vidéos TikTok et d’autres services d’hébergement vidéo. Il peut remplacer le téléversement direct d’un fichier.
Voix
- Nombre total dans la liste des voix partagées : la réponse de lister les voix partagées inclut désormais un champ
total_count, ce qui facilite l’implémentation de la pagination et l’affichage du nombre de résultats.
Versions des SDK
SDK JavaScript
- v2.41.0 : ajout de la prise en charge du type d’événement WebSocket
multimodal_messagedans les conversations en temps réel ElevenAgents. Inclut une régénération Fern pour les dernières mises à jour du schéma API. - v2.41.1 : régénération Fern pour correspondre au schéma API du 1er avril 2026.
SDK Python
- v2.41.0 : correction pour rendre
audio_interfacefacultatif en mode de conversation texte uniquement, résolvant une erreur d’exécution lors du démarrage d’une session sans audio. Inclut une régénération Fern pour le dernier schéma API.
Packages
Cette version inclut la nouvelle version v1.0.0 des SDK d’agents côté client. Elle apporte d’importants changements avec rupture de compatibilité à @elevenlabs/client, @elevenlabs/react et @elevenlabs/react-native. Consultez les instructions de migration ci-dessous avant la mise à niveau.
Pour faciliter la mise à niveau, nous avons publié une Skill qui aide vos agents à l’effectuer pour vous. Installez-la avec
Vous pouvez en savoir plus sur la version v1 et ses améliorations sur notre blog destiné aux développeurs.
-
@elevenlabs/client@1.0.0 : Changements avec rupture de compatibilité :
- Les classes
InputetOutputne sont plus exportées. Utilisez à la place les interfacesInputControlleretOutputControllerde@elevenlabs/client. Conversationn’est plus une classe : c’est désormais un objet d’espace de noms et un alias de type pourTextConversation | VoiceConversation. Supprimez les vérificationsinstanceof Conversationet les sous-classes.- Le
connectionTypepar défaut est désormais déduit du mode de conversation : les conversations vocales utilisent"webrtc"par défaut et les conversations texte uniquement utilisent"websocket". Pour conserver le comportement précédent pour la voix, transmettez explicitementconnectionType: "websocket". VoiceConversation.wakeLockest désormais privé. TransmettezuseWakeLock: falsedans les options de session pour désactiver la gestion du verrouillage de veille.changeInputDevice()etchangeOutputDevice()renvoient désormaisPromise<void>au lieu dePromise<Input>ouPromise<Output>.- Remplacez
conversation.input.analyser.getByteFrequencyData(data)parconversation.getInputByteFrequencyData(). - Remplacez
conversation.input.setMuted(v)parconversation.setMicMuted(v). - Remplacez
conversation.output.gain.gain.value = vparconversation.setVolume({ volume: v }). getInputVolume(),getOutputVolume(),getInputByteFrequencyData()etgetOutputByteFrequencyData()renvoient désormais0ou unUint8Arrayvide au lieu de lever une erreur lorsqu’aucune conversation n’est active.
- Les classes
-
@elevenlabs/react@1.0.0 : Changements avec rupture de compatibilité :
useConversationnécessite désormais un ancêtreConversationProvider. Enveloppez votre arbre de composants dans<ConversationProvider>et déplacez les options vers le fournisseur ou le hook.- Les exports
DeviceFormatConfigetDeviceInputConfigsont supprimés. Utilisez à la placeFormatConfigetInputDeviceConfigdepuis@elevenlabs/client. - De nouveaux hooks granulaires remplacent le
useConversationmonolithique pour améliorer les performances de rendu :useConversationControls(),useConversationStatus(),useConversationInput(),useConversationMode(),useConversationFeedback()etuseRawConversation(). Chaque hook s’abonne uniquement à l’état dont il a besoin, évitant les nouveaux rendus inutiles. - Nouveau hook
useConversationClientTool(name, handler)pour enregistrer les outils client que les agents peuvent invoquer, avec nettoyage automatique au démontage. - Ajout de la prise en charge du mode muet contrôlé via les props
isMutedetonMutedChangesurConversationProvider.
-
@elevenlabs/react-native@1.0.0 : Changements avec rupture de compatibilité :
- L’API précédente
ElevenLabsProvideretuseConversationa été supprimée et remplacée par des réexports de@elevenlabs/react. RemplacezElevenLabsProviderparConversationProvideretuseConversationpar les hooks granulaires (useConversationControls,useConversationStatus, etc.). - Sur React Native, le package fournit désormais des polyfills pour les globales WebRTC, configure la
AudioSessionnative et enregistre une stratégie de session vocale spécifique à la plateforme à l’importation.
- L’API précédente
-
@elevenlabs/types@0.8.0 : exporte le tableau d’exécution
CALLBACK_KEYScontenant toutes les clés de l’interfaceCallbacks, utilisé en interne par le SDK React pour la composition des callbacks. -
@elevenlabs/client@0.16.0 : ajout de l’événement WebSocket serveur-client
guardrail_triggeredet du callbackonGuardrailTriggered, qui se déclenche lorsque le serveur détecte une violation de garde-fou durant une conversation. Ajout également de discriminants de type àTextConversationetVoiceConversationafin de permettre le filtrage des unions discriminées, ainsi que de surchargesstartSessionqui affinent le type de retour selon l’optiontextOnly. -
@elevenlabs/react-native@0.6.0 : ajout de l’événement WebSocket
guardrail_triggeredet du callbackonGuardrailTriggered, conformément à@elevenlabs/client@0.16.0. -
@elevenlabs/client@1.1.0 : ajout de la prise en charge côté client de la simulation des réponses d’outils dans les conversations d’agents, permettant des scénarios de test qui simulent les résultats d’appels d’outils sans invoquer les outils réels.
-
@elevenlabs/types@0.9.0 : ajout de définitions de type pour la simulation des réponses d’outils dans les conversations d’agents.
-
@elevenlabs/react@1.0.1 : mise à jour pour dépendre de
@elevenlabs/client@1.1.0. -
@elevenlabs/react-native@1.0.1 : mise à jour pour dépendre de
@elevenlabs/client@1.1.0et@elevenlabs/react@1.0.1.
API
Voir les modifications de l'API
Nouveaux endpoints
-
Exécuter l’analyse de conversation :
POST /v1/convai/conversations/{conversation_id}/analysis/run: réexécute l’analyse d’une conversation terminée à l’aide des critères d’évaluation et paramètres de collecte de données actuels de l’agent. -
POST /v1/music/video-to-music: génère une musique de fond à partir d’un ou plusieurs fichiers vidéo fournis sous forme de données de formulaire multipart.
Endpoints mis à jour
ElevenAgents
-
Créer un agent, mettre à jour un agent
- Ajout du champ
file_input(FileInputConfig, facultatif) àConversationConfig, permettant le téléversement de fichiers (images, PDF) dans les conversations de chat lorsque le LLM prend en charge les entrées multimodales - Ajout du champ
max_conversation_duration_message(chaîne, facultatif) à la configuration de l’agent : l’agent envoie ce message lorsque la limite de temps de session est atteinte
- Ajout du champ
-
Créer un test, mettre à jour un test
- Ajout du champ
tool_mock_config(objet, facultatif) : un mappage de noms d’outils vers des entréesToolResponseMockConfigpour contrôler le comportement de simulation des outils pendant la simulation
- Ajout du champ
-
Recherche textuelle dans les conversations
- Ajout du paramètre de requête
sort_by(chaîne, facultatif) : acceptesearch_score(par défaut) oucreated_at
- Ajout du paramètre de requête
-
- Ajout du champ
branch_id(chaîne, facultatif) pour cibler une branche d’agent spécifique - Ajout du champ
environment(chaîne, facultatif) pour spécifier l’environnement cible
- Ajout du champ
-
Appel sortant Twilio, appel sortant via trunk SIP
- Les données client d’initiation de conversation acceptent désormais les champs facultatifs
branch_idetenvironment
- Les données client d’initiation de conversation acceptent désormais les champs facultatifs
Speech to Text
-
- Ajout du paramètre
source_url(chaîne, facultatif) : accepte l’URL d’un fichier audio ou vidéo, d’une vidéo YouTube, d’une vidéo TikTok ou d’un autre média hébergé comme alternative au téléversement de fichier
- Ajout du paramètre
Voix
-
- Ajout du champ
total_count(entier) au modèle de réponse
- Ajout du champ
Alignement forcé
-
- Suppression du paramètre
enabled_spooled_filedu corps de requête de données de formulaire multipart
- Suppression du paramètre