Bots con Capacidad de Habla

Participantes de Reuniones Impulsados por IA con Personalidades Personalizables

Speaking Bots es una implementación de código abierto que crea agentes de IA para reuniones que pueden unirse y participar en videoconferencias con personalidades distintas y contexto definido en archivos Markdown.

Nuestra implementación extiende el framework de Python de Pipecat para crear:

  • Agentes de reunión que pueden unirse a Google Meet, Zoom o Microsoft Teams a través de la API de Meeting BaaS
  • Personalidades personalizables con contexto único
  • Soporte para ejecutar múltiples instancias localmente o a escala
  • Procesamiento de audio en tiempo real a través de infraestructura WebSocket

La API sigue un diseño minimalista con valores predeterminados razonables, ofreciendo personalización opcional. Un bot puede ser desplegado con solo una URL de reunión y una API key, con parámetros adicionales disponibles para ajustar el comportamiento.

Características

  • Conversaciones Impulsadas por IA: Los bots pueden mantener conversaciones de sonido natural, respondiendo a los participantes de la reunión en tiempo real.
  • Personalidades Personalizables: Despliegue bots con diferentes personalidades y bases de conocimiento específicas a través de contextos definidos en Markdown.
  • Soporte Multiplataforma: Funciona con Google Meet, Zoom y Microsoft Teams a través de una sola API.
  • Detección de Actividad de Voz: Detección inteligente de cuándo hablar y cuándo escuchar con parámetros configurables.
  • Herramientas de Llamada a Funciones: Herramientas integradas para verificar el clima, la hora y otra información contextual que se pueden habilitar o deshabilitar.
  • Gestión de Contexto LLM: Mantiene conversaciones consistentes y coherentes a lo largo de las reuniones.
  • Múltiples Instancias de Bot: Ejecute varios bots en una reunión con diferentes personalidades y roles.

Tecnologías Principales

  • Pipecat: Framework de Python que impulsa el pipeline de procesamiento de audio en tiempo real
  • Meeting BaaS: API de deployment de bot de reunión para plataformas de video
  • Texto a Voz: Cartesia para la síntesis de voz del bot
  • Voz a Texto: Deepgram o Gladia con reconocimiento de idioma
  • IA de Voz: Modelos GPT de OpenAI para la generación de conversaciones
  • Transporte de Datos: Comunicación WebSocket con Protocol Buffers

Uso de la API

La API de Speaking Bot es accesible en speaking.meetingbaas.com. Puede acceder a la especificación OpenAPI en speaking.meetingbaas.com/openapi.json.

La API proporciona endpoints para:

  • Crear y desplegar bots con capacidad de habla en reuniones
  • Eliminar bots de las reuniones
  • Gestionar conexiones WebSocket para la transmisión de audio

Ejemplo de Deployment

Para desplegar un Speaking Bot utilizando la API, simplemente realice una solicitud POST:

speaking_bot.sh
curl -X POST https://speaking.meetingbaas.com/bots \
  -H "Content-Type: application/json" \
  -d '{
    "meeting_url": "https://us06web.zoom.us/j/123456789?pwd=example",
    "personas": ["baas_onboarder"],
    "meeting_baas_api_key": "your-api-key"
  }'
speaking_bot.py
import requests
import json

def deploy_speaking_bot():
    url = "https://speaking.meetingbaas.com/bots"
    headers = {
        "Content-Type": "application/json",
        "x-meeting-baas-api-key": "your-api-key"
    }
    
    payload = {
        "meeting_url": "https://meet.google.com/abc-defg-hij",
        "bot_name": "AI Assistant",
        "personas": ["helpful_assistant"],
        "entry_message": "Hello! I'm your AI assistant for this meeting.",
        "bot_image": "https://example.com/bot-avatar.png",
        "enable_tools": True,
        "extra": {
            "company": "Your Company",
            "meeting_purpose": "Team sync"
        }
    }
    
    response = requests.post(url, headers=headers, json=payload)
    return response.json()

# Deploy the speaking bot
result = deploy_speaking_bot()
print(result)
Meeting BaaS API Preview Features

Recursos