Bots Parlants
Participants de Meeting Alimentés par l'IA avec des Personas Personnalisables
Speaking Bots est une implémentation open source qui crée des agents de meeting IA pouvant rejoindre et participer à des réunions vidéo avec des personnalités distinctes et un contexte défini dans des fichiers Markdown.
Notre implémentation étend le framework Python de Pipecat pour créer :
- Des agents de meeting pouvant rejoindre Google Meet, Zoom ou Microsoft Teams via l'API Meeting BaaS
- Des personas personnalisables avec un contexte unique
- La prise en charge de plusieurs instances en local ou à grande échelle
- Le traitement audio en temps réel via une infrastructure WebSocket
L'API suit une conception minimaliste avec des valeurs par défaut sensées tout en offrant une personnalisation optionnelle. Un bot peut être déployé avec simplement une URL de meeting et une clé API, avec des paramètres supplémentaires disponibles pour adapter son comportement.
Fonctionnalités
- Conversations Alimentées par l'IA : Les bots peuvent engager des conversations naturelles, répondant aux participants du meeting en temps réel.
- Personas Personnalisables : Déployez des bots avec différentes personnalités et des bases de connaissances spécifiques via des contextes définis en Markdown.
- Support Multiplateforme : Fonctionne avec Google Meet, Zoom et Microsoft Teams via une seule API.
- Détection de l'Activité Vocale : Détection intelligente du moment de parler et d'écouter avec des paramètres configurables.
- Outils d'Appel de Fonctions : Outils intégrés pour vérifier la météo, l'heure et d'autres informations contextuelles pouvant être activés ou désactivés.
- Gestion du Contexte LLM : Maintient des conversations cohérentes tout au long des meetings.
- Plusieurs Instances de Bot : Exécutez plusieurs bots dans un même meeting avec différentes personas et rôles.
Technologies Principales
- Pipecat : Framework Python alimentant le pipeline de traitement audio en temps réel
- Meeting BaaS : API de déploiement de bots de meeting pour les plateformes vidéo
- Synthèse Vocale : Cartesia pour la synthèse vocale des bots
- Reconnaissance Vocale : Deepgram ou Gladia avec reconnaissance de la langue
- IA Vocale : Modèles OpenAI GPT pour la génération de conversations
- Transport de Données : Communication WebSocket avec Protocol Buffers
Utilisation de l'API
L'API Speaking Bot est accessible sur speaking.meetingbaas.com. Vous pouvez accéder à la spécification OpenAPI sur speaking.meetingbaas.com/openapi.json.
L'API fournit des endpoints pour :
- Créer et déployer des bots parlants dans les meetings
- Retirer des bots des meetings
- Gérer les connexions WebSocket pour le streaming audio
Exemple de Déploiement
Pour déployer un Speaking Bot via l'API, effectuez simplement une requête POST :
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"
}'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)