character-animate-4b
Qwen3.5-4B, которая превращает фразу в анимацию
Файнтюн от hedwigai на базе Qwen3.5-4B (4,54 млрд параметров, bf16, Apache 2.0). На вход получает одно предложение действия, например «проходит 4 метра, затем смотрит на точку справа», и выдаёт компактную JSON-программу движения тела. Компилятор в Blender превращает её в анимационный клип и проверяет результат.
✨ Ключевые особенности
- 🎨 Одна фраза действия → JSON-программа для rigctl: план, клип, стиль, beats и ключи.
- 💻 Blender-компилятор проверяет баланс, наклон, стопы, самопересечение тела, лимиты суставов и рывки.
- 🧸 Обучение: LoRA rank 32, alpha 64 на attention, linear-attention и MLP-проекциях, затем merge; в репозитории есть adapter для обратного unmerge.
- ⭐ SFT на программах, прошедших компилятор и чекер, затем раунды rejection sampling.
- 👁 Модель знает одно тело и двигает одного персонажа за раз; код сцены решает, где он стоит и на кого смотрит.
💻 Пример
Для действия из карточки модель выдаёт такой фрагмент вывода (первые четыре beat):
{"plan":"happy at 0.84: walk; idle; look_at; walk; walk; walk",
"clip":{"fps":24,"frames":479,"seed":5,"variation":0.3},
"style":{"speed_ms":0.98,"cadence_spm":109.4,"hip_bob_cm":2.61,"arm_swing":1.25,"lift_cm":6.68},
"beats":[{"id":"b0","verb":"walk","args":{"distance":1.3},"start":0},
{"id":"b1","verb":"idle","args":{},"after":"b0","dur":36},
{"id":"b2","verb":"look_at","args":{"target":[-2.5,0.2,1.55]},"after":"b1","dur":36},
{"id":"b3","verb":"walk","args":{"distance":4.4},"after":"b2"}]}
Подробнее
На тестовом наборе из 196 промптов: 0.99 — программа делает запрошенное, 1.00 — программы компилируются, 1.00 — клипы проходят все проверки.Без компилятора и рига на выходе только JSON; риг не опубликован, имена костей нужно маппить.
Обучена на одном теле и одном персонаже за раз.








Комментарии