Визуально-языковая модель на 628 млн параметров, собранная из открытых компонентов за примерно $200 аренды одной GPU H100, описывает изображения и отвечает на простые вопросы по ним. Автор эксперимента подключил визуальный энкодер InternViT-300M к языковой модели Baguettotron на 321 млн параметров через обучаемый проектор и провёл обучение в три этапа на арендованной машине в RunPod. Третий этап, с цепочками рассуждений, должен был улучшить ответы, но заметно их ухудшил, поэтому в финальной конфигурации его пропустили.
Прямой ответ на главный вопрос: собрать VLM за $200 реально. Условия простые: стандартная схема ViT-MLP-LLM, две открытые модели вместо закрытых и одна арендованная GPU на время обучения. Никаких уникальных архитектурных идей не требуется, а именно на них обычно уходят деньги и время.
Качество при этом скромное. Модель путается в деталях и меняет ответ в зависимости от формулировки вопроса. Код и веса опубликованы, так что эксперимент повторяем и годится как учебный полигон, а не как замена готовому продукту.
Что такое VLM и зачем собирать её самостоятельно
Визуально-языковая модель принимает изображение и текст, а возвращает текст: описание картинки, ответ на вопрос по ней, извлечённые из кадра данные. Готовые VLM обучены на кластерах и часто требуют десятков гигабайт видеопамяти, поэтому локальный запуск превращается в отдельный проект с квантизацией и оптимизацией.
Своя сборка из открытых компонентов решает другую задачу: показывает пайплайн внутри и даёт контроль над каждым блоком. Энкодер меняется, языковая модель меняется, данные меняются, и видно, что именно влияет на результат. Эксперимент с 628 млн параметров укладывается примерно в $200: этой суммы хватает, чтобы пройти весь путь от подключения энкодера до инференса.
Из чего состоит VLM: визуальный энкодер, проектор и языковая модель
Схема ViT-MLP-LLM включает три блока. Визуальный энкодер (ViT) режет изображение на патчи и превращает их в набор векторов, то есть в визуальные эмбеддинги. Проектор, небольшая полносвязная сеть (MLP), переводит эти векторы в пространство размерностей текстовой модели. Языковая модель (LLM) получает на входе последовательность из визуальных и текстовых токенов и генерирует ответ обычным способом.
В эксперименте роли распределились так: InternViT-300M отвечает за картинку, Baguettotron на 321 млн параметров за текст, между ними стоит обучаемый проектор. Схема стандартная, по ней собраны многие открытые VLM, и именно это экономит время и деньги.
| Компонент | Роль | Параметры |
|---|---|---|
| InternViT-300M | Визуальный энкодер | около 300 млн |
| Проектор (MLP) | Согласование размерностей визуальных и текстовых эмбеддингов | в описании не раскрыто |
| Baguettotron | Языковая модель | 321 млн |
| Итого | VLM целиком | 628 млн |
Почему 628 млн параметров - это мало, но достаточно для эксперимента
628 млн параметров сопоставимы с небольшой текстовой моделью. Крупные открытые VLM измеряются миллиардами параметров, и разрыв в качестве между ними и самоделкой ощутимый. Ждать от такой сборки уровня проприетарных решений не стоит.
Что она даёт: рабочий пайплайн, понимание того, где ломается связка энкодер-проектор-LLM, и практику многоэтапного обучения. Если цель другая и нужна компактная модель под слабое железо, есть отдельный путь: дистилляция LLM сжимает большую модель в маленькую и снижает стоимость инференса, но требует уже обученного учителя.
Архитектура эксперимента: InternViT-300M + Baguettotron + проектор
Конфигурация собирается из трёх частей: замороженный на первых шагах визуальный энкодер, обучаемый проектор и языковая модель, которая подключается к проектору и дальше дообучается. Выход энкодера и вход LLM живут в разных пространствах размерностей, и всю работу по стыковке берёт на себя проектор.
Роль проектора (MLP) в связке ViT и LLM
Проектор это самый маленький блок и самый важный на старте. Эмбеддинги изображения имеют одну размерность, эмбеддинги текста другую, совпадать они не обязаны. Несколько полносвязных слоёв с нелинейностью превращают визуальные векторы в такие, которые языковая модель читает как обычные токены контекста.
Обучать проектор отдельно нужно потому, что предобученные веса энкодера и LLM уже несут полезные знания. При совместном обучении с самого начала случайно инициализированный проектор отправит в языковую модель мусор, и градиенты начнут портить предобученные веса. Первый этап закрывает ровно эту проблему.
Почему выбраны именно InternViT-300M и Baguettotron
InternViT-300M это открытый визуальный энкодер, Baguettotron открытая языковая модель на 321 млн параметров. Обе доступны, обе помещаются в память одной H100 вместе с активациями и оптимизатором, обе скачиваются без переговоров с вендором. Для бюджета в $200 это ключевое условие.
Почему из множества открытых моделей автор взял именно эту пару, в описании эксперимента не раскрыто, и додумывать мотивацию не стоит. Важнее другое: компоненты совместимы по схеме ViT-MLP-LLM, поэтому сборку можно повторить с другим открытым энкодером и другой языковой моделью.
Три этапа обучения: от проектора до цепочек рассуждений
| Этап | Что обучается | Данные | Результат |
|---|---|---|---|
| 1 | Только проектор | Пары «изображение - подпись» | Визуальные эмбеддинги переводятся в текстовое пространство |
| 2 | Проектор и языковая модель | Визуальные инструкции | Описание изображений и ответы на простые вопросы |
| 3 | Цепочки рассуждений | Данные с цепочками рассуждений | Качество ответов заметно упало |
Этап 1: обучение проектора на парах «изображение - подпись»
На первом этапе визуальный энкодер и языковая модель заморожены, обучается только проектор. Данные это пары «изображение - подпись»: картинка и короткий текст, который её описывает. Задача проектора научиться переводить визуальные эмбеддинги в пространство, где LLM воспринимает их как осмысленные токены.
Это стандартный первый шаг в обучении VLM. Он дешёвый, потому что градиенты считаются для небольшой сети, и безопасный, потому что предобученные веса остаются нетронутыми.
Этап 2: совместное обучение проектора и языковой модели на визуальных инструкциях
Второй этап переводит модель с уровня «подпись под картинкой» на уровень диалога. Обучаются проектор и языковая модель, данные это визуальные инструкции: вопросы по изображению с ответами, задачи на извлечение информации, короткие диалоги. Здесь появляется умение отвечать на вопросы, а не только описывать кадр.
Автор называет этот этап основным источником прироста. После него модель описывает изображения и отвечает на простые вопросы, то есть попадает в категорию «работает, но скромно».
Этап 3: почему цепочки рассуждений ухудшили качество
Третий этап добавил обучение на цепочках рассуждений: модель должна была проговаривать шаги решения перед ответом. Логика у подхода есть, но в этом эксперименте качество ответов заметно упало, и автор рекомендует при бюджете около $200 этот этап пропускать.
Оговорка обязательна: вывод сделан для конкретной связки моделей, конкретных данных и гиперпараметров, которые в описании не раскрыты. Цепочки рассуждений не вредны сами по себе, но и не гарантируют улучшения. Похожий провал описан в разборе эксперимента catmind-1.2b, где скрытое рассуждение увело модель от ответа по существу. Планируя третий этап, закладывайте его как эксперимент с замером качества до и после, а не как готовое улучшение.
Сколько стоит собрать VLM: бюджет, GPU и платформа
Смета короткая: одна арендованная GPU H100 в RunPod и примерно $200 на всё обучение в три этапа. Это аренда, а не покупка железа, поэтому барьер входа измеряется часами, а не ценой сервера.
Почему H100 в RunPod - разумный выбор для такого эксперимента
H100 несёт большой объём памяти и высокую пропускную способность, поэтому модель на 628 млн параметров, её активации и состояния оптимизатора помещаются в видеопамять без агрессивных ухищрений. RunPod даёт почасовую аренду: платить нужно за время обучения, а не за простой машины.
Для модели такого масштаба H100 это запас, и запас осознанный: меньше возни с выгрузкой слоёв и памятью, быстрее проходят этапы. Прямых сравнений с другими GPU автор не приводит, поэтому называть H100 единственно верным вариантом нет оснований.
Из чего складывается бюджет $200
$200 это стоимость аренды H100 за время трёх этапов обучения. Разбивку по этапам и точное число часов автор не раскрывает, поэтому посчитать, какой этап съел больше всего бюджета, по описанию нельзя.
Порядок цифр для сравнения: обучение крупных моделей измеряется миллионами долларов, а подходы вроде 20B Looping Model с десятикратной экономией токенов сдвигают планку к сотням тысяч. На таком фоне $200 за учебную VLM это минимальная входная точка.
Оговорка по воспроизводимости: бюджет и конфигурация относятся к конкретному эксперименту. Цены на аренду GPU меняются, объём и качество данных влияют на число шагов, поэтому смета в других условиях получится другой.
Что умеет модель после второго этапа и где ошибается
Оценка честная: после второго этапа модель описывает изображения и отвечает на простые вопросы, третий этап её ухудшил. Это базовый, но рабочий уровень.
Сильные стороны: описание изображений и простые вопросы
Модель формирует связный текст по картинке и реагирует на прямые вопросы о содержимом кадра. Этого достаточно, чтобы убедиться: связка энкодер-проектор-LLM собрана правильно и обучение прошло не впустую.
Слабые стороны: ошибки в деталях и чувствительность к формулировке
Две главные проблемы: модель ошибается в деталях и сильно зависит от того, как задан вопрос. Переформулировка запроса меняет ответ, а мелкие подробности вроде количества объектов остаются ненадёжными.
Для 628 млн параметров это ожидаемая картина. Практический вывод: ответы такой модели требуют проверки, а в рабочий процесс её стоит брать там, где ошибка в детали не критична.
Выводы автора эксперимента: что делать и чего избегать
Не отходить от проверенной архитектуры
Схема ViT-MLP-LLM изучена и обкатана. Автор советует не изобретать новую архитектуру: при ограниченном бюджете любое отклонение от проверенной схемы становится дополнительным источником ошибок, а время аренды GPU тикает.
Перебалансировать визуальную часть
Второй совет касается соотношения компонентов: визуальной части, то есть энкодеру и проектору, стоит уделить больше внимания, чем в исходном эксперименте. Конкретных цифр перебалансировки автор не приводит, поэтому речь о направлении работы, а не о готовом рецепте.
Пропустить этап с цепочками рассуждений при бюджете $200
Третий этап в этом эксперименте ухудшил качество, и при таком бюджете его проще не добавлять. Для других условий вывод может не действовать: другая связка моделей и другой набор данных способны дать обратный результат.
Полезная часть эксперимента в том, что код и веса опубликованы. Это позволяет пройти пайплайн самому, сравнить свои метрики с описанными и не начинать с чистого листа.
Кому и зачем нужен такой эксперимент
Это учебный кейс, а не готовый продукт. Его ценность в том, что он показывает устройство VLM изнутри и границы того, что реально сделать с открытыми моделями при ограниченных ресурсах.
Для разработчиков и технических специалистов
Эксперимент даёт целостную картину пайплайна: заморозка энкодера, обучение проектора, подключение визуальных инструкций, замеры качества. Этот же каркас переносится на собственные задачи, включая внутренние модели под документы, схемы и скриншоты.
Для энтузиастов с ограниченным бюджетом
Бюджет около $200 и аренда одной H100 делают повторение реалистичным. Понадобятся базовые навыки ML, умение работать с кодом обучения и готовность разбираться в данных. Отслеживать похожие открытые исследования удобно через Daily Papers на Hugging Face: от статьи там можно сразу перейти к модели, датасету и обсуждению.
Связка InternViT-300M и Baguettotron на 628 млн параметров обучилась за три этапа и примерно $200, описывает изображения и отвечает на простые вопросы, но проваливает детали и не выигрывает от этапа с рассуждениями. Нужен рабочий инструмент, берите готовую VLM. Нужно понять, как они устроены, начните с этого эксперимента: код и веса опубликованы, а вход стоит две сотни долларов.