Passer à la navigation

Mode chat

Configurez votre agent pour des conversations uniquement textuelles avec le mode chat

Le mode chat permet à vos agents d’agir comme des agents conversationnels, c’est-à-dire de mener des conversations uniquement textuelles, sans entrée ni sortie audio. Il est utile pour concevoir des interfaces de chat, tester des agents ou lorsqu’un contenu audio n’est pas nécessaire.

Présentation

Il existe deux principales façons d’activer le mode chat :

  1. Configuration de l’agent : configurez votre agent en mode texte uniquement lors de sa création via l’API.
  2. Remplacements à l’exécution : utilisez les remplacements du SDK pour imposer des conversations uniquement textuelles par programmation.

Ce guide couvre les deux approches et explique comment implémenter le mode chat dans différents SDK.

Créer des agents uniquement textuels

Configurez un agent en mode texte uniquement afin qu’il soit le mode par défaut de chaque conversation avec cet agent.

Ouvrez votre agent dans le Dashboard, accédez à l’onglet Advanced et activez l’option Text only. Enregistrez vos modifications.

Pour consulter la référence complète de l’API et toutes les options de configuration disponibles, consultez le champ text only de la documentation de l’API Create Agent.

Remplacements à l’exécution pour le mode texte uniquement

Pour activer le mode chat à l’exécution à l’aide de remplacements, plutôt que par la configuration au niveau de l’agent, vous pouvez utiliser le remplacement textOnly dans votre configuration de conversation :

from elevenlabs.client import ElevenLabs
from elevenlabs.conversational_ai.conversation import Conversation, ConversationInitiationData
# Configure for text-only mode with proper structure
conversation_override = {
"conversation": {
"text_only": True
}
}
config = ConversationInitiationData(
conversation_config_override=conversation_override
)
conversation = Conversation(
elevenlabs,
agent_id,
requires_auth=bool(api_key),
config=config,
# Important: Ensure agent_response callback is set
callback_agent_response=lambda response: print(f"Agent: {response}"),
callback_user_transcript=lambda transcript: print(f"User: {transcript}"),
)
conversation.start_session()

Cette configuration garantit que :

  • Aucune entrée ni sortie audio n’est utilisée.
  • Toutes les communications se font par messages texte.
  • La conversation fonctionne dans un mode d’interface de type chat.

Remarques importantes

Critique : lorsque vous utilisez le mode chat, vous devez vous assurer que l’événement ou rappel agent_response est activé et correctement configuré. Sans cela, les réponses textuelles de l’agent ne seront pas envoyées ni affichées à l’utilisateur.

Remplacements de sécurité : lorsque vous utilisez des remplacements à l’exécution, et non une configuration au niveau de l’agent, vous devez activer les remplacements de conversation dans les paramètres de sécurité de votre agent. Accédez à l’onglet Security de votre agent et activez les remplacements appropriés. Pour plus de détails, consultez la documentation sur les remplacements.

Prérequis essentiels

  1. Événement de réponse de l’agent : configurez toujours le gestionnaire de rappel ou d’événement agent_response afin de recevoir et d’afficher les messages texte de l’agent.

  2. Configuration de l’agent : si votre agent est spécifiquement configuré en mode chat dans les paramètres de l’agent, il utilisera automatiquement des conversations uniquement textuelles sans nécessiter de remplacement.

  3. Aucune interface audio : lorsque vous utilisez le mode texte uniquement, vous n’avez pas besoin de configurer des interfaces audio ni de demander des autorisations de microphone.

Exemple : gérer les réponses de l’agent

def handle_agent_response(response):
"""Critical handler for displaying agent messages"""
print(f"Agent: {response}") # Update your UI with the response
update_chat_ui(response)
config = ConversationInitiationData(
conversation_config_override={"conversation": {"text_only": True}}
)
conversation = Conversation(
elevenlabs,
agent_id,
config=config,
callback_agent_response=handle_agent_response,
)
conversation.start_session()

Envoyer des messages texte

En mode chat, vous devrez envoyer les messages des utilisateurs par programmation plutôt que par audio :

# Send a text message to the agent
conversation.send_user_message("Hello, how can you help me today?")

Avantages en matière de requêtes simultanées

Le mode chat offre des avantages significatifs en matière de requêtes simultanées par rapport aux conversations vocales :

  • Limites plus élevées : les conversations uniquement textuelles bénéficient de limites de requêtes simultanées 25 fois plus élevées que les conversations vocales.
  • Pool distinct : les conversations textuelles utilisent un pool de requêtes simultanées dédié, indépendant des limites des conversations vocales.
  • Évolutivité : idéal pour les applications à haut débit telles que l’assistance client, les chatbots ou les tests automatisés.
ForfaitRequêtes simultanées vocalesRequêtes simultanées uniquement textuelles
Free4100
Starter6150
Creator10250
Pro20500
Scale30750
Business30750
EnterpriseAugmentéesAugmentées (25 fois)

Pour estimer la limite de conversations uniquement textuelles nécessaire à votre trafic, utilisez l’estimateur de requêtes simultanées.

Lors de l’initialisation de la connexion, les conversations uniquement textuelles sont d’abord vérifiées par rapport à votre limite totale de requêtes simultanées pendant le processus de négociation, puis transférées vers le pool distinct de requêtes simultanées uniquement textuelles une fois la connexion établie.

Cas d’usage

Le mode chat est idéal pour :

  • Interfaces de chat : concevoir des interfaces utilisateur de chat traditionnelles sans voix.
  • Tests : tester la logique d’un agent sans dépendances audio.
  • Accessibilité : proposer des alternatives textuelles aux utilisateurs.
  • Environnements silencieux : lorsque l’entrée ou la sortie audio n’est pas appropriée.
  • Tests d’intégration : automatiser les tests des conversations des agents.

Résolution des problèmes

L’agent ne répond pas

Si les réponses de l’agent n’apparaissent pas :

  1. Vérifiez que le rappel agent_response est correctement configuré.
  2. Vérifiez que l’agent est configuré en mode chat ou que le remplacement textOnly est défini.
  3. Assurez-vous que la connexion WebSocket est établie avec succès.

Prochaines étapes