RealtimeVoiceChat : application de chat vocal IA avec réponses vocales en temps réel
Qu'est-ce que RealtimeVoiceChat ?
RealtimeVoiceChat est un projet open source qui vous permet de discuter avec un système intelligent par la voix, et de recevoir des réponses vocales en temps réel. Il transmet des fragments audio via le réseau, convertit la voix en texte, fait traiter le texte par le système intelligent, puis reconvertit le texte en voix. Ce projet prend en charge plusieurs systèmes intelligents (Ollama par défaut, Openai également compatible) et permet de choisir灵活 le style vocal. Il adopte une architecture client-serveur, optimise la faible latence et détecte intelligemment les tours de conversation pour des échanges plus fluides. Il est recommandé de déployer avec Docker ; les performances seront meilleures avec un GPU NVIDIA compatible CUDA.

Fonctionnalités principales de RealtimeVoiceChat
Interaction vocale en streaming : la voix de l'utilisateur est capturée par le navigateur, transmise au backend Python via WebSockets, transcrite en texte en temps réel, envoyée au LLM pour traitement, puis la réponse textuelle est convertie en flux vocal renvoyé à l'utilisateur.
Conception à faible latence : architecture optimisée grâce au streaming de blocs audio, garantissant une conversation fluide.
Détection intelligente des tours : détection dynamique du silence, basculement automatique du temps de parole selon le rythme de la conversation.
Backend IA flexible : prise en charge de plusieurs backends LLM (Ollama par défaut, OpenAI également compatible).
Voix personnalisables : possibilité de choisir différents moteurs de synthèse vocale (comme Kokoro, Coqui, Orpheus).
Interface web épurée : interface utilisateur simple construite avec Vanilla JS et l'API Web Audio.
Déploiement conteneurisé : il est recommandé d'utiliser Docker Compose pour le déploiement, facilitant la gestion des dépendances.
Caractéristiques de RealtimeVoiceChat
Interaction en temps réel : les utilisateurs peuvent converser avec l'IA par la voix, et l'IA répond également en temps réel sous forme vocale.
Collaboration multi-composants : le projet inclut le traitement audio et l'interaction UI côté前端, ainsi que la transcription vocale, le traitement de texte et la synthèse vocale côté backend.
Configurabilité : prise en charge de plusieurs moteurs TTS et modèles LLM, configurables via des variables d'environnement.
Stack technique
Backend : Python 3.x, FastAPI
前端 : HTML, CSS, JavaScript (Vanilla JS, Web Audio API, AudioWorklets)
<Communication : WebSockets
Conteneurisation : Docker, Docker Compose
Bibliothèques IA/ML principales : RealtimeSTT (语音转文本), RealtimeTTS(文本转语音)、transformers (détection des tours, tokenisation), torch/torchaudio (framework de machine learning), ollama/openai (clients LLM)
Traitement audio : numpy, scipy
Installation et déploiement
Installation via Docker (recommandé)
Clonez le projet et accédez au répertoire.
Construisez l'image Docker (télécharge l'image de base, installe les dépendances Python/ML et pré-télécharge le modèle STT par défaut).
Démarrez les services (App et Ollama).
Tirez (pull) le modèle Ollama requis.
Accédez à http://localhost:8000 via le navigateur pour commencer le chat vocal.
Installation manuelle
Créez et activez un environnement virtuel Python.
Installez PyTorch (selon la configuration matérielle).
Installez les autres dépendances (requirements.txt).
Démarrez le serveur FastAPI.
Accédez à http://localhost:8000 via le navigateur pour commencer le chat vocal.
Configuration et personnalisation
Moteur TTS et voix : configurés dans server.py et audio_module.py.
Backend LLM et modèle : configurés dans server.py et llm_module.py.
Paramètres STT : configurés dans transcribe.py.
Sensibilité de la détection des tours : configurée dans turndetect.py.
SSL/HTTPS : configuré dans server.py.
Adresse du projet
Dépôt GitHub :https://github.com/KoljaB/RealtimeVoiceChat
Assistant scénario▸
Apps AI
Actualités AI 