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