API Bots Parlants
Agents IA conversationnels pour les réunions
L'API Bots Parlants vous permet de déployer des agents IA conversationnels (personnalités) dans les réunions Google Meet, Microsoft Teams et Zoom. Ces bots peuvent parler, écouter et interagir en temps réel, alimentés par Pipecat et Meeting BaaS.
- Déployer des bots avec des personnalités et voix personnalisées
- Diffusion audio en temps réel et reconnaissance vocale
- Support pour plusieurs plateformes et plusieurs bots par réunion
- Endpoints OpenAPI et HTTP pour une intégration facile
L'API est open source et peut être auto-hébergée ou utilisée via l'endpoint public.
Fonctionnalités principales
- IA conversationnelle : Les bots peuvent parler, écouter et interagir dans les réunions
- Personnalités personnalisées : Définir des personnalités, voix et messages d'entrée uniques
- Multi-plateforme : Google Meet, Microsoft Teams, Zoom
- Audio WebSocket : Diffusion audio en temps réel avec Pipecat
- Open Source : Code source complet disponible pour la personnalisation
- Déploiement facile : Lancer des bots avec un simple POST HTTP
Endpoints API
POST /bots
— Déployer un bot parlant dans une réunionDELETE /bots/{bot_id}
— Supprimer un bot d'une réunionGET /health
— Vérification de santé
Consultez la documentation API et la spécification OpenAPI pour plus de détails.
Configuration et installation
Prérequis
- Python 3.11+
grpc_tools
pour la compilation des protocoles buffer- Ngrok pour le développement local
- Poetry pour la gestion des dépendances
Configuration rapide
-
Cloner le dépôt :
git clone https://github.com/Meeting-Baas/speaking-meeting-bot.git cd speaking-meeting-bot
-
Installer les dépendances :
# Installer Poetry curl -sSL https://install.python-poetry.org | python3 - # Configurer Poetry et installer les dépendances poetry env use python3.11 poetry install poetry shell
-
Configurer l'environnement :
cp env.example .env
Éditer
.env
avec vos clés API :MEETING_BAAS_API_KEY
: Pour l'intégration de plateforme de réunionOPENAI_API_KEY
: Pour le LLM de conversationCARTESIA_API_KEY
: Pour la synthèse vocaleGLADIA_API_KEY
ouDEEPGRAM_API_KEY
: Pour la reconnaissance vocale
-
Lancer le serveur :
poetry run uvicorn app:app --reload --host 0.0.0.0 --port 8766
Pour des instructions de configuration détaillées, consultez le guide de configuration officiel.
Exemples d'utilisation de l'API
Déployer un bot parlant
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"
}'
curl -X POST "https://speaking.meetingbaas.com/bots" \
-H "x-meeting-baas-api-key: <token>" \
-H "Content-Type: application/json" \
-d '{
"bot_image": "https://example.com/bot-avatar.png",
"bot_name": "Assistant de réunion",
"enable_tools": true,
"entry_message": "Bonjour ! Je suis là pour vous aider avec la réunion.",
"extra": {
"company": "ACME Corp",
"meeting_purpose": "Sync hebdomadaire"
},
"meeting_url": "https://meet.google.com/abc-defg-hij",
"personas": [
"helpful_assistant",
"meeting_facilitator"
],
"prompt": "Vous êtes Assistant de réunion, un bot IA concis et professionnel qui aide à résumer les points clés et à maintenir la réunion sur la bonne voie. Parlez clairement et restez sur le sujet."
}'
import requests
import json
def deployer_bot_parlant():
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": "Assistant IA",
"personas": ["helpful_assistant"],
"entry_message": "Bonjour ! Je suis votre assistant IA pour cette réunion.",
"bot_image": "https://example.com/bot-avatar.png",
"enable_tools": True,
"extra": {
"company": "Votre Entreprise",
"meeting_purpose": "Sync d'équipe"
}
}
response = requests.post(url, headers=headers, json=payload)
return response.json()
# Déployer le bot parlant
resultat = deployer_bot_parlant()
print(resultat)
Supprimer un bot d'une réunion
curl -X DELETE "https://speaking.meetingbaas.com/bots/{bot_id}" \
-H "x-meeting-baas-api-key: your-api-key"
Personnalités : Agents conversationnels personnalisés
Définissez vos propres personnalités avec des prompts, voix et comportements uniques. Consultez le répertoire des personnalités pour des exemples.
- Chaque personnalité est un dossier avec des fichiers Markdown pour le prompt, le contexte et les règles
- Assignez une personnalité par nom lors du lancement d'un bot
- Prend en charge les messages d'entrée personnalisés, images et IDs de voix
Exemple de configuration de personnalité
# Exemple de structure de personnalité
personas/
├── helpful_assistant/
│ ├── prompt.md # Prompt de personnalité principal
│ ├── context.md # Contexte de fond
│ └── rules.md # Règles comportementales
├── meeting_facilitator/
│ ├── prompt.md
│ ├── context.md
│ └── rules.md
└── interviewer/
├── prompt.md
├── context.md
└── rules.md
Personnalités disponibles
- helpful_assistant: Assistance générale de réunion et prise de notes
- meeting_facilitator: Aide à guider les réunions et maintenir les discussions sur la bonne voie
- interviewer: Mène des entretiens structurés et pose des questions de suivi
- baas_onboarder: Spécialisé pour les réunions d'intégration client
Développement local
Pour le développement et les tests locaux :
# Exécuter en mode développement local avec configuration automatique ngrok
poetry run python run.py --local-dev
# Accéder à la documentation API interactive
open http://localhost:8766/docs
# Tester avec les outils CLI
poetry run python scripts/batch.py -c 1 --meeting-url VOTRE_URL_REUNION

Commencer
Prêt à déployer des agents IA conversationnels dans vos réunions ? Consultez nos ressources complètes :