Spaces:
Running on Zero
Running on Zero
Default steps 4 -> 6
Browse files- README.md +1 -1
- app.py +2 -2
- index.html +2 -2
README.md
CHANGED
|
@@ -47,7 +47,7 @@ callers get the same treatment the old upload event gave.
|
|
| 47 |
## 4-step Turbo LoRA
|
| 48 |
|
| 49 |
The transformer runs with [`larryvrh/MiniMax-H3-Turbo-Lora`](https://huggingface.co/larryvrh/MiniMax-H3-Turbo-Lora)
|
| 50 |
-
folded into its bf16 weights at startup (`h3_lora.py`), so the default is **
|
| 51 |
card's comfort zone at the current checkpoint; 4 is the design point but softer). The fold mirrors the diffusers key
|
| 52 |
conversion exactly (fused-QKV thirds, the `SwiGLU` gate/value swap, the shared AdaLN row layout) and happens before
|
| 53 |
the AoTI package is patched in, so compiled blocks carry the update too. The low-rank factors stay resident, so the
|
|
|
|
| 47 |
## 4-step Turbo LoRA
|
| 48 |
|
| 49 |
The transformer runs with [`larryvrh/MiniMax-H3-Turbo-Lora`](https://huggingface.co/larryvrh/MiniMax-H3-Turbo-Lora)
|
| 50 |
+
folded into its bf16 weights at startup (`h3_lora.py`), so the default is **6 sampling steps** instead of 28
|
| 51 |
card's comfort zone at the current checkpoint; 4 is the design point but softer). The fold mirrors the diffusers key
|
| 52 |
conversion exactly (fused-QKV thirds, the `SwiGLU` gate/value swap, the shared AdaLN row layout) and happens before
|
| 53 |
the AoTI package is patched in, so compiled blocks carry the update too. The low-rank factors stay resident, so the
|
app.py
CHANGED
|
@@ -302,7 +302,7 @@ def _fit_keyframe(image_path, current_canvas):
|
|
| 302 |
return image_path, label
|
| 303 |
|
| 304 |
|
| 305 |
-
def generate(prompt, image_path=None, last_image_path=None, canvas=DEFAULT_CANVAS, duration=5, steps=
|
| 306 |
"""One request. `upsample` is last and defaults off, so a positional API client that predates it is unaffected."""
|
| 307 |
if LOAD_ERROR:
|
| 308 |
raise Exception(LOAD_ERROR)
|
|
@@ -379,7 +379,7 @@ app = Server(title="MiniMax-H3 Studio")
|
|
| 379 |
|
| 380 |
@app.api(name="generate")
|
| 381 |
def _generate_api(prompt: str, image_path: FileData | None = None, last_image_path: FileData | None = None,
|
| 382 |
-
canvas: str = DEFAULT_CANVAS, duration: float = 5, steps: int =
|
| 383 |
upsample: bool = False, use_lora: bool = True, request: Request = None) -> tuple[FileData, str, str]:
|
| 384 |
"""Generate a video with a synchronized soundtrack. Returns (video, report, refined prompt)."""
|
| 385 |
# `request` is injected by the event system, not an API input; its x-ip-token bills the conditioner to the caller.
|
|
|
|
| 302 |
return image_path, label
|
| 303 |
|
| 304 |
|
| 305 |
+
def generate(prompt, image_path=None, last_image_path=None, canvas=DEFAULT_CANVAS, duration=5, steps=6, seed=42, upsample=False, use_lora=True, ip_token=None):
|
| 306 |
"""One request. `upsample` is last and defaults off, so a positional API client that predates it is unaffected."""
|
| 307 |
if LOAD_ERROR:
|
| 308 |
raise Exception(LOAD_ERROR)
|
|
|
|
| 379 |
|
| 380 |
@app.api(name="generate")
|
| 381 |
def _generate_api(prompt: str, image_path: FileData | None = None, last_image_path: FileData | None = None,
|
| 382 |
+
canvas: str = DEFAULT_CANVAS, duration: float = 5, steps: int = 6, seed: float = 42,
|
| 383 |
upsample: bool = False, use_lora: bool = True, request: Request = None) -> tuple[FileData, str, str]:
|
| 384 |
"""Generate a video with a synchronized soundtrack. Returns (video, report, refined prompt)."""
|
| 385 |
# `request` is injected by the event system, not an API input; its x-ip-token bills the conditioner to the caller.
|
index.html
CHANGED
|
@@ -211,8 +211,8 @@
|
|
| 211 |
<input type="range" id="duration" min="2" max="14" step="1" value="5">
|
| 212 |
</div>
|
| 213 |
<div>
|
| 214 |
-
<div class="slider-row"><span>Steps</span><output id="steps-out">
|
| 215 |
-
<input type="range" id="steps" min="2" max="40" step="1" value="
|
| 216 |
</div>
|
| 217 |
<div>
|
| 218 |
<div class="deck-label">Seed</div>
|
|
|
|
| 211 |
<input type="range" id="duration" min="2" max="14" step="1" value="5">
|
| 212 |
</div>
|
| 213 |
<div>
|
| 214 |
+
<div class="slider-row"><span>Steps</span><output id="steps-out">6</output></div>
|
| 215 |
+
<input type="range" id="steps" min="2" max="40" step="1" value="6">
|
| 216 |
</div>
|
| 217 |
<div>
|
| 218 |
<div class="deck-label">Seed</div>
|