UStackUStack
MulmoChat icon

MulmoChat

MulmoChat ist ein Forschungs-Prototyp für multimodales KI-Chatten: Texte plus visuelle und interaktive Inhalte auf einer Canvas—mit einheitlicher Text-API und lokaler Bildgenerierung via ComfyUI.

MulmoChat

Was ist MulmoChat?

MulmoChat ist ein Forschungsprototyp zur Erkundung multimodaler KI-Chat-Erlebnisse. Statt Interaktionen auf einen Textnachrichtenstrom zu beschränken, unterstützt es konversationelle Erlebnisse mit reichen visuellen und interaktiven Inhalten, die direkt auf einer Canvas gerendert werden.

Der Kernzweck ist die Demonstration einer Architektur, Designmustern und UX-Prinzipien für multimodale Chat-Interfaces, in denen visuelle Erlebnisse und Sprachverständnis in einem einzigen konversationellen Ablauf zusammenwirken.

Wichtige Features

  • Multimodales Chatten auf einer Canvas: Kombiniert Gespräche mit visuellen, interaktiven Inhalten (z. B. Bildern und anderen reichen visuellen Elementen) in einer einzigen Benutzererfahrung.
  • Forschungsorientierte Architektur & UX-Muster: Enthält Dokumentation für produktbezogene Erkundung und technische Umsetzung (z. B. LLM_OS.md und WHITEPAPER.md).
  • Provider-agnostische Textgenerierungs-API: Stellt eine einheitliche Backend-API bereit, die Textgenerierungsantworten über mehrere LLM-Provider normalisiert.
  • Text-Provider-Discovery-Endpoint: GET /api/text/providers liefert konfigurierte Provider (OpenAI, Anthropic, Google Gemini, Ollama) mit Modellvorschlägen und Credential-Verfügbarkeit.
  • Einheitlicher Textgenerierungs-Endpoint: POST /api/text/generate akzeptiert Provider, Modell und Nachrichten und gibt eine normalisierte Textantwort unabhängig vom Anbieter zurück.
  • Lokale Bildgenerierung via ComfyUI: Integration mit ComfyUI Desktop für lokale Bildgenerierung mit lokal gehosteten Modellen und Workflows (z. B. FLUX) statt nur Cloud-Generierung.

So nutzt du MulmoChat

  1. Abhängigkeiten installieren: Führe yarn install aus.
  2. Umgebungsvariablen konfigurieren: Erstelle eine .env-Datei mit Schlüsseln wie OPENAI_API_KEY und GEMINI_API_KEY (je nach aktivierten Features erforderlich), plus optionalen Schlüsseln für Karten (GOOGLE_MAP_API_KEY), KI-gestützte Suche (EXA_API_KEY), HTML-Generierung (ANTHROPIC_API_KEY) usw.
  3. Entwicklungsserver starten: Führe yarn dev aus.
  4. Spracheingabe nutzen (Browser-Berechtigung erforderlich): Erlaube bei Aufforderung Mikrofonzugriff, klicke dann auf „Start Voice Chat“ und sprich mit der KI.
  5. Einheitliche Text-API testen (optional): Mit laufendem Dev-Server die TypeScript-Skripte in server/tests/ ausführen, um Textgenerierung bei konfigurierten Providern zu prüfen.

Für lokale Setups unterstützt das Projekt Ollama (via OLLAMA_BASE_URL, Standard: http://127.0.0.1:11434) und ComfyUI Desktop (via COMFYUI_BASE_URL, Standard: http://127.0.0.1:8000).

Anwendungsfälle

  • Sprachgesteuerte multimodale Interaktionsprototypen: Nutze den Voice-Chat-Flow, um zu testen, wie gesprochene Benutzereingaben ein KI-Erlebnis mit generierten Visuals antreiben.
  • Experimentieren mit KI-nativer „OS“-Mentalität für Product-Teams: Produktstrategen und Designer können die hochstufige Paradigmen-Dokumentation (LLM_OS.md) lesen, um Interaktionskonzepte jenseits reinen Text-Chats zu rahmen.
  • Engineering oder Evaluierung von Orchestrierungs-Stacks: Entwickler und Forscher können Systemdiagramme und Workflow-Details in WHITEPAPER.md nutzen, um Orchestrierungsverhalten für multimodales Chatten zu verstehen und zu bewerten.
  • Chat-Fähigkeiten mit Plugins erweitern: Entwickler folgen TOOLPLUGIN.md für End-to-End-Implementierungen inklusive TypeScript-Verträgen und Vue-Views.
  • Lokale, kontrollierbare Bildgenerierung im Chat-Loop: Bei Bedarf lokaler Generierung (Modell-/Workflow-Kontrolle) ComfyUI Desktop integrieren und lokale API für Bildgenerierung nutzen.

FAQ

F: Was bedeutet „provider-agnostische“ Textgenerierung in MulmoChat?
A: Das Projekt bietet eine einheitliche API (POST /api/text/generate), die provider, model und messages nimmt und eine normalisierte Textantwort über unterstützte Anbieter zurückgibt.

F: Welche LLM-Provider unterstützt die einheitliche Text-API?
A: Die Repository-Text-API-Dokumentation listet OpenAI, Anthropic, Google Gemini und Ollama als unterstützte Provider (Verfügbarkeit abhängig von konfigurierten Credentials).

F: Brauche ich API-Schlüssel für alle Provider?
A: Nein—Features und Provider-Verfügbarkeit hängen von deiner .env-Konfiguration ab. Optionale Schlüssel sind für spezifische Funktionen notiert (z. B. Karten, KI-Suche, HTML-Generierung).

F: Wie prüfe ich, ob Textgenerierung funktioniert?
A: Führe die bereitgestellten Skripte unter server/tests/ aus (z. B. server/tests/test-text-openai.ts, test-text-anthropic.ts usw.). Diese melden das ausgewählte Modell und normalisierte Ausgabe sowie Diagnosen bei Fehlern.

F: Wie wird lokale Bildgenerierung gehandhabt?
A: MulmoChat integriert sich mit ComfyUI Desktop via lokalem API-Server (konfiguriert durch COMFYUI_BASE_URL). Das unterstützt lokale Modelle/Workflows statt nur Cloud-Generierung.

Alternativen

  • Nur-Text-Chat-Anwendungen: Traditionelle Chat-Oberflächen konzentrieren sich auf Nachrichtenströme ohne canvas-basiertes multimodales Rendering, was die Umsetzung vereinfacht, aber multimodale Interaktionsmuster nicht demonstriert.
  • Allgemeine multimodale Model-Clients (separate UI + Model-Aufrufe): Tools, die Bilder und Chat kombinieren, erfordern in der Regel, UI-Rendering und Model-Aufrufe selbst zu komposen; MulmoChat fokussiert auf eine Referenzarchitektur und Interaktionsprinzipien.
  • Lokale Bildgenerierungs-Frontends (ComfyUI oder Ähnliches) ohne Chat-UX-Schicht: Bild-Workflows lokal auszuführen lässt sich außerhalb einer konversationellen Oberfläche machen, liefert aber nicht den einheitlichen multimodalen Chat-Flow, der hier beschrieben wird.
  • Agent-Frameworks mit Tool-Calling (ohne spezifische multimodale Canvas-Architektur): Agent-Tools können Model-Aktionen und Tools orchestrieren, bieten aber möglicherweise nicht dieselben canvas-zentrierten multimodalen Interaktionsmuster.
MulmoChat | UStack