H3 Studio · Prompt Prep Benchmark
How long is your prompt pipeline *actually* taking?
- h3_bundle
- studio_context
- benchmark_report
- benchmark_json
Here's a confusing situation: you enable H3 Studio's Qwen prompt pipeline, and suddenly every generation has a noticeable pause before sampling starts. Is that the model loading? The analyzer? The prompt writer? H3StudioPromptPrepBenchmark exists to answer that specific question. It benchmarks only H3 Studio's prompt preparation - no H3 generation is sampled or modified - and tells you where your seconds actually go.
The description is precise about scope: "cold model load, warm analyzer, prompt writer, model switching, cache hit, retries, output tokens and peak memory." That's the full menu of things that happen between "you clicked queue" and "the sampler starts," and any one of them can be the reason a simple prompt feels slow.
The inputs
- test_case - eight representative scenarios: single portrait, full-body character, object interaction, complex environment, multiple reference images, text/OCR, style reference, and lighting/materials. Pick the one that matches how you actually prompt.
- profiles - A only, A+B, A+B+C, A+B+C+D, or D only. These map to the analyzer/writer combinations (e.g. "Same as image analyzer" vs a separate writer). The A+B+C+D default runs the full ladder.
Both h3_bundle and studio_context are required inputs, so this sits in a graph with the Loader and Director like everything else - you're benchmarking the exact configuration you run, not a toy.
What you get back
Two string outputs: benchmark_report (human-readable) and benchmark_json (machine-readable, for the spreadsheet-inclined). The report breaks down the phases - cold load, warm analyzer, writer, model switching, cache hits, retries, output token counts, peak memory. Read it once with the Qwen pipeline enabled and once with it off, and you'll know exactly what the enhancement mode is buying and costing you.
That's the real use case: deciding whether the prompt pipeline is worth it. The pack keeps pixel analysis and prompt writing cached independently, so the report also shows you the difference between a cache-miss first run and subsequent cache-hit runs. If the analyzer is eating 30 seconds of every generation, that's a concrete argument for switching to the GGUF fast path or disabling the pipeline for simple prompts.
When to skip it
If you never enable the VLM/analyzer options and just use compile_only, this node measures almost nothing - the compilation step is deterministic and fast. It's a niche tool with a narrow job, and it does that job well. Run it once when you're tuning your prompt-prep configuration, read the report, and let it collect dust.
Install
cd ComfyUI/custom_nodes
git clone https://github.com/thaakeno/ComfyUI-MiniMax-H3-Studio.git
cd ComfyUI-MiniMax-H3-Studio
python -m pip install -r requirements.txt
Restart and hard-refresh the frontend. The VLM analyzer/writer options need the optional pip install -e ".[vlm]" dependency set; the benchmark itself has no extra requirements.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| h3_bundle | H3_STUDIO_BUNDLE | — | |
| studio_context | H3_STUDIO_CONTEXT | — | |
| test_case | COMBO | single portrait | 8 options: single portrait, full-body character, object interaction, complex environment, multiple reference images, text / OCR, +2 |
| profiles | COMBO | A+B+C+D | 5 options: A+B+C+D, A only, A+B, A+B+C, D only |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| benchmark_report | STRING | — |
| benchmark_json | STRING | — |