Примечание автора: на примере Qwen3.5-4B-GLB-3D-Coder разберём рабочий процесс с кодовой прослойкой «текст → Three.js → GLB» и дадим практические шаги, которые можно повторить.
Заставить большую языковую модель сразу выдавать готовые 3D-файлы — задача, с которой сталкивались многие инди-разработчики и небольшие игровые команды. Модель с 4 млрд параметров, дообученная сообществом, предлагает другой подход: пусть модель пишет код Three.js, а браузер затем экспортирует GLB, — то есть генерация и экспорт разделены на два шага.
Это не очередной обзор инструментов text-to-3D. Ассеты, экспортированные Qwen3.5-4B-GLB-3D-Coder, уже можно импортировать в редактор Godot, а разработчик из сообщества Naoki Kishida собрал с их помощью играбельную демку 3D RPG. В этой статье — о повторяемых инженерных подходах, которые стоят за этой цепочкой.
Ключевая ценность: после прочтения вы поймёте, почему кодовая прослойка работает, и сможете пройти весь путь от промпта до ассета для Godot локально или в облаке.

Ключевые моменты промежуточного слоя кода Three.js
Промежуточный слой кода — это когда модель выдаёт не готовый бинарный файл, а программу, которую можно запустить, и уже она создаёт итоговый результат. В этом кейсе модель возвращает отдельный HTML-файл: внутри сцена Three.js и кнопка «Export GLB».
| Пункт | Описание | Что это даёт разработчику |
|---|---|---|
| Вывод модели | Один HTML-файл со сценой Three.js и кнопкой экспорта | Его можно открыть, прочитать и изменить — это не чёрный ящик |
| Итоговый продукт | После нажатия кнопки в браузере скачивается GLB | Можно импортировать в Godot и другие инструменты с поддержкой GLB |
| Охват обучения | Покрывает 25 областей игровых ассетов: персонажи, оружие, транспорт, модульные здания и не только | Один инструмент закрывает большинство потребностей в заглушках на этапе прототипа |
| Способ запуска | Есть два GGUF-квантованных варианта: Q4_K_M и Q8_0 | Можно запускать локально через LM Studio и подобные инструменты |
| Позиционирование по качеству | Низкополигональные игровые ассеты, не для реалистичной или киношной продакшн-графики | Подходит для прототипов, заглушек и стилизованных проектов |
Важно уточнить: Qwen3.5-4B-GLB-3D-Coder — это отдельная предварительная версия, которую разработчик CCORE дообучил на базе Qwen/Qwen3.5-4B, а не официальный релиз Qwen. Судя по карточке модели, большинство результатов можно использовать с первого раза, особенно с английскими промптами, но для части ассетов всё же придётся повторить попытку или вручную поправить код.
Как работает промежуточный слой кода Three.js
Всю цепочку можно описать шестью шагами: ввод описания, генерация HTML, сохранение файла, предпросмотр в браузере, экспорт GLB, импорт в движок. Первые два шага выполняет модель, экспорт делает код, который выполняется в браузере; модели не нужно напрямую записывать двоичное содержимое GLB.
Если ассет должен двигаться — например, дверь, которая открывается, — системный промпт требует от модели добавить анимацию и включить её в экспортируемый GLB. Если явно не попросить, модель по умолчанию создаёт статичный ассет. Поэтому в промпте нужно отдельно и чётко указывать требование к анимации.

Пять рабочих уроков от промежуточного слоя в виде кода Three.js
Приведённое ниже сравнение — это наша инженерная оценка на основе данного кейса, а не результаты бенчмарков. У разных подходов к 3D-генерации свои области применения; здесь мы сравниваем только структурные различия двух идей.
| Критерий сравнения | Прямая генерация 3D-файлов | Промежуточный слой в виде кода Three.js |
|---|---|---|
| Выход модели | Сетка или бинарный ассет | Читаемый текстовый код |
| Что делать при ошибке | Обычно нужно перегенерировать или идти в инструмент моделирования и править | Можно локально изменить геометрию, материалы и анимацию |
| Предпросмотр перед экспортом | Нужен специальный просмотрщик | Достаточно открыть HTML в браузере |
| Поддержка анимации | Зависит от конкретной модели и пайплайна | Описывается кодом и экспортируется вместе с GLB |
| В чём силён | Зависит от конкретного решения | Структурно понятные low-poly ассеты |
| Главное ограничение | Результат плохо поддаётся тонкой правке | Высокодетализированные или фотореалистичные ассеты вне зоны дизайна |

Урок первый: выбирайте тот слой представления, в котором модель сильна. Сильная сторона кодирующих моделей — выдавать структурированный текст, и Three.js как раз превращает 3D-ассет в задачу программирования. У этой модели всего 4B параметров, но она справляется с генерацией ассетов — и ключ в том, что задачу перевели в форму, с которой она умеет работать.
Урок второй: промежуточный результат должен поддаваться проверке. HTML-файл — это одновременно и результат генерации, и точка входа для отладки. Когда материал стоит не на своём месте или цикл анимации зациклился неправильно, зачастую можно поправить руками, не перегенерируя всё с нуля, — и цена одной неудачи резко падает.
Урок третий: последний шаг отдайте детерминированным инструментам. За детали формата файла не должна байт за байтом отвечать вероятностная модель. В экосистеме Three.js уже есть возможности экспорта вроде GLTFExporter — модели достаточно написать логику вызова экспорта. Как правило, чем больше этапов отдано зрелым инструментам, тем меньше неопределённости на уровне формата.
Урок четвёртый: узкая задача плюс жёсткие соглашения практичнее, чем универсальность. Системный промпт этой модели фиксирован, а форма вывода строго ограничена одним HTML-файлом. При этом обучающие данные по 25 предметным областям обеспечивают охват типов ассетов. Когда границы задачи чёткие, у маленькой модели появляется достаточно пространства, чтобы себя проявить.
Урок пятый: проверяйте там, где результат будет реально использоваться. То, что красиво выглядит в браузере, ещё не значит, что ассет пригоден. Карточка модели также показывает результат после импорта в редактор Godot. С этим связана и следующая цель авторов: добиться надёжной генерации с первого раза и автоматически выполнять генерацию, тестирование и оптимизацию внутри агентной среды.
Этот подход не ограничивается игровыми ассетами. Скрипты OpenSCAD могут генерировать CAD-модели, Blender Python — управлять процессом моделирования, SVG и Mermaid — описывать графику и диаграммы. Если целевой формат трудно генерировать напрямую, стоит сначала спросить себя: есть ли слой кода, который стабильно выдаёт его?
Технический совет: если хотите сравнить, насколько хорошо разные модели пишут код на Three.js, можно через APIYI apiyi.com вызвать несколько моделей с одним и тем же промптом, а затем оценить результат по единому чек-листу приёмки, описанному ниже.
Быстрый старт с промежуточным слоем кода Three.js: локальное развёртывание
Дальше покажем на примере LM Studio — писать дополнительный код не придётся вообще. LM Studio умеет напрямую загружать модели в формате GGUF: можно найти Qwen3.5-4B-GLB-3D-Coder в браузере моделей или скачать файлы с Hugging Face и загрузить их локально.
Шаг первый: выбираем версию квантизации GGUF
В карточке модели не указаны точные требования к видеопамяти, поэтому ориентируйтесь на собственное железо и тестируйте. Инференс на CPU тоже возможен, но заметно медленнее.
| Версия | Особенности | Рекомендуемый сценарий |
|---|---|---|
| Q4_K_M | Файл меньше, потребление памяти ниже, инференс быстрее, качество немного проседает | Ноутбучные GPU, устройства с ограниченными ресурсами, быстрые итерации |
| Q8_0 | Файл больше, ближе к полной точности | Хватает видеопамяти, хочется повысить вероятность успеха с первого раза для сложных ассетов |
Обратите внимание на обновления версий: обе версии квантизации получили новые веса 2 ноября 2026 года. Автор утверждает, что качество визуала заметно выросло, но имена файлов не изменились. Если вы скачали их раньше, лучше удалите и скачайте заново — иначе рискуете остаться на старой версии.
Шаг второй: настраиваем системный промпт и параметры сэмплирования
Модель дообучалась под конкретный формат инструкций, поэтому системный промпт из карточки модели лучше использовать как есть, не переписывая своими словами:
Create game assets for the Godot editor, which uses GLB files. Create whatever the user requests as a good-quality low-poly asset using only Three.js in one complete standalone HTML file. The HTML must show the asset and include an Export GLB button that downloads a working GLB. If the requested asset needs animation, add it and include the animation in the exported GLB; otherwise make it static.
Вставьте его в поле системного сообщения LM Studio, а затем задайте параметры сэмплирования, рекомендованные автором. Это отправная точка из его тестов, а не жёсткие требования — можно подкрутить после того, как всё заработает.
| Параметр | Рекомендуемое значение | Где настраивать |
|---|---|---|
temperature |
0.8 | Параметры генерации LM Studio |
top_k |
40 | Параметры генерации LM Studio |
top_p |
0.95 | Параметры генерации LM Studio |
min_p |
0.0 | Параметры генерации LM Studio |
Шаг 3. Сгенерируйте и экспортируйте GLB
Промпт пользователя должен быть коротким, конкретным и по возможности на английском. Сначала попробуйте Create a blue goblin brute или Build a jungle siege platform; если нужна анимация, напишите Create a wooden gate with an opening animation. Затем действуйте в таком порядке:
- Отправьте промпт и дождитесь, пока модель выдаст полный HTML.
- Сохраните вывод как файл
.html. - Откройте файл в браузере и убедитесь, что ассет нормально рендерится.
- Нажмите кнопку «Export GLB», чтобы скачать файл
.glb. - Импортируйте GLB в Godot или в другой инструмент, поддерживающий этот формат.
Если страница пустая, сначала откройте инструменты разработчика в браузере и посмотрите ошибки в консоли. Некоторые скрипты при открытии двойным щелчком могут упираться в ограничения браузера на локальные файлы. В этом случае запустите в папке с файлом python -m http.server и откройте страницу по локальному адресу.
Шаг 4. Проверьте ассеты по чек-листу
Не ограничивайтесь просмотром превью в браузере. Каждый ассет лучше проверить по нескольким пунктам:
- Структура: все ли детали на месте, нет ли явных смещений или пересечений.
- Материалы: совпадают ли цвета и материалы после импорта в движок с превью.
- Анимация: действительно ли она записана в GLB и воспроизводится в движке.
- Размеры и origin: соответствуют ли пропорции и origin (точка привязки) требованиям сцены; возможно, это придётся подправить вручную.
- Ремонтопригодность: мелкие проблемы сначала исправляйте в коде, структурные — генерируйте ассет заново.
Схема облачного подключения для промежуточного слоя кода Three.js
Одно из преимуществ промежуточного слоя кода в том, что он не привязан к конкретной модели. Если модель умеет писать работающий код Three.js, её можно подключить к тому же процессу. По открытым данным, Qwen3.5-4B-GLB-3D-Coder сейчас распространяется в формате GGUF и в основном предназначен для локального вывода; если на вашем устройстве неудобно его запускать или хочется сравнить результат с универсальной кодирующей моделью, можно использовать облачный API.
APIYI предоставляет API-доступ к разным моделям и совместим с форматами OpenAI и Anthropic. Обычно существующим клиентам достаточно изменить адрес эндпоинта, ключ и имя модели. Учтите: доступность облачного вызова указанной дообученной модели нужно проверять по фактическому отображению в списке моделей. Подробности настройки — в документации APIYI: docs.apiyi.com.
| Вариант | Ключевые особенности | Когда подходит | Как считается стоимость | Доступные платформы |
|---|---|---|---|---|
| Локальная дообученная модель | Дообучена под GLB-ассеты, после загрузки можно работать офлайн | Массовая генерация временных ассетов, нужна работа офлайн | Нет платы за вызов, нужно своё железо | LM Studio и другие инструменты для запуска GGUF |
| Облачная универсальная кодирующая модель | Не нужны локальные вычисления, легко переключаться и сравнивать | Ограниченные устройства, нужно пробовать сложные промпты | По тарифам APIYI | APIYI apiyi.com и официальные каналы моделей |
| Гибрид: локально + облако | Локально — массовые задачи, сложные ассеты — в облако | Команды, которым важны и стоимость, и успешность | Облачная часть — по тарифам APIYI | Локальные инструменты вместе с API-платформой |
Как вызвать генерацию модели Three.js через API
- Создайте API-ключ в консоли APIYI и уточните актуальный адрес эндпоинта в документации — не копируйте адрес из сторонних инструкций.
- В зависимости от текущего клиента выберите формат OpenAI или Anthropic, заполните
base_urlи API-ключ. - Выберите модель для теста из списка моделей и укажите её имя в поле
model. - Поместите системный промпт из предыдущего раздела в сообщение system. Универсальная модель не дообучалась под эту задачу, поэтому можно добавить ограничение вроде «выводить только полный HTML».
- Сохраните ответ в файл
.html; дальнейшие шаги предпросмотра, экспорта и приёмки такие же, как в локальном варианте.
Локальный сервер LM Studio тоже предоставляет OpenAI-совместимый интерфейс. Поэтому один и тот же клиент может переключаться между локальным и облачным вариантом — достаточно поменять адрес эндпоинта и имя модели. Так что предпросмотр, экспорт и приёмка после промежуточного слоя кода остаются без изменений.
О тарификации: цена модели, правила расчёта входных и выходных токенов и стоимость кэширования могут меняться. В этой статье нет конкретных цифр — ориентируйтесь на фактические данные на странице тарифов APIYI: https://docs.apiyi.com/models.

Частые вопросы (FAQ)
В1: Что такое рабочий процесс с промежуточным слоем кода на Three.js?
Он означает, что модель сначала пишет программу на Three.js, а эта программа рендерит и экспортирует GLB — вместо того чтобы модель напрямую выдавала 3D-файл. Так можно просмотреть и изменить результат ещё до экспорта.
В2: Может ли Qwen3.5-4B-GLB-3D-Coder выдавать GLB напрямую?
Нет. На выходе получается отдельный HTML-файл, который нужно открыть в браузере и нажать кнопку «Export GLB», чтобы получить файл GLB.
В3: Экспортированный GLB подходит только для Godot?
Нет. Системный промпт ориентирован на рабочий процесс в Godot, но GLB — универсальный формат, его также можно импортировать в Unity, Blender и веб-просмотрщики 3D. Правда, результат после импорта всё равно придётся отдельно проверять в каждом инструменте.
В4: Для каких сценариев этот модель подходит лучше всего?
Лучше всего он подходит для прототипов игр в стиле low-poly и временных ассетов: NPC, оружия, транспорта, модульных зданий и ловушек. Если нужны сильно кастомизированные финальные ассеты, скорее всего, после импорта всё равно потребуется ручная доработка.
В5: Как попробовать этот процесс через API, если нет подходящей видеокарты?
Можно вызвать одну из кодирующих моделей из списка моделей через APIYI apiyi.com и настроить интерфейс в формате OpenAI или Anthropic по документации. После того как модель выдаст HTML, предпросмотр и экспорт выполняются уже локально в браузере.
В6: Как рассчитывается стоимость облачных вызовов?
Цена за единицу и правила тарификации у разных моделей отличаются, поэтому смотрите напрямую на странице цен APIYI: https://docs.apiyi.com/models. Советую сначала прогнать несколько промптов, а потом оценивать затраты исходя из реального объёма использования.
В7: Обязателен ли файл визуальной проекции?
Нет, не обязателен. Опциональный файл визуальной проекции BF16 весит около 644 MiB и нужен для подачи эталонного изображения в средах, поддерживающих мультимодальный GGUF Qwen3.5. Если вы работаете только с текстовыми промптами, его можно не скачивать.
В8: Какие ограничения есть у этого решения сейчас?
Это пока предварительная версия: обучающий набор смещён в сторону простых промптов, поэтому способность к обобщению на сложные или редкие запросы ограничена, и решение не рассчитано на фотореалистичные ассеты. Автор планирует открыть датасет и веса Safetensors, а также обучить более крупную версию примерно на 100 тыс. примеров с длиной контекста от 8K до 128K tokens, но эти материалы ещё не опубликованы.
Ключевые тезисы о промежуточном слое кода Three.js
- Основная идея: модель пишет рабочий код Three.js, а программа затем экспортирует его в GLB.
- Главное преимущество: промежуточный результат можно просмотреть, прочитать и точечно исправить — это снижает цену ошибки.
- Локальный запуск: LM Studio загружает GGUF, используется фиксированный системный промпт и рекомендуемые параметры сэмплирования.
- Напоминание о версии: веса, скачанные до 2 ноября, лучше удалить и скачать заново.
- Границы применимости: подход подходит для низкополигональных прототипов и временных ассетов, но не для реалистичной графики или продакшна уровня кино.
- Облачный сценарий: через APIYI можно подключать модели в формате OpenAI или Anthropic и сравнивать результаты.
- Расширение подхода: этот принцип промежуточного слоя можно применять и в Blender Python, OpenSCAD и других сценариях.
Итог
Qwen3.5-4B-GLB-3D-Coder ценен не только тем, что небольшая модель умеет генерировать игровые ассеты. Главное — он по-новому разделяет обязанности модели и инструментов:
- Модель отвечает за выражение: превращает описание на естественном языке в структурно понятный код Three.js.
- Инструменты отвечают за материализацию: браузер и логика экспорта создают стандартный файл GLB.
- Проверка определяет пригодность: работа действительно завершена только после импорта в целевой движок и прохождения проверок.
Советую сначала прогнать весь процесс на простом статичном пропе, а затем постепенно тестировать анимацию и сложные ассеты. Если нужно сравнить несколько облачных моделей, их можно вызывать через APIYI по единому интерфейсу. Способ подключения — в docs.apiyi.com, актуальные цены — на https://docs.apiyi.com/models.
📚 Справочные материалы
- Знакомство с моделью Qwen3.5-4B-GLB-3D-Coder: позиционирование модели, 25 предметных областей ассетов и дальнейшая дорожная карта
- Ссылка:
mindstudio.ai/blog/qwen3-5-4b-glb-3d-coder-model -
Описание: подойдёт, чтобы понять проект в целом и познакомиться с примерами из сообщества
-
Руководство по локальному запуску Qwen3.5-4B-GLB-3D-Coder: механизм генерации, квантованные версии и анализ применимости
- Ссылка:
mindstudio.ai/blog/qwen3-5-4b-glb-3d-coder-local -
Описание: поможет оценить, подходит ли модель под задачи вашего проекта
-
Руководство по настройке LM Studio: системный промпт, параметры сэмплирования и шаги экспорта в GLB
- Ссылка:
mindstudio.ai/blog/run-qwen3-5-glb-3d-coder-locally -
Описание: подойдёт для пошагового развёртывания на локальной машине
-
Документация и страница цен APIYI: описание подключения к API и данные о ценах на модели
- Ссылка:
docs.apiyi.comиdocs.apiyi.com/models - Описание: актуальные настройки API и информация о тарификации — только в этих разделах
Автор: техническая команда APIYI
Техническая поддержка: если при подключении возникнут вопросы, напишите нам через сайт APIYI apiyi.com. Больше материалов — в центре документации docs.apiyi.com
