Instructions to use yama-kiyo/MiniMax-H3-ORB360-Vertical-LoRA with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Inference
- Notebooks
- Google Colab
- Kaggle
Yama-kiyo has disallowed access to this model in the EU
Downloads of this model are not accessible from the European Union (EU). Please read the model card for more information.
Access ORB360 Vertical-LoRA (MiniMax H3 Community License)
This repository is publicly accessible, but you have to accept the conditions to access its files and content.
These LoRA weights are a Model Derivative of MiniMax H3 and are distributed only under the MiniMax H3 Community License Agreement (see LICENSE and NOTICE in this repository). They are not MIT-licensed. The Agreement does not authorize using, reproducing, modifying, distributing or displaying MiniMax H3 Works or their outputs in the European Union, the United Kingdom, the Republic of Korea or the United States. Access from the European Union is blocked. This is an unofficial project, not affiliated with or endorsed by MiniMax, fal or MATLOWAI (ORB360).
Log in or Sign Up to review the conditions and access this model content.
MiniMax-H3 ORB360 Vertical-LoRA v0.1
A rank-16 LoRA for MiniMax-H3 Ref2VA that moves the camera vertically around a still subject. Give it one eye-level picture; the camera rises to directly above the subject, comes back to eye level, dips below to look up at it from -60 degrees, and returns to the starting view, in one 5-second clip.
| File | What it is |
|---|---|
orb360_vertical_v0.1_s3000.safetensors |
The LoRA (3000 training steps, PEFT format, 65.6 MB) |
Read before using
- Unofficial. Not affiliated with or endorsed by MiniMax, fal, or MATLOWAI (the author of ORB360).
- The weights are not MIT. They are a Model Derivative of MiniMax H3 and are distributed only under the MiniMax H3 Community License Agreement (see also NOTICE). Its use restrictions (Section V) and Acceptable Use Policy (Exhibit A) apply to you. This repository does not expand them.
- Territory. The Agreement does not authorize using, reproducing, modifying, distributing or displaying MiniMax H3 Works or their outputs in the European Union, the United Kingdom, the Republic of Korea or the United States. Access is gated: you confirm your country and agree to the terms; access from the EU is blocked. If you are in one of those regions, you need a separate license from MiniMax (application: https://platform.minimax.io/h3-license).
- AI-generated content. Videos made with this LoRA are machine-generated. If you publish them, say so clearly (Acceptable Use Policy, item 12).
Powered by MiniMax H3.
AI-generated (MiniMax H3). Left: no LoRA (scale 0). Right: this LoRA. Same picture, prompt and seed. The sample files are inside this gated repository, so they show once you have been granted access.
What it does
| Input | 1 eye-level reference picture (or 3: front, side, back, all at eye level) + a prompt in the format below |
| Output | 124 frames at 24 fps (fal duration: 5). First and last frame = the reference view |
| Camera path | 0 -> +90 (directly above) -> 0 -> -60 (below, looking up) -> 0, constant speed between milestones |
| Base model | MiniMax-H3 Ref2VA (tested on fal minimax/h3/reference-to-video/lora) |
| Format | PEFT (diffusion_model.….lora_A/lora_B.weight), 208 tensors, rank 16, BF16, no alpha keys; attention qkv_proj/out_proj of the transformer blocks and the token refiner |
| Trigger word | none (the trainer's trigger_phrase was empty). Prompts start with [reference generation] ORB360V. as in training |
| Recommended | scale 1.0, 768P, duration 5, prompt_expansion_mode: disabled |
Download
After you are granted access (fill in the form on this page; approval is automatic), take the file from Files and versions, or:
hf auth login
hf download yama-kiyo/MiniMax-H3-ORB360-Vertical-LoRA orb360_vertical_v0.1_s3000.safetensors SHA256SUMS --local-dir .
shasum -a 256 -c SHA256SUMS
Relation to ORB360
ORB360 by MATLOWAI is a LoRA for the same model
(H3 Ref2VA) that orbits the camera horizontally around a subject. This project is a separate, unofficial
LoRA by a different author for the vertical direction. It was trained from scratch on our own renders; it
does not contain or start from ORB360's weights (different rank and format). We borrowed ORB360's caption style
(milestones with seconds, frame numbers and angles); the prefix ORB360V is just the first word of our training
captions, not an official ORB360 trigger.
Because both start from one eye-level picture of the same kind, you can use them side by side in one workflow (horizontal orbit with ORB360, vertical move with this one). Loading both LoRAs in the same generation has not been tested. ORB360's files are kohya-style for ComfyUI / musubi-tuner; this file is PEFT as produced by fal's trainer.
Using it (fal)
pip install fal-client
export FAL_KEY=... # your own key, from the environment only
python3 examples/generate_fal.py \
--lora orb360_vertical_v0.1_s3000.safetensors \
--ref examples/refs/vase_front.png \
--prompt-file examples/prompts/vase_r1.txt \
--out vase_vertical.mp4
--dry-runprints the request without contacting fal. Each real run is billed by fal.- The local
--lorafile is uploaded to fal storage first (fal's CDN serves it from a URL). This repository is gated, so fal cannot fetch the file from Hugging Face directly. - Three references:
--ref front.png --ref side.png --ref back.pngwith a 3-reference prompt (*_r3.txt). - The request the script sends:
{
"prompt": "[reference generation] ORB360V. An antique white ceramic vase ...",
"reference_image_urls": ["<front.png>"],
"duration": 5, "resolution": "768P", "aspect_ratio": "adaptive",
"prompt_expansion_mode": "disabled", "seed": 20260926,
"loras": [{"path": "<orb360_vertical_v0.1_s3000.safetensors>", "scale": 1.0}]
}
Prompt format
Write your own with examples/make_prompt.py:
python3 examples/make_prompt.py --subject "antique white ceramic vase with a blue floral pattern" \
--background "on a plain gray studio background" # 1 reference
python3 examples/make_prompt.py --subject "..." --background "inside a hotel room" --refs 3
The prompt names the subject and where it is, says nothing moves, and lists the milestones:
[reference generation] ORB360V. A <subject> <background>, static, nothing moves. The shot starts and ends on the
same eye-level view of the subject, matching the first reference image. The camera moves vertically along a single
meridian around the stationary subject at constant radius: it rises to directly above the subject, comes back down
to eye level, continues below the subject to look up at it, and returns to eye level. 50mm lens, subject centered,
no zoom, no camera roll. [3 references only: The second reference image shows the subject at eye level from the
side (90 degrees around), and the third from behind (180 degrees around).] The video runs at 24 fps, and the camera
moves at constant angular speed between these milestones. At 0.000000 seconds (zero-based frame 0), elevation 0
degrees (eye level). At 1.541667 seconds (zero-based frame 37), elevation +90 degrees (directly above, looking
down). At 3.083333 seconds (zero-based frame 74), elevation 0 degrees (eye level). At 4.083333 seconds (zero-based
frame 98), elevation -60 degrees (below, looking up). At 5.125000 seconds (zero-based frame 123), elevation 0
degrees (eye level), the same view as frame 0.
Keep the length at 124 frames (fal duration: 5): the times and frame numbers assume it. Avoid weather words
(snow, rain, sky); they were never in the training captions. --trajectory U (up only) and D (down only) build
prompts for the other two paths in the training data; those have not been evaluated.
Frames and elevations (default path)
| Frame | Time (s) | Elevation | View |
|---|---|---|---|
| 0 | 0.000 | 0 | eye level = reference picture |
| 18-19 | 0.75-0.79 | about +45 | above |
| 37 | 1.542 | +90 | directly above, looking down |
| 55-56 | 2.29-2.33 | about +45 | above (on the way back) |
| 74 | 3.083 | 0 | eye level |
| 86 | 3.583 | -30 | below |
| 98 | 4.083 | -60 | below, looking up |
| 110-111 | 4.58-4.63 | about -30 | below (on the way back) |
| 123 | 5.125 | 0 | eye level = first frame |
Constant angular speed between milestones: 2.4 to 2.5 degrees per frame. Take a single view out of a clip with
python3 examples/extract_elevation_frame.py vase_vertical.mp4 --elevation 90 -o top.png
python3 examples/extract_elevation_frame.py vase_vertical.mp4 --elevation -60 -o below.png
python3 examples/extract_elevation_frame.py vase_vertical.mp4 --elevation 45 --occurrence 2 -o down45.png
python3 examples/extract_elevation_frame.py --table # every frame's target elevation
These are the angles the prompt asks for. The generated frames follow them closely in our tests, but the actual angle of each frame has not been measured.
How well it works
Endpoint minimax/h3/reference-to-video/lora on fal, 768P, duration 5, aspect_ratio: adaptive,
prompt_expansion_mode: disabled, seed 20260926, one generation per condition. Baseline = the same call with
the LoRA at scale 0.
Conditions (8): three Poly Haven objects that were not in the training data (concrete cat statue, boombox, ceramic vase), each with 1 and with 3 reference pictures; one photorealistic picture of a fictional person seated in a theater; one monochrome manga-style illustration. The person and illustration samples are not published here.
| Milestone | Baseline (scale 0) | This LoRA (3000 steps) |
|---|---|---|
| Frame 37: directly above | reaches a top view | top view in all 8 |
| Frame 74: back at eye level | no: the camera carries on past the top instead of turning back, so the subject is upside down or not visible | eye level in all 8 |
| Frame 98: looking up from -60 | inconsistent | looking up in all 8 (in the person and illustration tests, theater seats or a table come into the foreground and cover much of the subject) |
| Frame 123: the reference view again | yes | yes |
Samples: vase, cat statue, boombox (MP4s in samples/).
A 1500-step checkpoint behaved almost the same, but washed out the centre of the frame in the person's looking-up shot, so the 3000-step file is the one released.
Limitations
- Prototype: 40 training clips of 8 rendered objects, one seed per test, 8 test conditions.
- Looking up: if the picture shows a table, seats or a floor in front of or under the subject, they can fill the foreground at -60 degrees and hide most of the subject. Plain-background objects work best.
- Abrupt turns: the training clips move at constant speed, so the camera reverses suddenly at +90 and -60.
- Aspect ratio: with
aspect_ratio: adaptive, our 4:3 pictures came back as 1344 x 768 (16:9). Other settings were not tested. - Range: -60 to +90 degrees. The camera turns back at the top instead of passing over it, and does not go below -60.
- Unseen sides are invented when you give one picture; three pictures (front, side, back) help.
- Thin, tall objects look small from directly above (the camera distance is set by the whole object).
- Tested only on fal's
/loraendpoint; ComfyUI and other loaders were not tested.
Training
fal minimax/h3/ref2va/trainer: rank 16, 3000 steps, learning rate 2e-4, 124 frames, 24 fps, resolution
medium, aspect ratio 4:3, reference_conditioning_p 0.9, empty trigger phrase. Data: 40 Blender (Cycles)
clips, 1024 x 768, of 8 CC0 objects from Poly Haven on plain gray or indoor HDRI backgrounds; 24 clips up-and-down,
8 up only, 8 down only; all start and end at eye level. No MiniMax H3 outputs were used as training data.
How to rebuild the dataset: dataset/README.md. Asset credits: dataset/ASSETS.md.
Files
orb360_vertical_v0.1_s3000.safetensors: the LoRA (65,628,032 bytes; SHA-256 inSHA256SUMS)examples/:generate_fal.py(fal call),make_prompt.py(prompt builder),extract_elevation_frame.py(one frame at a given elevation),prompts/(the evaluation prompts),refs/(eye-level reference renders of the three held-out CC0 objects)samples/: baseline vs LoRA side by side (MP4 and GIF), AI-generateddataset/: the scripts and spec that rebuild the training clips, and the asset listLICENSE(MiniMax H3 Community License Agreement),NOTICE,LICENSE-CODE(MIT, code only)
Base model and licence
This is a LoRA for MiniMax-H3 (Ref2VA) by MiniMax; it does nothing without the base weights.
- Weights (
*.safetensors): MiniMax H3 Community License Agreement only, with the NOTICE. Not MIT. This repository does not grant any rights beyond that Agreement. - Code (
examples/,dataset/scripts): MIT, see LICENSE-CODE. - Reference pictures and samples: renders of CC0 assets (pictures) and MiniMax H3 outputs (samples). The Agreement's territorial restrictions and Acceptable Use Policy apply to the outputs.
- The encoder of MiniMax H3 (Qwen3-VL-32B) is under Apache 2.0, as noted in the Agreement.
MiniMax H3 is licensed under the MiniMax H3 Community License Agreement, Copyright © 2026 MiniMax. All Rights Reserved. Powered by MiniMax H3.
Created by Kiyoshi Yamamoto. Thanks to MiniMax for H3, to MATLOWAI for ORB360 and its caption format, to fal for the trainer, and to the Poly Haven artists for the CC0 assets.
- Downloads last month
- 42
Model tree for yama-kiyo/MiniMax-H3-ORB360-Vertical-LoRA
Base model
MiniMaxAI/MiniMax-H3