MulmoChat
MulmoChat est un prototype de recherche d’IA conversationnelle multimodale : texte et contenus visuels interactifs sur un canvas, API de génération unifiée + images locales via ComfyUI.
Qu’est-ce que MulmoChat ?
MulmoChat est un prototype de recherche pour explorer les expériences de chat IA multimodales. Au lieu de limiter les interactions à un flux de messages texte, il vise à supporter des expériences conversationnelles incluant des contenus visuels riches et interactifs rendus directement sur un canvas.
L’objectif principal est de démontrer une architecture, des patterns de design et des principes UX pour les interfaces de chat multimodales où les expériences visuelles et la compréhension du langage collaborent au sein d’un même flux conversationnel.
Fonctionnalités clés
- Chat multimodal sur canvas : Conçu pour combiner conversation et contenus visuels interactifs (par exemple, images et autres éléments visuels riches) dans une même expérience utilisateur.
- Architecture et patterns UX orientés recherche : Inclut une documentation visant à la fois l’exploration produit et l’implémentation technique (par ex., LLM_OS.md et WHITEPAPER.md).
- API de génération de texte agnostique aux fournisseurs : Expose une API backend unifiée qui normalise les réponses de génération de texte entre plusieurs fournisseurs LLM.
- Point de découverte des fournisseurs texte :
GET /api/text/providersretourne les fournisseurs configurés (OpenAI, Anthropic, Google Gemini, Ollama), avec suggestions de modèles et disponibilité des credentials. - Point de génération de texte unifié :
POST /api/text/generateaccepte un fournisseur, un modèle et des messages, et retourne une réponse texte normalisée indépendamment du vendor. - Intégration de génération d’images locales via ComfyUI : S’intègre avec ComfyUI Desktop pour générer des images localement via des modèles et workflows hébergés localement (par ex., FLUX), sans dépendre uniquement de la génération cloud.
Comment utiliser MulmoChat
- Installer les dépendances : Exécutez
yarn install. - Configurer les variables d’environnement : Créez un fichier
.envavec des clés commeOPENAI_API_KEYetGEMINI_API_KEY(requises selon les fonctionnalités activées), plus des clés optionnelles pour les cartes (GOOGLE_MAP_API_KEY), la recherche IA (EXA_API_KEY), la génération HTML (ANTHROPIC_API_KEY), etc. - Démarrer le serveur de développement : Exécutez
yarn dev. - Utiliser l’entrée vocale (autorisation navigateur requise) : Autorisez l’accès au microphone quand demandé, puis cliquez sur “Start Voice Chat” et parlez à l’IA.
- Tester l’API texte unifiée (optionnel) : Avec le serveur dev lancé, exécutez les scripts TypeScript dans
server/tests/pour vérifier la génération de texte avec les fournisseurs configurés.
Pour les setups locaux, le projet supporte Ollama (via OLLAMA_BASE_URL, par défaut http://127.0.0.1:11434) et ComfyUI Desktop (via COMFYUI_BASE_URL, par défaut http://127.0.0.1:8000).
Cas d’usage
- Prototypes d’interaction multimodale vocale : Utilisez le flux de chat vocal pour tester comment une entrée utilisateur parlée peut piloter une expérience IA générant aussi des visuels.
- Expérimenter l’état d’esprit “OS” natif IA pour équipes produit : Stratèges et designers produits peuvent lire la documentation paradigme de haut niveau (LLM_OS.md) pour cadrer des concepts d’interaction au-delà du chat texte seul.
- Ingénierie ou évaluation de stacks d’orchestration : Développeurs et chercheurs peuvent utiliser les diagrammes système et détails de workflow dans WHITEPAPER.md pour comprendre et évaluer le comportement d’orchestration pour chat multimodal.
- Extension des capacités de chat via plugins : Les développeurs peuvent suivre TOOLPLUGIN.md pour implémenter des extensions de bout en bout, incluant contrats TypeScript et vues Vue.
- Génération d’images locale et contrôlable en boucle de chat : Quand la génération d’images doit s’exécuter localement (contrôle modèle/workflow), intégrez avec ComfyUI Desktop et utilisez l’API locale pour générer des images.
FAQ
Q: Que signifie “agnostique aux fournisseurs” pour la génération de texte dans MulmoChat ?
R: Le projet fournit une API unifiée (POST /api/text/generate) qui prend provider, model et messages et retourne une réponse texte normalisée entre les vendors supportés.
Q: Quels fournisseurs LLM l’API texte unifiée supporte-t-elle ?
R: La documentation API texte du repo liste OpenAI, Anthropic, Google Gemini et Ollama comme fournisseurs supportés (disponibilité selon credentials configurés).
Q: Ai-je besoin de clés API pour tous les fournisseurs ?
R: Non—les fonctionnalités et disponibilité des fournisseurs dépendent de votre configuration dans .env. Les clés optionnelles sont indiquées pour des capacités spécifiques (par ex., cartes, recherche IA, génération HTML).
Q: Comment vérifier que la génération de texte fonctionne ?
R: Exécutez les scripts fournis sous server/tests/ (par ex., server/tests/test-text-openai.ts, test-text-anthropic.ts, etc.). Ces scripts rapportent le modèle sélectionné et la sortie normalisée, et loguent les diagnostics en cas d’échec.
Q: Comment la génération d’images locales est-elle gérée ?
R: MulmoChat s’intègre avec ComfyUI Desktop via un serveur API local (configuré via COMFYUI_BASE_URL). Cela supporte l’usage de modèles/workflows locaux plutôt que la génération cloud uniquement.
Alternatives
- Applications de chat texte uniquement : Les interfaces de chat traditionnelles se concentrent sur les flux de messages sans rendu multimodal basé sur canvas, ce qui simplifie la mise en œuvre mais ne démontre pas les schémas d’interaction multimodale.
- Clients de modèles multimodaux généraux (UI + appels de modèles séparés) : Les outils combinant images et chat nécessitent généralement de composer soi-même le rendu UI et les appels de modèles ; MulmoChat se concentre sur une architecture de référence et des principes d’interaction.
- Front-ends de génération d’images locales (ComfyUI ou similaires) sans couche UX de chat : Exécuter des workflows d’images localement peut se faire en dehors d’une interface conversationnelle, mais vous n’obtiendrez pas le flux de chat multimodal unifié décrit ici.
- Frameworks d’agents avec appels d’outils (sans architecture canvas multimodale spécifique) : Les outils d’agents peuvent orchestrer les actions de modèles et d’outils, mais ne fournissent pas nécessairement les mêmes schémas d’interaction multimodale centrés sur canvas.
Alternatives
BookAI.chat
BookAI vous permet de discuter avec vos livres en utilisant l'IA en fournissant simplement le titre et l'auteur.
Ably Chat
Ably Chat : API et SDK de chat temps réel pour créer des applications personnalisées, avec réactions, présence et édition/suppression de messages.
Grok AI Assistant
Grok est un assistant IA gratuit développé par xAI, conçu pour privilégier la vérité et l'objectivité tout en offrant des capacités avancées telles que l'accès à l'information en temps réel et la génération d'images.
AakarDev AI
AakarDev AI est une plateforme puissante qui simplifie le développement d'applications d'IA avec une intégration fluide des bases de données vectorielles, permettant un déploiement rapide et une évolutivité.
skills-janitor
skills-janitor audite, suit l’usage et compare vos compétences Claude Code avec neuf actions d’analyse par commandes slash, sans dépendances.
Talkpal
Talkpal est un professeur de langue AI qui aide les utilisateurs à apprendre les langues plus rapidement grâce à des conversations immersives et des retours en temps réel.