Modo de chat

Configura tu agente para conversaciones solo de texto con el modo de chat

El modo de chat permite que tus agentes actúen como agentes de chat; es decir, que mantengan conversaciones solo de texto sin entrada ni salida de audio. Es útil para crear interfaces de chat, probar agentes o cuando no se necesita audio.

Descripción general

Hay dos formas principales de activar el modo de chat:

  1. Configuración del agente: Configura tu agente en modo solo texto al crearlo mediante la API
  2. Anulaciones en tiempo de ejecución: Usa anulaciones del SDK para forzar conversaciones solo de texto mediante programación

Esta guía cubre ambos enfoques y cómo implementar el modo de chat en distintos SDK.

Crear agentes solo de texto

Configura un agente en modo solo texto para que sea el ajuste predeterminado en todas las conversaciones con ese agente.

Abre tu agente en el panel, ve a la pestaña Advanced y activa el interruptor Text only. Guarda los cambios.

Para consultar la referencia completa de la API y todas las opciones de configuración disponibles, consulta el campo de solo texto en la documentación de la API Create Agent .

Anulaciones en tiempo de ejecución para el modo solo texto

Para activar el modo de chat en tiempo de ejecución mediante anulaciones (en lugar de configurarlo a nivel de agente), puedes usar la anulación textOnly en la configuración de tu conversación:

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()

Esta configuración garantiza que:

  • No se usa entrada ni salida de audio
  • Toda la comunicación se realiza mediante mensajes de texto
  • La conversación funciona en un modo de interfaz similar a un chat

Notas importantes

Importante: Al usar el modo de chat, debes asegurarte de que el evento o callback agent_response esté activado y bien configurado. De lo contrario, las respuestas de texto del agente no se enviarán ni mostrarán al usuario.

Anulaciones de seguridad: Al usar anulaciones en tiempo de ejecución (no configuración a nivel de agente), debes activar las anulaciones de conversación en los ajustes de seguridad de tu agente. Ve a la pestaña Security de tu agente y activa las anulaciones correspondientes. Para más información, consulta la documentación sobre anulaciones.

Requisitos clave

  1. Evento de respuesta del agente: Configura siempre el callback o gestor de eventos agent_response para recibir y mostrar los mensajes de texto del agente.

  2. Configuración del agente: Si tu agente está configurado específicamente en modo de chat en los ajustes del agente, usará automáticamente conversaciones solo de texto sin necesidad de la anulación.

  3. Sin interfaz de audio: Al usar el modo solo texto, no necesitas configurar interfaces de audio ni solicitar permisos de micrófono.

Ejemplo: gestionar respuestas del agente

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()

Enviar mensajes de texto

En el modo de chat, tendrás que enviar los mensajes del usuario mediante programación en lugar de mediante audio:

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

Ventajas de concurrencia

El modo de chat ofrece importantes ventajas de concurrencia frente a las conversaciones de voz:

  • Límites más altos: Las conversaciones solo de chat tienen límites de concurrencia 25 veces superiores a las conversaciones de voz
  • Grupo independiente: Las conversaciones de texto usan un grupo de concurrencia dedicado, independiente de los límites de conversaciones de voz
  • Escalabilidad: Ideal para aplicaciones de alto rendimiento como atención al cliente, chatbots o pruebas automatizadas
PlanConcurrencia de vozConcurrencia solo de chat
Free4100
Starter6150
Creator10250
Pro20500
Scale30750
Business30750
EnterpriseAmpliadaAmpliada (25x)

Durante el inicio de la conexión, las conversaciones solo de chat se comprueban inicialmente con respecto a tu límite total de concurrencia durante el proceso de handshake y, después, se transfieren al grupo independiente de concurrencia solo de chat cuando se establece la conexión.

Casos de uso

El modo de chat es ideal para:

  • Interfaces de chat: Crear interfaces de chat tradicionales sin voz
  • Pruebas: Probar la lógica del agente sin dependencias de audio
  • Accesibilidad: Ofrecer alternativas basadas en texto a usuarios
  • Entornos silenciosos: Cuando la entrada o salida de audio no es adecuada
  • Pruebas de integración: Pruebas automatizadas de conversaciones de agentes

Resolución de problemas

El agente no responde

Si no aparecen las respuestas del agente:

  1. Comprueba que el callback agent_response esté bien configurado
  2. Comprueba que el agente esté configurado para el modo de chat o que se haya establecido la anulación textOnly
  3. Asegúrate de que la conexión WebSocket se haya establecido correctamente

Siguientes pasos