Железный потолок: почему Cosmos 3 не запустится на T4
Попытка запустить реальные веса Cosmos 3 (Nano-16B или Super-65B) на стандартных бесплатных или даже платных инстансах Google Colab обречена на провал. Анализ окружения показывает критическое несоответствие требований:
- GPU Memory: Для инференса Nano-16B требуется минимум 80 GiB VRAM (уровень H100/A100). Стандартные T4 (16 GiB) или даже A100 (40/80 GiB в зависимости от тарифа) часто не дотягивают до порога стабильной работы с учетом оверхеда фреймворка.
- Compute Capability: Требуется архитектура Ampere (sm_80+) или новее. Старые карты (T4 = sm_75) не поддерживают необходимые оптимизации внимания.
- Диск: Первый запуск требует ~150 GiB свободного места под кэш Hugging Face и веса моделей.
Архитектура: Omnimodal Mixture-of-Transformers
Главное нововведение Cosmos 3 — унификация модальностей. Модель не обрабатывает текст, видео и действия отдельно. Вместо этого используется Mixture-of-Transformers (MoT):
- Единая последовательность: Токены текста, изображений, видео и действий (actions) интерлевируются в один поток.
- Общее внимание: Механизм Self-Attention (с RoPE) работает для всех токенов одновременно, позволяя зрению «видеть» текст, а действиям — зависеть от визуального контекста.
- Модально-специфичные эксперты: После слоя внимания каждый токен маршрутизируется в свой собственный Feed-Forward Network (FFN) — «эксперт» (SwiGLU). Текст идет в Expert0, визуальные данные в Expert1, действия в Expert2.
Режимы работы и применение
Благодаря такой архитектуре, одна модель покрывает весь спектр задач Computer Vision и Physical AI:
| Режим | Входные данные | Выходные данные | Применение |
|---|---|---|---|
| text2video | Текстовый промпт | Поток визуальных токенов (видео) | Генерация контента |
| image2video | Кадр + текст | Продолжение видео | Анимация изображений |
| forward_dynamics | Кадры + Действия (Actions) | Будущие кадры | Мир-модель (World Model) |
| inverse_dynamics | Кадры | Инференс действий | Анализ поведения |
| policy | Наблюдение + Цель | Действия + роулинг | Управление роботами |
Практический выход: Мини-версия для Colab
Поскольку запуск full-scale Cosmos 3 невозможен, автор туториала предлагает создать миниатюрную реализацию на основе структуры фреймворка. Это позволяет изучить принципы работы без требования к железу:
- Синтетические данные: Обучение проводится на сгенерированных физических данных, а не на реальных видео.
- Авторегрессионный роулинг: Модель учится предсказывать будущие латентные состояния, отслеживая loss в реальном времени.
- Клиентская часть: Используется реальный CLI cosmos-framework для парсинга схем ввода (input schema), что дает понимание внутренней механики без загрузки весов.
Этот подход позволяет инженерам понять, как работает маршрутизация токенов между модальностями, и протестировать логику обучения на CPU или слабых GPU, не нарушая лимиты ресурсов.
Источник: MarkTechPost ↗
