MulmoChat
MulmoChat — исследовательский прототип мультимодального AI-чата: текст + визуальный интерактив на холсте, единый API для генерации и локальная генерация через ComfyUI.
Что такое MulmoChat?
MulmoChat — исследовательский прототип для изучения мультимодальных AI-чатов. Вместо ограничения взаимодействий текстовым потоком сообщений он поддерживает разговорные опыты с богатым визуальным и интерактивным контентом, отображаемым прямо на холсте.
Основная цель — продемонстрировать архитектуру, шаблоны дизайна и принципы UX для мультимодальных чат-интерфейсов, где визуальные опыты и понимание языка работают вместе в едином разговорном потоке.
Ключевые возможности
- Мультимодальный чат на холсте: Объединяет разговор с визуальным интерактивным контентом (например, изображениями и другими богатыми визуальными элементами) в едином пользовательском опыте.
- Исследовательская архитектура и UX-шаблоны: Включает документацию для продуктового изучения и инженерной реализации (например, LLM_OS.md и WHITEPAPER.md).
- Независимый от провайдера API генерации текста: Предоставляет единый бэкенд-API, нормализующий ответы генерации текста для нескольких провайдеров LLM.
- Эндпоинт обнаружения провайдеров текста:
GET /api/text/providersвозвращает настроенные провайдеры (OpenAI, Anthropic, Google Gemini, Ollama) с предложениями моделей и доступностью учётных данных. - Единый эндпоинт генерации текста:
POST /api/text/generateпринимает провайдера, модель и сообщения, возвращая нормализованный текстовый ответ независимо от вендора. - Интеграция локальной генерации изображений через ComfyUI: Интегрируется с ComfyUI Desktop для локальной генерации изображений с использованием локальных моделей и воркфлоу (например, FLUX), без зависимости только от облачной генерации.
Как использовать MulmoChat
- Установите зависимости: Выполните
yarn install. - Настройте переменные окружения: Создайте файл
.envс ключами вродеOPENAI_API_KEYиGEMINI_API_KEY(требуются в зависимости от включённых функций), плюс опциональные ключи для карт (GOOGLE_MAP_API_KEY), AI-поиска (EXA_API_KEY), генерации HTML (ANTHROPIC_API_KEY) и т.д. - Запустите сервер разработки: Выполните
yarn dev. - Используйте голосовой ввод (требуется разрешение браузера): При запросе разрешите доступ к микрофону, затем нажмите “Start Voice Chat” и говорите с AI.
- Протестируйте единый текстовой API (опционально): С запущенным dev-сервером выполните TypeScript-скрипты в
server/tests/, чтобы проверить генерацию текста для настроенных провайдеров.
Для локальных установок проект поддерживает Ollama (через OLLAMA_BASE_URL, по умолчанию http://127.0.0.1:11434) и ComfyUI Desktop (через COMFYUI_BASE_URL, по умолчанию http://127.0.0.1:8000).
Сценарии использования
- Прототипы голосового мультимодального взаимодействия: Используйте голосовой чат для тестирования, как речевой ввод пользователя может управлять AI-опытом с генерируемыми визуалами.
- Эксперименты с AI-нативным мышлением «OS» для продуктовых команд: Стратеги и дизайнеры могут изучить документацию высокого уровня (LLM_OS.md) для концепций взаимодействий за пределами текстового чата.
- Инженерия или оценка стеков оркестрации: Разработчики и исследователи используют схемы системы и детали воркфлоу в WHITEPAPER.md для понимания и оценки поведения оркестрации в мультимодальном чате.
- Расширение чата плагинами: Разработчики следуют TOOLPLUGIN.md для реализации расширений end-to-end, включая TypeScript-контракты и Vue-компоненты.
- Локальная, контролируемая генерация изображений в чат-цикле: Когда генерация изображений должна быть локальной (контроль модели/воркфлоу), интегрируйтесь с ComfyUI Desktop и используйте локальный API.
FAQ
Q: Что значит «независимый от провайдера» генерация текста в MulmoChat?
A: Проект предоставляет единый API (POST /api/text/generate), который принимает provider, model и messages и возвращает нормализованный текстовый ответ для поддерживаемых вендоров.
Q: Какие провайдеры LLM поддерживает единый текстовый API?
A: Документация текстового API в репозитории перечисляет OpenAI, Anthropic, Google Gemini и Ollama (доступность зависит от настроенных учётных данных).
Q: Нужны ли API-ключи для всех провайдеров?
A: Нет — функции и доступность провайдеров зависят от конфигурации в .env. Опциональные ключи указаны для конкретных возможностей (например, карты, AI-поиск, генерация HTML).
Q: Как проверить работу генерации текста?
A: Выполните предоставленные скрипты в server/tests/ (например, server/tests/test-text-openai.ts, test-text-anthropic.ts и т.д.). Скрипты сообщают о выбранной модели и нормализованном выводе, логируя диагностику при сбоях.
Q: Как обрабатывается локальная генерация изображений?
A: MulmoChat интегрируется с ComfyUI Desktop через локальный API-сервер (настраивается через COMFYUI_BASE_URL). Это поддерживает использование локальных моделей/воркфлоу вместо только облачной генерации.
Альтернативы
- Чат-приложения только с текстом: Традиционные чат-интерфейсы фокусируются на потоках сообщений без мультимодального рендеринга на холсте, что упрощает реализацию, но не демонстрирует мультимодальные паттерны взаимодействия.
- Клиенты общих мультимодальных моделей (отдельный UI + вызовы моделей): Инструменты, сочетающие изображения и чат, обычно требуют самостоятельной сборки рендеринга UI и вызовов моделей; MulmoChat фокусируется на референсной архитектуре и принципах взаимодействия.
- Фронтенды локальной генерации изображений (ComfyUI или аналогичные) без слоя чат-UX: Запуск рабочих процессов изображений локально возможен вне разговорного интерфейса, но вы не получите unified мультимодальный чат-флоу, описанный здесь.
- Фреймворки агентов с вызовом инструментов (без специфической мультимодальной архитектуры холста): Инструменты агентов могут оркестрировать действия моделей и инструменты, но могут не предоставлять те же canvas-центричные мультимодальные паттерны взаимодействия.
Альтернативы
BookAI.chat
BookAI позволяет вам общаться с вашими книгами, просто предоставив название и автора.
Ably Chat
Ably Chat — chat API и SDK для кастомных realtime-приложений: реакции, presence и правка/удаление сообщений для чатов в масштабе.
Grok AI Assistant
Grok — это бесплатный ИИ-помощник, разработанный xAI, который ставит во главу угла правдивость и объективность, предлагая расширенные возможности, такие как доступ к информации в реальном времени и генерация изображений.
AakarDev AI
AakarDev AI — это мощная платформа, которая упрощает разработку приложений ИИ с бесшовной интеграцией векторных баз данных, позволяя быстрое развертывание и масштабируемость.
skills-janitor
skills-janitor для Claude Code: аудит и учет навыков, сравнение с девятью командами /janitor-* и поиск дублей без зависимостей.
Talkpal
Talkpal - это AI-преподаватель языков, который помогает пользователям быстрее учить языки через погружающие разговоры и обратную связь в реальном времени.