MulmoChat
MulmoChat é um protótipo de pesquisa para chat multimodal com texto e conteúdo visual/interativo em um canvas, com API unificada e geração local via ComfyUI.
O que é MulmoChat?
MulmoChat é um protótipo de pesquisa para explorar experiências de chat multimodal com IA. Em vez de limitar as interações a um fluxo de mensagens de texto, ele visa suportar experiências conversacionais que incluem conteúdo visual e interativo rico renderizado diretamente em um canvas.
O propósito principal é demonstrar uma arquitetura, padrões de design e princípios de UX para interfaces de chat multimodal, onde experiências visuais e compreensão de linguagem funcionam juntas em um único fluxo conversacional.
Principais Recursos
- Chat multimodal em canvas: Projetado para combinar conversa com conteúdo visual e interativo (por exemplo, imagens e outros elementos visuais ricos) na mesma experiência do usuário.
- Arquitetura e padrões de UX orientados para pesquisa: Inclui documentação voltada tanto para exploração de produtos quanto para implementação de engenharia (ex.: LLM_OS.md e WHITEPAPER.md).
- API de geração de texto independente de provedor: Expõe uma API backend unificada que normaliza respostas de geração de texto entre múltiplos provedores de LLM.
- Endpoint de descoberta de provedores de texto:
GET /api/text/providersretorna os provedores configurados (OpenAI, Anthropic, Google Gemini, Ollama), junto com sugestões de modelos e disponibilidade de credenciais. - Endpoint unificado de geração de texto:
POST /api/text/generateaceita provedor, modelo e mensagens, retornando uma resposta de texto normalizada independentemente do fornecedor. - Integração de geração local de imagens via ComfyUI: Integra com ComfyUI Desktop para geração local de imagens usando modelos e workflows hospedados localmente (ex.: FLUX), em vez de depender apenas de geração em nuvem.
Como Usar o MulmoChat
- Instalar dependências: Execute
yarn install. - Configurar variáveis de ambiente: Crie um arquivo
.envcom chaves comoOPENAI_API_KEYeGEMINI_API_KEY(exigidas pelo projeto dependendo dos recursos ativados), além de chaves opcionais para recursos de mapa (GOOGLE_MAP_API_KEY), busca com IA (EXA_API_KEY), geração de HTML (ANTHROPIC_API_KEY) e mais. - Iniciar o servidor de desenvolvimento: Execute
yarn dev. - Usar entrada de voz (requer permissão do navegador): Quando solicitado, permita acesso ao microfone, clique em “Start Voice Chat” e fale com a IA.
- Testar a API de texto unificada (opcional): Com o servidor de dev rodando, execute os scripts TypeScript em
server/tests/para verificar a geração de texto contra os provedores configurados.
Para setups locais, o projeto suporta Ollama (via OLLAMA_BASE_URL, padrão http://127.0.0.1:11434) e ComfyUI Desktop (via COMFYUI_BASE_URL, padrão http://127.0.0.1:8000).
Casos de Uso
- Prototipagem de interações multimodais com voz em primeiro lugar: Use o fluxo de chat de voz para testar como entrada falada do usuário pode impulsionar uma experiência de IA que também gera visuais.
- Experimentação com mentalidade de “OS” nativa de IA para equipes de produto: Estrategistas e designers de produto podem ler a documentação de paradigma de alto nível (LLM_OS.md) para enquadrar conceitos de interação além do chat apenas de texto.
- Engenharia ou avaliação de stacks de orquestração: Desenvolvedores e pesquisadores podem usar os diagramas do sistema e detalhes de workflow em WHITEPAPER.md para entender e avaliar o comportamento de orquestração em chat multimodal.
- Extensão de capacidades de chat com plugins: Desenvolvedores podem seguir TOOLPLUGIN.md para implementar extensões de ponta a ponta, incluindo contratos TypeScript e views Vue.
- Geração de imagens local e controlável em loop de chat: Quando a geração de imagens precisa rodar localmente (controle de modelo/workflow), integre com ComfyUI Desktop e use a API local para gerar imagens.
FAQ
P: O que significa geração de texto “independente de provedor” no MulmoChat?
R: O projeto fornece uma API unificada (POST /api/text/generate) que recebe provider, model e messages e retorna uma resposta de texto normalizada entre os fornecedores suportados.
P: Quais provedores de LLM a API de texto unificada suporta?
R: A documentação da API de texto do repositório lista OpenAI, Anthropic, Google Gemini e Ollama como provedores suportados (com disponibilidade dependendo das credenciais configuradas).
P: Preciso de chaves de API para todos os provedores?
R: Não — recursos e disponibilidade de provedores dependem do que você configurar no seu .env. Chaves opcionais são indicadas para capacidades específicas (ex.: mapas, busca com IA, geração de HTML).
P: Como verifico se a geração de texto funciona?
R: Execute os scripts fornecidos em server/tests/ (ex.: server/tests/test-text-openai.ts, test-text-anthropic.ts etc.). Esses scripts relatam o modelo selecionado e saída normalizada, e registram diagnósticos em caso de falha.
P: Como é tratada a geração local de imagens?
R: MulmoChat integra com ComfyUI Desktop via servidor de API local (configurado por COMFYUI_BASE_URL). Isso suporta uso local de modelo/workflow em vez de apenas geração em nuvem.
Alternativas
- Aplicativos de chat apenas com texto: Interfaces de chat tradicionais focam em fluxos de mensagens sem renderização multimodal baseada em canvas, o que simplifica a implementação, mas não demonstra padrões de interação multimodal.
- Clientes de modelos multimodais gerais (UI separada + chamadas de modelo): Ferramentas que combinam imagens e chat geralmente exigem que você componha renderização de UI e chamadas de modelo; o MulmoChat foca em uma arquitetura de referência e princípios de interação.
- Front-ends de geração de imagens locais (ComfyUI ou similar) sem camada de UX de chat: Executar fluxos de imagens localmente pode ser feito fora de uma interface conversacional, mas você não obtém o fluxo de chat multimodal unificado descrito aqui.
- Frameworks de agentes com chamadas de ferramentas (sem arquitetura específica de canvas multimodal): Ferramentas de agentes podem orquestrar ações de modelos e ferramentas, mas podem não fornecer os mesmos padrões de interação multimodal centrados em canvas.
Alternativas
BookAI.chat
BookAI permite que você converse com seus livros usando IA, simplesmente fornecendo o título e o autor.
Ably Chat
Ably Chat é uma API de chat e SDKs para criar apps de mensagens em tempo real com reações, presença e edição/remoção de mensagens.
Grok AI Assistant
Grok é um assistente de IA gratuito desenvolvido pela xAI, projetado para priorizar a verdade e a objetividade, ao mesmo tempo que oferece capacidades avançadas como acesso a informações em tempo real e geração de imagens.
AakarDev AI
AakarDev AI é uma plataforma poderosa que simplifica o desenvolvimento de aplicações de IA com integração perfeita de banco de dados vetorial, permitindo implantação rápida e escalabilidade.
skills-janitor
skills-janitor audita, rastreia e compara suas skills do Claude Code com nove ações focadas por comandos slash, sem dependências.
Talkpal
Talkpal é um professor de idiomas AI que ajuda os usuários a aprender idiomas mais rapidamente por meio de conversas imersivas e feedback em tempo real.