Instructions to use MATLOWAI/MiniMax-H3-Motion-Adapter with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Diffusers
How to use MATLOWAI/MiniMax-H3-Motion-Adapter with Diffusers:
pip install -U diffusers transformers accelerate
import torch from diffusers import DiffusionPipeline from diffusers.utils import load_image, export_to_video # switch to "mps" for apple devices pipe = DiffusionPipeline.from_pretrained("MiniMaxAI/MiniMax-H3", dtype=torch.bfloat16, device_map="cuda") pipe.load_lora_weights("MATLOWAI/MiniMax-H3-Motion-Adapter") prompt = "A man with short gray hair plays a red electric guitar." input_image = load_image("https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/diffusers/guitar-man.png") image = pipe(image=input_image, prompt=prompt).frames[0] export_to_video(output, "output.mp4") - Inference
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- Draw Things
Motion adapter pilot r16: weights, model card, ComfyUI graph
Browse files- LICENSE +22 -0
- README.md +104 -0
- minimax_h3_motion_adapter_pilot_r16.safetensors +3 -0
- motion_pipeline_adapter_api.json +543 -0
LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
MIT License
|
| 2 |
+
|
| 3 |
+
Copyright (c) 2026 MatlowAI (Dylan Matlow)
|
| 4 |
+
|
| 5 |
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
| 6 |
+
of this software and associated documentation files (the "Software"), to deal
|
| 7 |
+
in the Software without restriction, including without limitation the rights
|
| 8 |
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
| 9 |
+
copies of the Software, and to permit persons to whom the Software is
|
| 10 |
+
furnished to do so, subject to the following conditions:
|
| 11 |
+
|
| 12 |
+
The above copyright notice and this permission notice shall be included in all
|
| 13 |
+
copies or substantial portions of the Software.
|
| 14 |
+
|
| 15 |
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
| 16 |
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
| 17 |
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
| 18 |
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
| 19 |
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
| 20 |
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
| 21 |
+
SOFTWARE.
|
| 22 |
+
|
README.md
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
license: mit
|
| 3 |
+
base_model: MiniMaxAI/MiniMax-H3
|
| 4 |
+
tags:
|
| 5 |
+
- minimax-h3
|
| 6 |
+
- lora
|
| 7 |
+
- video
|
| 8 |
+
- comfyui
|
| 9 |
+
- motion
|
| 10 |
+
library_name: diffusers
|
| 11 |
+
pipeline_tag: image-to-video
|
| 12 |
+
---
|
| 13 |
+
|
| 14 |
+
# MiniMax-H3 motion adapter (pilot, r16)
|
| 15 |
+
|
| 16 |
+
A small LoRA for MiniMax-H3 that makes the de-rope pass in
|
| 17 |
+
[ComfyUI-MAINodes](https://github.com/matlowai/ComfyUI-MAINodes) behave
|
| 18 |
+
better on fast motion. It is a pilot: rank 16, trained for a few hours on
|
| 19 |
+
38 clips we generated ourselves. It works, it is measurable, and it has
|
| 20 |
+
clear rough edges listed below. We are publishing it as an intermediate
|
| 21 |
+
release while we try something considerably more ambitious that may or may
|
| 22 |
+
not work (an all-in-one adapter that internalises the whole two-pass
|
| 23 |
+
pipeline). If that lands it will replace this file; if it does not, this
|
| 24 |
+
one still does a useful job.
|
| 25 |
+
|
| 26 |
+
## What it does
|
| 27 |
+
|
| 28 |
+
MAINodes' Motion Lab regenerates the fast span of a clip on a stretched
|
| 29 |
+
clock (the "de-rope") and recovers it back to real time. That pass has a
|
| 30 |
+
known bad habit: on very fast motion the base model over-produces, and the
|
| 31 |
+
result alternates between advance and snap frame to frame. This adapter
|
| 32 |
+
was trained on that exact task (frames held out of the middle of a burst,
|
| 33 |
+
the model asked to fill them back in), and it teaches the base model to
|
| 34 |
+
spend the extra clock on smoothness instead of invention.
|
| 35 |
+
|
| 36 |
+
Measured on four clips the adapter never saw during training (a fight,
|
| 37 |
+
an anime sword ring, a character swap, a dialogue close-up), against the
|
| 38 |
+
same graph without the adapter and against a same-seed noise floor:
|
| 39 |
+
|
| 40 |
+
- advance/snap alternation improved on 4 of 4 clips (4.6 to 6.1 times the
|
| 41 |
+
floor)
|
| 42 |
+
- frame-to-frame over-production dropped from 1.76 to 2.93 down to 1.09
|
| 43 |
+
to 1.23 on all four
|
| 44 |
+
- blind operator picks, adapter vs no adapter, same seed: 7 for, 0
|
| 45 |
+
against, 1 no preference
|
| 46 |
+
- it transfers to the Ref2VA checkpoint (same wins on both), so one file
|
| 47 |
+
serves both fl2va and ref2va graphs
|
| 48 |
+
|
| 49 |
+
Where it is not great (also measured):
|
| 50 |
+
|
| 51 |
+
- it costs about 1 dB of anchor fidelity on native keyframes and it
|
| 52 |
+
over-corrects calm chains (it smooths things that did not need
|
| 53 |
+
smoothing); keep it off on calm content
|
| 54 |
+
- on the Ref2VA checkpoint it mutes colour. A prismatic creature came out
|
| 55 |
+
as a plain calico; mean saturation dropped 46 to 38 at denoise 0.40 and
|
| 56 |
+
54 to 40 at 0.70. If your reference has strong colour, either lower the
|
| 57 |
+
strength or accept the trade
|
| 58 |
+
- it is anime-heavy in effect: on very fast anime it wins by a mile at
|
| 59 |
+
every setting; on live-action character work it needs the lower inject
|
| 60 |
+
values below
|
| 61 |
+
|
| 62 |
+
## Settings that work
|
| 63 |
+
|
| 64 |
+
- Strength 1.0. Strength and inject turned out to be the same dial, and
|
| 65 |
+
1.0 wins on alternation in every paired cell we ran; 0.75 was
|
| 66 |
+
in-distribution tuning on one fight plate and does not hold elsewhere.
|
| 67 |
+
- Inject is the dial. Starting points: 0.45 for character or dialogue
|
| 68 |
+
where the base model over-produces hard; 0.30 where identity or props
|
| 69 |
+
are the deliverable and the base is only mildly inflated; on very fast
|
| 70 |
+
anime it does not matter (every setting wins).
|
| 71 |
+
- Keep the tail guide on. Turning it off costs identity about 3 times the
|
| 72 |
+
floor across seeds and checkpoints, adapter or not.
|
| 73 |
+
- Apply it to the de-rope pass only, not to the first (text-to-video)
|
| 74 |
+
pass.
|
| 75 |
+
|
| 76 |
+
## Use in ComfyUI
|
| 77 |
+
|
| 78 |
+
Put the file in `models/loras/minimax_h3/`. Load it with a stock
|
| 79 |
+
`LoraLoaderModelOnly` at strength 1.0 on the model that feeds the de-rope
|
| 80 |
+
pass. A ready graph is in ComfyUI-MAINodes:
|
| 81 |
+
`examples/motion_pipeline_adapter_api.json` (API format, loads through the
|
| 82 |
+
API and through the frontend's API import). The stock
|
| 83 |
+
`LoraLoaderModelOnly` is fine for this file; the key mismatch that bites
|
| 84 |
+
turbo LoRAs does not apply here.
|
| 85 |
+
|
| 86 |
+
## Training facts
|
| 87 |
+
|
| 88 |
+
- Base: MiniMax-H3 (fl2va), rank 16, alpha 16, 375 steps, lr 1e-4,
|
| 89 |
+
adamw8bit, bf16, about 4.6 h on one GPU
|
| 90 |
+
- Data: 38 holdout-infilling items cut from 15 clips we generated with
|
| 91 |
+
MiniMax-H3 (physics scenes, fights, chains, a dialogue plate); no real
|
| 92 |
+
footage, no third-party footage
|
| 93 |
+
- Task: hold out the frames inside a motion burst, keep the rest as clean
|
| 94 |
+
context (kept_label 1.0), predict the held tokens
|
| 95 |
+
- Trainer: our ai-toolkit extension for H3 (span-aware packing verified
|
| 96 |
+
bit-exact against ComfyUI)
|
| 97 |
+
|
| 98 |
+
## Files
|
| 99 |
+
|
| 100 |
+
- `minimax_h3_motion_adapter_pilot_r16.safetensors` (63 MB)
|
| 101 |
+
- `motion_pipeline_adapter_api.json` (the same graph as in the node pack)
|
| 102 |
+
|
| 103 |
+
Examples, before/after clips and the measurement write-up live on the
|
| 104 |
+
[ComfyUI-MAINodes page](https://matlowai.github.io/ComfyUI-MAINodes/).
|
minimax_h3_motion_adapter_pilot_r16.safetensors
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2b31e67d0399eab21ae45fadddcefe82293b1c6cf677b87f8f19bcc745d02fe4
|
| 3 |
+
size 63103768
|
motion_pipeline_adapter_api.json
ADDED
|
@@ -0,0 +1,543 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"119": {
|
| 3 |
+
"class_type": "VAELoader",
|
| 4 |
+
"inputs": {
|
| 5 |
+
"vae_name": "minimax_h3/minimax_h3_video_vae_fp16.safetensors"
|
| 6 |
+
},
|
| 7 |
+
"_meta": {
|
| 8 |
+
"title": "VAELoader"
|
| 9 |
+
}
|
| 10 |
+
},
|
| 11 |
+
"120": {
|
| 12 |
+
"class_type": "VAELoader",
|
| 13 |
+
"inputs": {
|
| 14 |
+
"vae_name": "minimax_h3/minimax_h3_audio_vae_fp32.safetensors"
|
| 15 |
+
},
|
| 16 |
+
"_meta": {
|
| 17 |
+
"title": "VAELoader"
|
| 18 |
+
}
|
| 19 |
+
},
|
| 20 |
+
"121": {
|
| 21 |
+
"class_type": "VAEDecodeAudio",
|
| 22 |
+
"inputs": {
|
| 23 |
+
"samples": [
|
| 24 |
+
"125",
|
| 25 |
+
0
|
| 26 |
+
],
|
| 27 |
+
"vae": [
|
| 28 |
+
"120",
|
| 29 |
+
0
|
| 30 |
+
]
|
| 31 |
+
},
|
| 32 |
+
"_meta": {
|
| 33 |
+
"title": "VAEDecodeAudio"
|
| 34 |
+
}
|
| 35 |
+
},
|
| 36 |
+
"122": {
|
| 37 |
+
"class_type": "VAEDecode",
|
| 38 |
+
"inputs": {
|
| 39 |
+
"samples": [
|
| 40 |
+
"125",
|
| 41 |
+
0
|
| 42 |
+
],
|
| 43 |
+
"vae": [
|
| 44 |
+
"119",
|
| 45 |
+
0
|
| 46 |
+
]
|
| 47 |
+
},
|
| 48 |
+
"_meta": {
|
| 49 |
+
"title": "VAEDecode"
|
| 50 |
+
}
|
| 51 |
+
},
|
| 52 |
+
"125": {
|
| 53 |
+
"class_type": "SamplerCustomAdvanced",
|
| 54 |
+
"inputs": {
|
| 55 |
+
"noise": [
|
| 56 |
+
"129",
|
| 57 |
+
0
|
| 58 |
+
],
|
| 59 |
+
"guider": [
|
| 60 |
+
"126",
|
| 61 |
+
0
|
| 62 |
+
],
|
| 63 |
+
"sampler": [
|
| 64 |
+
"135",
|
| 65 |
+
0
|
| 66 |
+
],
|
| 67 |
+
"sigmas": [
|
| 68 |
+
"124",
|
| 69 |
+
0
|
| 70 |
+
],
|
| 71 |
+
"latent_image": [
|
| 72 |
+
"131",
|
| 73 |
+
1
|
| 74 |
+
]
|
| 75 |
+
},
|
| 76 |
+
"_meta": {
|
| 77 |
+
"title": "SamplerCustomAdvanced"
|
| 78 |
+
}
|
| 79 |
+
},
|
| 80 |
+
"126": {
|
| 81 |
+
"class_type": "BasicGuider",
|
| 82 |
+
"inputs": {
|
| 83 |
+
"model": [
|
| 84 |
+
"127",
|
| 85 |
+
0
|
| 86 |
+
],
|
| 87 |
+
"conditioning": [
|
| 88 |
+
"131",
|
| 89 |
+
0
|
| 90 |
+
]
|
| 91 |
+
},
|
| 92 |
+
"_meta": {
|
| 93 |
+
"title": "BasicGuider"
|
| 94 |
+
}
|
| 95 |
+
},
|
| 96 |
+
"129": {
|
| 97 |
+
"class_type": "RandomNoise",
|
| 98 |
+
"inputs": {
|
| 99 |
+
"noise_seed": 20260813
|
| 100 |
+
},
|
| 101 |
+
"_meta": {
|
| 102 |
+
"title": "RandomNoise"
|
| 103 |
+
}
|
| 104 |
+
},
|
| 105 |
+
"128": {
|
| 106 |
+
"class_type": "CLIPLoader",
|
| 107 |
+
"inputs": {
|
| 108 |
+
"clip_name": "minimax_h3/qwen3vl_32b_minimax_h3_nvfp4_awq.safetensors",
|
| 109 |
+
"type": "minimax",
|
| 110 |
+
"device": "default"
|
| 111 |
+
},
|
| 112 |
+
"_meta": {
|
| 113 |
+
"title": "CLIPLoader"
|
| 114 |
+
}
|
| 115 |
+
},
|
| 116 |
+
"127": {
|
| 117 |
+
"class_type": "UNETLoader",
|
| 118 |
+
"inputs": {
|
| 119 |
+
"unet_name": "minimax_h3/minimax_h3_fl2va_pruned_int8_convrot.safetensors",
|
| 120 |
+
"weight_dtype": "default"
|
| 121 |
+
},
|
| 122 |
+
"_meta": {
|
| 123 |
+
"title": "UNETLoader"
|
| 124 |
+
}
|
| 125 |
+
},
|
| 126 |
+
"130": {
|
| 127 |
+
"class_type": "CreateVideo",
|
| 128 |
+
"inputs": {
|
| 129 |
+
"fps": 24,
|
| 130 |
+
"bit_depth": 8,
|
| 131 |
+
"images": [
|
| 132 |
+
"122",
|
| 133 |
+
0
|
| 134 |
+
],
|
| 135 |
+
"audio": [
|
| 136 |
+
"121",
|
| 137 |
+
0
|
| 138 |
+
]
|
| 139 |
+
},
|
| 140 |
+
"_meta": {
|
| 141 |
+
"title": "CreateVideo"
|
| 142 |
+
}
|
| 143 |
+
},
|
| 144 |
+
"92": {
|
| 145 |
+
"class_type": "SaveVideo",
|
| 146 |
+
"inputs": {
|
| 147 |
+
"filename_prefix": "video/mainodes_adapter_baseline",
|
| 148 |
+
"format": "auto",
|
| 149 |
+
"codec": "auto",
|
| 150 |
+
"video": [
|
| 151 |
+
"130",
|
| 152 |
+
0
|
| 153 |
+
]
|
| 154 |
+
},
|
| 155 |
+
"_meta": {
|
| 156 |
+
"title": "SaveVideo"
|
| 157 |
+
}
|
| 158 |
+
},
|
| 159 |
+
"131": {
|
| 160 |
+
"class_type": "MiniMaxH3ImageToVideo",
|
| 161 |
+
"inputs": {
|
| 162 |
+
"prompt": "integrated_multimodal_description: [Shot 1] 2D anime, cel-shaded, cinematic, a medium-wide shot frames a young battle-mage swordswoman alone on a stone platform before a great vermilion torii gate at a cliff edge above a rolling sea of dawn clouds, warm gold light breaking across the platform, small white seabirds far below. She has raven-black hair in two long twin-tails tied with white ribbons that hang to her waist. She wears a sleeveless crimson and white shrine-battle outfit with a bare back and shoulders, a short pleated white skirt with a long open crimson half-skirt trailing behind her knees, white ribbon tassels at both hips, fingerless long black gloves, and lace-topped white thigh-high stockings with red cord ties; she carries a curved crimson-lacquered blade trailing two long white streamers from its hilt. She snaps her free hand up and four translucent spectral swords of pale golden light materialize around her, orbiting her body in a fast level ring at waist height, each trailing thin light. As the ring spins she launches sideways into a one-handed cartwheel directly through the orbit, her legs sweeping overhead in turn, twin-tails, ribbons, half-skirt and streamers whipping through the gaps between the circling spectral blades, and lands back on both feet without breaking the ring's spin. She then drops low and whirls her real blade in a rising diagonal cut; the four spectral swords break from their orbit, streak outward away from her in four directions, and shatter against the stone floor of the platform into brief showers of golden petals of light that fade where they fall. She finishes upright with the blade raised before the torii gate, streamers and twin-tails swinging once and settling. The camera holds a Static Shot at chest height for the whole clip; the platform and gate stay fixed while only the swordswoman, her blade, the spectral swords, her hair, ribbons, skirts and streamers, and the golden petals move. Every frame is crisp and sharp as if shot at a very high shutter speed, her limbs, each ribbon, streamer and skirt pleat held in fine clean detail through every instant of the motion, deep depth of field front to back.\n\noverall_soundscape: A bright ringing shimmer as the four spectral swords materialize and orbit with a low circling hum, the sharp rustle and snap of ribbons, pleats and streamers through the cartwheel, both soles landing on stone with a clean double tap, a hard whoosh with the rising cut, four quick glassy bursts as the spectral blades shatter into petals, and a soft high wind over the sea of clouds with distant seabird cries.\n\nnon_diegetic_music: N/A",
|
| 163 |
+
"width": [
|
| 164 |
+
"115",
|
| 165 |
+
0
|
| 166 |
+
],
|
| 167 |
+
"height": [
|
| 168 |
+
"115",
|
| 169 |
+
1
|
| 170 |
+
],
|
| 171 |
+
"length": [
|
| 172 |
+
"132",
|
| 173 |
+
1
|
| 174 |
+
],
|
| 175 |
+
"clip": [
|
| 176 |
+
"128",
|
| 177 |
+
0
|
| 178 |
+
],
|
| 179 |
+
"vae": [
|
| 180 |
+
"119",
|
| 181 |
+
0
|
| 182 |
+
]
|
| 183 |
+
},
|
| 184 |
+
"_meta": {
|
| 185 |
+
"title": "MiniMaxH3ImageToVideo"
|
| 186 |
+
}
|
| 187 |
+
},
|
| 188 |
+
"124": {
|
| 189 |
+
"class_type": "BasicScheduler",
|
| 190 |
+
"inputs": {
|
| 191 |
+
"scheduler": "simple",
|
| 192 |
+
"steps": 25,
|
| 193 |
+
"denoise": 1,
|
| 194 |
+
"model": [
|
| 195 |
+
"127",
|
| 196 |
+
0
|
| 197 |
+
]
|
| 198 |
+
},
|
| 199 |
+
"_meta": {
|
| 200 |
+
"title": "BasicScheduler"
|
| 201 |
+
}
|
| 202 |
+
},
|
| 203 |
+
"133": {
|
| 204 |
+
"class_type": "PrimitiveFloat",
|
| 205 |
+
"inputs": {
|
| 206 |
+
"value": 5.0
|
| 207 |
+
},
|
| 208 |
+
"_meta": {
|
| 209 |
+
"title": "Float (duration)"
|
| 210 |
+
}
|
| 211 |
+
},
|
| 212 |
+
"132": {
|
| 213 |
+
"class_type": "ComfyMathExpression",
|
| 214 |
+
"inputs": {
|
| 215 |
+
"expression": "max(5, round(a * 24)) + (5 - (max(5, round(a * 24)) % 17)) % 17",
|
| 216 |
+
"values.a": [
|
| 217 |
+
"133",
|
| 218 |
+
0
|
| 219 |
+
]
|
| 220 |
+
},
|
| 221 |
+
"_meta": {
|
| 222 |
+
"title": "ComfyMathExpression"
|
| 223 |
+
}
|
| 224 |
+
},
|
| 225 |
+
"115": {
|
| 226 |
+
"class_type": "ResolutionSelector",
|
| 227 |
+
"inputs": {
|
| 228 |
+
"aspect_ratio": "1:1 (Square)",
|
| 229 |
+
"megapixels": 1.0,
|
| 230 |
+
"multiple": 32
|
| 231 |
+
},
|
| 232 |
+
"_meta": {
|
| 233 |
+
"title": "ResolutionSelector"
|
| 234 |
+
}
|
| 235 |
+
},
|
| 236 |
+
"135": {
|
| 237 |
+
"class_type": "KSamplerSelect",
|
| 238 |
+
"inputs": {
|
| 239 |
+
"sampler_name": "res_multistep"
|
| 240 |
+
},
|
| 241 |
+
"_meta": {
|
| 242 |
+
"title": "KSamplerSelect"
|
| 243 |
+
}
|
| 244 |
+
},
|
| 245 |
+
"200": {
|
| 246 |
+
"class_type": "H3JerkOracle",
|
| 247 |
+
"inputs": {
|
| 248 |
+
"samples": [
|
| 249 |
+
"125",
|
| 250 |
+
0
|
| 251 |
+
],
|
| 252 |
+
"length": [
|
| 253 |
+
"132",
|
| 254 |
+
1
|
| 255 |
+
],
|
| 256 |
+
"q": 0.75,
|
| 257 |
+
"d_max": 4,
|
| 258 |
+
"ramp": true
|
| 259 |
+
}
|
| 260 |
+
},
|
| 261 |
+
"201": {
|
| 262 |
+
"class_type": "H3TimeSmear",
|
| 263 |
+
"inputs": {
|
| 264 |
+
"images": [
|
| 265 |
+
"122",
|
| 266 |
+
0
|
| 267 |
+
],
|
| 268 |
+
"dilation": 4,
|
| 269 |
+
"hold_map": [
|
| 270 |
+
"200",
|
| 271 |
+
0
|
| 272 |
+
]
|
| 273 |
+
}
|
| 274 |
+
},
|
| 275 |
+
"202": {
|
| 276 |
+
"class_type": "VAEEncode",
|
| 277 |
+
"inputs": {
|
| 278 |
+
"pixels": [
|
| 279 |
+
"201",
|
| 280 |
+
0
|
| 281 |
+
],
|
| 282 |
+
"vae": [
|
| 283 |
+
"119",
|
| 284 |
+
0
|
| 285 |
+
]
|
| 286 |
+
}
|
| 287 |
+
},
|
| 288 |
+
"203": {
|
| 289 |
+
"class_type": "H3V2VInit",
|
| 290 |
+
"inputs": {
|
| 291 |
+
"samples": [
|
| 292 |
+
"202",
|
| 293 |
+
0
|
| 294 |
+
]
|
| 295 |
+
}
|
| 296 |
+
},
|
| 297 |
+
"204": {
|
| 298 |
+
"class_type": "H3InjectSchedule",
|
| 299 |
+
"inputs": {
|
| 300 |
+
"model": [
|
| 301 |
+
"600",
|
| 302 |
+
0
|
| 303 |
+
],
|
| 304 |
+
"scheduler": "simple",
|
| 305 |
+
"total_steps": 25,
|
| 306 |
+
"inject": 0.45
|
| 307 |
+
}
|
| 308 |
+
},
|
| 309 |
+
"205": {
|
| 310 |
+
"class_type": "RandomNoise",
|
| 311 |
+
"inputs": {
|
| 312 |
+
"noise_seed": 20260899
|
| 313 |
+
}
|
| 314 |
+
},
|
| 315 |
+
"206": {
|
| 316 |
+
"class_type": "MiniMaxH3ImageToVideo",
|
| 317 |
+
"inputs": {
|
| 318 |
+
"prompt": "integrated_multimodal_description: [Shot 1] 2D anime, cel-shaded, cinematic, a medium-wide shot frames a young battle-mage swordswoman alone on a stone platform before a great vermilion torii gate at a cliff edge above a rolling sea of dawn clouds, warm gold light breaking across the platform, small white seabirds far below. She has raven-black hair in two long twin-tails tied with white ribbons that hang to her waist. She wears a sleeveless crimson and white shrine-battle outfit with a bare back and shoulders, a short pleated white skirt with a long open crimson half-skirt trailing behind her knees, white ribbon tassels at both hips, fingerless long black gloves, and lace-topped white thigh-high stockings with red cord ties; she carries a curved crimson-lacquered blade trailing two long white streamers from its hilt. She snaps her free hand up and four translucent spectral swords of pale golden light materialize around her, orbiting her body in a fast level ring at waist height, each trailing thin light. As the ring spins she launches sideways into a one-handed cartwheel directly through the orbit, her legs sweeping overhead in turn, twin-tails, ribbons, half-skirt and streamers whipping through the gaps between the circling spectral blades, and lands back on both feet without breaking the ring's spin. She then drops low and whirls her real blade in a rising diagonal cut; the four spectral swords break from their orbit, streak outward away from her in four directions, and shatter against the stone floor of the platform into brief showers of golden petals of light that fade where they fall. She finishes upright with the blade raised before the torii gate, streamers and twin-tails swinging once and settling. The camera holds a Static Shot at chest height for the whole clip; the platform and gate stay fixed while only the swordswoman, her blade, the spectral swords, her hair, ribbons, skirts and streamers, and the golden petals move. Every frame is crisp and sharp as if shot at a very high shutter speed, her limbs, each ribbon, streamer and skirt pleat held in fine clean detail through every instant of the motion, deep depth of field front to back.\n\noverall_soundscape: A bright ringing shimmer as the four spectral swords materialize and orbit with a low circling hum, the sharp rustle and snap of ribbons, pleats and streamers through the cartwheel, both soles landing on stone with a clean double tap, a hard whoosh with the rising cut, four quick glassy bursts as the spectral blades shatter into petals, and a soft high wind over the sea of clouds with distant seabird cries.\n\nnon_diegetic_music: N/A",
|
| 319 |
+
"width": [
|
| 320 |
+
"115",
|
| 321 |
+
0
|
| 322 |
+
],
|
| 323 |
+
"height": [
|
| 324 |
+
"115",
|
| 325 |
+
1
|
| 326 |
+
],
|
| 327 |
+
"length": [
|
| 328 |
+
"201",
|
| 329 |
+
2
|
| 330 |
+
],
|
| 331 |
+
"clip": [
|
| 332 |
+
"128",
|
| 333 |
+
0
|
| 334 |
+
],
|
| 335 |
+
"vae": [
|
| 336 |
+
"119",
|
| 337 |
+
0
|
| 338 |
+
]
|
| 339 |
+
}
|
| 340 |
+
},
|
| 341 |
+
"207": {
|
| 342 |
+
"class_type": "BasicGuider",
|
| 343 |
+
"inputs": {
|
| 344 |
+
"model": [
|
| 345 |
+
"600",
|
| 346 |
+
0
|
| 347 |
+
],
|
| 348 |
+
"conditioning": [
|
| 349 |
+
"206",
|
| 350 |
+
0
|
| 351 |
+
]
|
| 352 |
+
}
|
| 353 |
+
},
|
| 354 |
+
"208": {
|
| 355 |
+
"class_type": "SamplerCustomAdvanced",
|
| 356 |
+
"inputs": {
|
| 357 |
+
"noise": [
|
| 358 |
+
"205",
|
| 359 |
+
0
|
| 360 |
+
],
|
| 361 |
+
"guider": [
|
| 362 |
+
"207",
|
| 363 |
+
0
|
| 364 |
+
],
|
| 365 |
+
"sampler": [
|
| 366 |
+
"135",
|
| 367 |
+
0
|
| 368 |
+
],
|
| 369 |
+
"sigmas": [
|
| 370 |
+
"204",
|
| 371 |
+
0
|
| 372 |
+
],
|
| 373 |
+
"latent_image": [
|
| 374 |
+
"203",
|
| 375 |
+
0
|
| 376 |
+
]
|
| 377 |
+
}
|
| 378 |
+
},
|
| 379 |
+
"209": {
|
| 380 |
+
"class_type": "VAEDecode",
|
| 381 |
+
"inputs": {
|
| 382 |
+
"samples": [
|
| 383 |
+
"208",
|
| 384 |
+
0
|
| 385 |
+
],
|
| 386 |
+
"vae": [
|
| 387 |
+
"119",
|
| 388 |
+
0
|
| 389 |
+
]
|
| 390 |
+
}
|
| 391 |
+
},
|
| 392 |
+
"210": {
|
| 393 |
+
"class_type": "VAEDecodeAudio",
|
| 394 |
+
"inputs": {
|
| 395 |
+
"samples": [
|
| 396 |
+
"208",
|
| 397 |
+
0
|
| 398 |
+
],
|
| 399 |
+
"vae": [
|
| 400 |
+
"120",
|
| 401 |
+
0
|
| 402 |
+
]
|
| 403 |
+
}
|
| 404 |
+
},
|
| 405 |
+
"211": {
|
| 406 |
+
"class_type": "CreateVideo",
|
| 407 |
+
"inputs": {
|
| 408 |
+
"images": [
|
| 409 |
+
"209",
|
| 410 |
+
0
|
| 411 |
+
],
|
| 412 |
+
"audio": [
|
| 413 |
+
"210",
|
| 414 |
+
0
|
| 415 |
+
],
|
| 416 |
+
"fps": 24,
|
| 417 |
+
"bit_depth": 8
|
| 418 |
+
}
|
| 419 |
+
},
|
| 420 |
+
"212": {
|
| 421 |
+
"class_type": "SaveVideo",
|
| 422 |
+
"inputs": {
|
| 423 |
+
"video": [
|
| 424 |
+
"211",
|
| 425 |
+
0
|
| 426 |
+
],
|
| 427 |
+
"filename_prefix": "video/mainodes_adapter_dilated",
|
| 428 |
+
"format": "auto",
|
| 429 |
+
"codec": "auto"
|
| 430 |
+
}
|
| 431 |
+
},
|
| 432 |
+
"213": {
|
| 433 |
+
"class_type": "H3ExactRecover",
|
| 434 |
+
"inputs": {
|
| 435 |
+
"images": [
|
| 436 |
+
"209",
|
| 437 |
+
0
|
| 438 |
+
],
|
| 439 |
+
"hold_map": [
|
| 440 |
+
"201",
|
| 441 |
+
1
|
| 442 |
+
]
|
| 443 |
+
}
|
| 444 |
+
},
|
| 445 |
+
"214": {
|
| 446 |
+
"class_type": "CreateVideo",
|
| 447 |
+
"inputs": {
|
| 448 |
+
"images": [
|
| 449 |
+
"213",
|
| 450 |
+
0
|
| 451 |
+
],
|
| 452 |
+
"fps": 24,
|
| 453 |
+
"bit_depth": 8,
|
| 454 |
+
"audio": [
|
| 455 |
+
"219",
|
| 456 |
+
0
|
| 457 |
+
]
|
| 458 |
+
}
|
| 459 |
+
},
|
| 460 |
+
"215": {
|
| 461 |
+
"class_type": "SaveVideo",
|
| 462 |
+
"inputs": {
|
| 463 |
+
"video": [
|
| 464 |
+
"214",
|
| 465 |
+
0
|
| 466 |
+
],
|
| 467 |
+
"filename_prefix": "video/mainodes_adapter_recovered",
|
| 468 |
+
"format": "auto",
|
| 469 |
+
"codec": "auto"
|
| 470 |
+
}
|
| 471 |
+
},
|
| 472 |
+
"216": {
|
| 473 |
+
"class_type": "H3JerkHeatmap",
|
| 474 |
+
"inputs": {
|
| 475 |
+
"images": [
|
| 476 |
+
"122",
|
| 477 |
+
0
|
| 478 |
+
],
|
| 479 |
+
"samples": [
|
| 480 |
+
"125",
|
| 481 |
+
0
|
| 482 |
+
],
|
| 483 |
+
"alpha": 0.55,
|
| 484 |
+
"strip_height": 96
|
| 485 |
+
}
|
| 486 |
+
},
|
| 487 |
+
"217": {
|
| 488 |
+
"class_type": "CreateVideo",
|
| 489 |
+
"inputs": {
|
| 490 |
+
"images": [
|
| 491 |
+
"216",
|
| 492 |
+
0
|
| 493 |
+
],
|
| 494 |
+
"fps": 24,
|
| 495 |
+
"bit_depth": 8
|
| 496 |
+
}
|
| 497 |
+
},
|
| 498 |
+
"218": {
|
| 499 |
+
"class_type": "SaveVideo",
|
| 500 |
+
"inputs": {
|
| 501 |
+
"video": [
|
| 502 |
+
"217",
|
| 503 |
+
0
|
| 504 |
+
],
|
| 505 |
+
"filename_prefix": "video/mainodes_adapter_oraclemap",
|
| 506 |
+
"format": "auto",
|
| 507 |
+
"codec": "auto"
|
| 508 |
+
}
|
| 509 |
+
},
|
| 510 |
+
"219": {
|
| 511 |
+
"class_type": "H3AudioRecover",
|
| 512 |
+
"inputs": {
|
| 513 |
+
"audio": [
|
| 514 |
+
"210",
|
| 515 |
+
0
|
| 516 |
+
],
|
| 517 |
+
"hold_map": [
|
| 518 |
+
"201",
|
| 519 |
+
1
|
| 520 |
+
],
|
| 521 |
+
"fps": 24,
|
| 522 |
+
"reference": [
|
| 523 |
+
"121",
|
| 524 |
+
0
|
| 525 |
+
],
|
| 526 |
+
"reference_mix": 0.0
|
| 527 |
+
}
|
| 528 |
+
},
|
| 529 |
+
"600": {
|
| 530 |
+
"class_type": "LoraLoaderModelOnly",
|
| 531 |
+
"inputs": {
|
| 532 |
+
"model": [
|
| 533 |
+
"127",
|
| 534 |
+
0
|
| 535 |
+
],
|
| 536 |
+
"lora_name": "minimax_h3/minimax_h3_motion_adapter_pilot_r16.safetensors",
|
| 537 |
+
"strength_model": 1.0
|
| 538 |
+
},
|
| 539 |
+
"_meta": {
|
| 540 |
+
"title": "Motion adapter (de-rope pass only)"
|
| 541 |
+
}
|
| 542 |
+
}
|
| 543 |
+
}
|