This page explains how WanGP interprets the main text prompt: how multiline prompts are split or preserved, how prompt lines can be paired with multiple images, how a local or remote Prompt Enhancer changes the text, and how macros generate prompt variations.
In WanGP, the main prompt is always the text you write in the prompt box.
Depending on the model, that text can be used alone or together with:
Start Image,End Image, orReference ImagesControl VideoorSource VideoAudio Source,Audio Prompt (Soundtrack), orSpeaker reference voice
Even when a model also uses image, audio, or video conditioning, the text prompt still tells the model what you want to happen.
The same text box is used across very different kinds of models, so the best prompt style depends on the model you chose.
Examples:
Wan2.1 Text2video 14BQwen Image 20BTTS HeartMuLa OSS 3B
Practical use:
- For
Wan2.1 Text2video 14B, the prompt is your whole scene description. - For
Qwen Image 20B, the prompt can also describe posters, signs, or images with a lot of visible text, because this model is especially good at rendering long text inside images. - For
TTS HeartMuLa OSS 3B, the prompt is usually lyrics, while the extra tags field steers the musical style.
Examples:
Wan2.1 Image2video 480p 14BWan2.2 Image2video Enhanced Lightning v2 14B
Practical use:
- The image gives the model the subject, appearance, and composition.
- The text prompt should focus on motion, action, camera movement, and scene evolution.
This is why image-to-video prompts are often more useful when they say things like:
the woman smiles, turns toward the window, and the camera slowly pushes in
instead of re-describing every detail that is already visible in the image.
Examples:
TTS Chatterbox MultilingualTTS Index TTS 2TTS Qwen3 Base (12Hz) 1.7BTTS KugelAudio 0 Open 7B
Practical use:
- The text is the script or speech content.
- The audio input usually gives the voice identity, emotion, or speaking style.
For dialogue-capable models such as TTS Index TTS 2, TTS Qwen3 Base (12Hz) 1.7B, and TTS KugelAudio 0 Open 7B, the prompt can contain speaker tags such as Speaker 1: and Speaker 2:.
Examples:
Hunyuan Video Custom Audio 720p 13BHunyuan Video Avatar 720p 13B
Practical use:
Hunyuan Video Custom Audio 720p 13Bis useful when you want a person from a reference image to speak or sing using a recorded voice or song. The text prompt is still useful to describe the scene, mood, framing, or action.Hunyuan Video Avatar 720p 13Bis useful when the audio drives the animation, but you still want the prompt to guide the result, for example by asking for a close-up, a realistic setting, or a particular emotional tone.
Examples:
Hunyuan Video 1.5 Upsampler 720p 8B- control-video workflows in Wan and VACE models
Practical use:
- The control or source video gives the timing and structure.
- The text prompt tells the model what style, subject, or scene direction you want on top of that structure.
Some models do not want a purely descriptive prompt.
They expect the prompt to be an instruction applied to an existing image or video.
Practical examples in WanGP:
Qwen Image Edit 20BQwen Image Edit Plus (2509) 20BQwen Image Edit Plus (2511) 20BFlux 1 Dev Kontext 12BWan2.1 Chrono Edit 14BDitto 14B
For those models, the input image or video already gives the starting point.
So the prompt should say what to change, not just describe a final scene.
Good action verbs are:
addremovereplacechangeturnrotaterecolorrelight
Weak prompt for an edit model:
a woman with a red hat in a rainy street
Better:
Add a red wool hat to the woman, keep her face, hairstyle, and the rainy street unchanged.
More practical examples:
Remove the people in the background and keep the main subject untouched.
Change the car color to matte black and keep the camera angle the same.
Replace the cloudy sky with a sunset sky, but keep the buildings unchanged.
Rotate the pose of the woman so that she is facing the right.
Render the subjects as classical sculptures carved from single blocks of pristine white marble.
This is especially important for Qwen Image Edit, Flux Kontext, Chrono Edit, and Ditto.
For video edit models such as Ditto 14B, write instructions that apply to the whole clip or the whole frames, for example:
Turn the whole video into a black-and-white film look while keeping the original motion.
Replace the material of all visible statues with polished gold.
For Wan2.1 Chrono Edit 14B, the optional Prompt Enhancer can help with its stricter prompt format. Enable it when the user requests prompt enhancement; otherwise write the model's required format directly.
WanGP reads the prompt line by line before generation.
- A line starting with
#is a comment. - A line starting with
!is a macro line (see Macro section below). - Other lines are prompt content.
Blank lines separate complete prompts in paragraph modes PG and PW; single newlines stay inside each paragraph. In line modes G and W, empty lines are ignored. Full-prompt mode FG preserves multiline content, and some speech models also preserve empty lines as speech/dialogue split markers. Full-line # comments are removed before prompt splitting.
This is especially practical with:
TTS Qwen3 Base (12Hz) 1.7BTTS KugelAudio 0 Open 7BTTS Index TTS 2
Those models are often used for long speeches or dialogue, so keeping a multiline script together is usually more useful than treating each line as a separate generation.
The dropdown How to Process each Line of the Text Prompt changes how WanGP interprets multiline prompts.
The UI shows these choices:
Each New Line Will Add a new Video/Image/Audio Request to the Generation QueueEach new Paragraph separated by an Empty Line Will Add a new Video/Image/Audio Request to the Generation QueueEach Line Will be used for a new Sliding Window of the same Video GenerationEach Paragraph Separated by an Empty line will be used for a new Sliding Window of the same Video GenerationAll the Lines are Part of the Same Prompt
Which wording you see depends on the current model and whether it outputs video, image, or audio.
These choices correspond to G, PG, W, PW, and FG in multi_prompts_gen_type. Use PW for structured multi-line window prompts: exactly one blank line between complete windows, single newlines within each window. A searchable # WINDOW 01 — ... title can precede its duration command without a blank line between them.
This is the most practical choice when each line is meant to be a separate idea.
Example:
a fox running through snow
a whale breaching at sunset
a drone shot of a neon city in the rain
This creates 3 separate jobs.
Use this when:
- you want to batch several unrelated ideas
- you want quick A/B tests of prompt variants
- you want one
Start Imagereused with several motion prompts in an image-to-video model
Good examples:
Wan2.1 Text2video 14B: try several scene ideas at onceQwen Image 20B: try several poster or ad concepts at onceWan2.1 Image2video 480p 14B: try several motion ideas from the same image
This is useful for long-video workflows.
Instead of treating each line as a separate job, WanGP uses:
- line 1 for the first window
- line 2 for the second window
- line 3 for the third window
- and if the video needs more windows than lines, the last line is reused
Example:
wide establishing shot of the city at dawn
the camera moves into the crowd and follows the singer
close shot of the singer as the chorus starts
This is practical when you want one long video with changing story beats.
It is especially useful for models meant for long or multi-window video generation, such as Infinitetalk, which is described as supporting very long videos with smooth transitions between shots.
Use this when:
- you want one line per shot or story beat
- you want a long talking or performance video to evolve over time
- you want a rough storyboard without writing one huge paragraph
Important practical limitation:
- only one
Start Imageis supported in this mode
For models with Inject Frames, add your images under Reference Images and enter comma-separated tokens in Positions of Injected Frames:
- A frame number, such as
1, injects the next image at that position (1is the first frame). Linjects the next image at the end of the next window.Xskips that window without consuming an image. Repeat it to delay injection for multiple windows.
For example, L, L, X, L, L uses four images at the ends of windows 1, 2, 4, and 5. Window 3 has no new frame injection. L, X, X, L injects two images at the ends of windows 1 and 4. Lowercase l and x also work. Enter these tokens in the positions field, not in the text prompt.
Sliding-window prompts can include optional slash commands in brackets. WanGP removes these commands before sending the prompt text to the model. Brackets that do not start with / are ignored by this parser and remain available for model-specific prompt syntax such as Prompt Relay.
Generic WanGP window commands:
[/duration=121]: this window should contribute 121 output frames[/duration=5s]: this window should contribute about 5 seconds of output at the generation FPS[/duration=20%]: this window should contribute 20% of the requested total frame count[/overlap]: use the model's default overlap for this window[/overlap=9]: use 9 overlap frames for this window, rounded to the model's overlap frame step[/overlap=0]: use no overlap frames, when the model supports text-to-video windows[/new_shot]: start this window without overlap frames, creating a hard transition, it is an alias for[/overlap=0][/no_end_image]: skip this window's End Image without consuming it. The next window without this command uses the next unused End Image. Repeat the command on consecutive window prompts to skip several windows; it takes no value and does not affect Inject Frames or overlap.[/loras_mult=1;3]: override the active LoRA multipliers for this window only. The selected LoRAs stay the same; use the same syntax as the LoRAs Multipliers field, such as[/loras_mult=1;3 0.5;0.5]for two active LoRAs. Windows without[/loras_mult=...]use the normal LoRA multipliers from the UI/default settings.
Use [/new_shot] when a window should behave like a hard cut: a new scene, a new character introduction, or the first generated window after Continue Video when the source video should remain in the final output but should not visually condition the new generated window.
For example, with four End Images and five window prompts, add [/no_end_image] to the third prompt to use the images in windows 1, 2, 4, and 5. This command applies only to the marked window; automatically added windows use End Images normally.
Multiple commands can be combined in one bracket, for example [/duration=5s,/overlap=9], [/duration=4s,/new_shot], or [/duration=5s,/loras_mult=1;3].
Overlap frames are generated in addition to the requested window duration. For example, a [/duration=5s,/overlap=9] window at 25 fps aims to contribute about 5 seconds to the final video, while the 9 overlap frames are only used to condition the transition and are not counted as newly committed output frames.
If a window has no [/duration=...], WanGP uses the remaining requested frame count, capped by the Sliding Window Size. If explicit durations produce more output frames than the UI frame count, validation does not block the prompt; WanGP reports the predicted total frame count. Validation only rejects a prompt when a later window would receive 0 frames because previous windows already consumed the requested frame count.
Example:
[/duration=25%] A wide dawn shot of a mountain train station. Steam rolls across the platform, red lanterns sway, and the camera slowly pushes toward a violinist waiting beside a blue suitcase.
[/duration=5s,/overlap=17] The violinist steps onto the train as the platform slides backward. Keep the blue suitcase visible, the lantern reflections in the glass, and a gentle handheld camera rhythm.
[/new_shot,/duration=4s] A sharp cut to inside the dining car at night. The violinist now sits across from a silent chess player in a silver coat while rain lashes the window.
[/duration=30%,/overlap=9] The chess player moves a knight, the train lights flicker, and the blue suitcase opens by itself, revealing a tiny glowing city.
Models may declare their own additional slash commands. Unknown slash commands are rejected during validation. JoyAI-Echo adds named-memory commands such as [/store_mem=man1,man2], [/load_mem=man1,woman1], [/load_mem], and [/drop_mem=old_scene]. If a Joy window has no [/load_mem...], it keeps the active memory set from the previous window plus any memory stored by that previous window. [/no_mem] is deprecated and ignored because Joy memories are no longer saved automatically.
This is the right choice when line breaks are part of the prompt format itself.
Use this when the prompt is one structured block, such as:
- a second-by-second timeline
- a dialogue script
- song lyrics with sections like
[Verse]and[Chorus]
Example: timeline prompt
(at 0 seconds: the man stands in front of the fridge, camera static)
(at 1 second: he opens the fridge and reaches for a can)
(at 2 seconds: the camera shifts to a side angle as he drinks)
This is especially useful for Wan2.2 Image2video Enhanced Lightning v2 14B, because its own default prompt uses that kind of timeline format.
Example: dialogue prompt
Speaker 1: We should leave before the rain gets heavier.
Speaker 2: Give me one minute, I still need my jacket.
Speaker 1: One minute, then we run for the bus.
This is the practical choice for:
TTS Index TTS 2TTS Qwen3 Base (12Hz) 1.7BTTS KugelAudio 0 Open 7B
Those models are used for speech and dialogue, so splitting each line into a separate job would usually destroy the conversation structure.
Example: lyrics prompt
[Verse]
Morning light through the window pane
I hum a tune to chase the rain
[Chorus]
Stay with me through every mile
Hold this fire, hold this smile
This is the practical choice for:
TTS HeartMuLa OSS 3BTTS ACE-Step v1.5 Turbo 2B
Those music models work best when the lyrics stay together as one structured prompt.
The dropdown Multiple Images as Texts Prompts matters when you use several images together with several prompt lines.
This is mainly useful for image-to-video models such as:
Wan2.1 Image2video 480p 14BWan2.2 Image2video Enhanced Lightning v2 14B
The two choices are:
Generate every combination of images and textsMatch images and text prompts
In both modes, WanGP uses the image prompt field currently driving the job:
- if you provided
Start Image, those images are used - otherwise WanGP uses
End Image - if both are present,
Start Imageis the one paired with the text prompts
So in normal image-to-video practice, this usually means the Start Image field. It is not about Reference Images.
This is the exploration mode.
WanGP takes every prompt line and combines it with every image from the active image prompt field in use, usually Start Image.
If you have:
- 3 images
- 2 prompt lines
WanGP will create 6 jobs.
Use this when:
- you want to see which motion prompt works best on which image
- you are testing several portraits against several actions
- you are exploring, not pairing
Practical example:
- 3 portraits
- prompt 1:
the subject smiles and leans toward the camera - prompt 2:
the subject turns away and walks toward the window
This is useful if you want to compare all results.
This is the pairing mode.
Use it when image 1 should go with prompt 1, image 2 with prompt 2, and so on.
This is usually the better choice when:
- each image already has its own intended motion
- you are preparing a batch of separate image-to-video jobs
- you do not want the combinatorial explosion of testing everything against everything
Practical example:
- portrait 1 +
she smiles and waves - portrait 2 +
he turns left and starts walking - portrait 3 +
the child looks up and starts laughing
If you used Generate every combination of images and texts, you would get many unwanted cross-combinations. Match images and text prompts keeps the batch clean.
Prompt enhancement is easiest to think of as a writing assistant built into WanGP.
For AuK, Refine offers AuK instruction from text and AuK instruction from text + source transcription. The first option rewrites your instruction and refines voice descriptions. The transcription option first transcribes the source recording locally, then gives that text to the enhancer as context. It covers the same opening section that AuK will edit: the requested target duration, capped at the clip's length. It is most useful for replacing, inserting or deleting words. Select the source-audio mode, upload the recording and set the target duration before using it.
Transcription adds processing time and may mishear words. If no source audio is selected, no speech is detected or transcription fails, a notice appears and refinement continues using text only. Cancelling still stops the operation. Quote original and replacement words explicitly when you know them; those words take priority over the transcript. Check the enhanced instruction before generating. Neither option adjusts AuK's target duration. Enhancement is disabled by default. If you use an external enhancer, it receives the transcript as well as your request; choose a local enhancer to keep both on your machine.
WanGP has two levels for it:
- a global Prompt Enhancer setup in
Configuration - a per-generation Prompt Enhancer control next to the main prompt box
The Prompt Enhancer can use a local model on the WanGP machine or the same external Codex, Claude Code, or OpenCode engine configured for Deepy Prime. The Prompt Enhancer row appears for models that provide an enhancement workflow; its exact choices depend on the selected model.
Open Configuration > Prompt Enhancer / Deepy, then select Prompt Enhancer / Deepy LLM Engine.
That global configuration decides:
- which local or external engine writes enhanced prompts
- whether it works automatically during generation or on demand
- for local Qwen engines, which quantization and acceleration options are used
- for local engines, sampling behavior such as temperature, top-p, and seed randomization
If you select an external engine, configure its executable, model, and reasoning options in the panel that appears. External engines require Deepy Prime, even when you mainly intend to use prompt enhancement, because Prime provides their WanGP integration. Save the configuration when finished.
For a model that supports prompt enhancement, the generation screen shows the Prompt Enhancer row near the main prompt field.
Depending on your configuration, it either:
- runs automatically during generation
- or appears as a button you click manually before generation
| Engine | Functional impact | Recommendation |
|---|---|---|
| Florence 2 + Llama 3.2 3B | A lightweight local combination for image understanding and text rewriting. | Use on limited hardware when a simple local enhancer is sufficient. |
| Florence 2 + Llama Joy 8B | Produces richer local rewriting than the 3B option but uses more memory. | Use when you prefer this writing style and do not need Deepy Prime. |
| Qwen3.5 VL Abliterated 4B | Handles text and images in one local model with relatively low memory use. | Recommended local starting point for most users. |
| Qwen3.5 VL Abliterated 9B | Better instruction following and richer prompts than 4B, with higher VRAM/RAM use. | Use when quality matters and it fits comfortably beside your generation model. |
| Qwen3.8 VL Uncensored 27B | Strongest local understanding and rewriting, but much heavier to load and run. It is also the required local engine for Deepy Prime. | Use for quality-first work and complex visual instructions on high-memory systems. |
| Codex | Uses the selected external Codex model and does not occupy WanGP's local GPU memory. | Use when you already have Codex configured and want strong remote instruction following. |
| Claude Code | Uses the selected external Claude model and does not occupy WanGP's local GPU memory. | Use when Claude is your preferred writing/reasoning provider. |
| OpenCode | Connects through OpenCode to its configured provider, including supported cloud or local OpenAI-compatible services. | Use when you need provider flexibility or already manage models through OpenCode. |
An external engine is useful when you want to preserve local VRAM for image or video generation, avoid downloading a local enhancer model, or use a stronger provider model. Network and provider latency can make each enhancement slower to start.
The selected engine is shared by Deepy, Prompt Enhancer, and visual inspection; there is no separate Prompt Enhancer engine selector. With an external engine, prompts, attached images, sampled video frames, and relevant instructions may be sent outside the WanGP machine. Provider privacy and retention rules apply. WanGP does not store provider passwords or access tokens; authentication stays with the external tool. A local OpenCode server using a local provider can keep data on the machine.
For installation, authentication, model selection, and provider-specific behavior, see Remote LLMs.
Automatic mode:
The enhanced prompt will appear in the generation preview on the right.
- Pros: fastest workflow, no extra click, good when you always want prompt rewriting
- Pros: useful for models where the enhancer is almost part of the workflow, such as
Wan2.1 Chrono Edit 14B - Cons: you do not review the rewritten prompt before generation
- Cons: if the enhancer over-interprets your idea, you only notice it after the run starts or in the saved metadata
On-demand mode:
The original prompt will be commented and an enhanced prompt will appear below. If you are not happy with the enhanced prompt you can request for another and it will overwrite automatically the one that was generated previously. Alternatively you can modify the original prompt which is in the comment and the new instructions will be taken into account (no need to remove the # comments prefix).
For instance if you got after the first prompt enhancement request:
#!PROMPT!: Jensen Huang is talking on stage and says "Welcome guys, we are going to have a lot of fun today."
Jensen Huang steps into the spotlight, black leather jacket creaking slightly as he shifts his weight. His glasses reflect the stage lights ...
Modify the prompt in the comment:
#!PROMPT!: A woman is talking on stage and says "Welcome guys, we are going to have a lot of fun today."
She steps onto the dimly lit stage, spotlight cutting through haze. "Welcome guys. We're going to have a lot of fun"...
- Pros: you can inspect and edit the rewritten prompt before generating
- Pros: best for strict prompt formats, edits, lyrics, or dialogue where you want manual control
- Cons: one more step in the workflow
- Cons: with multiple
Start Images, it only works cleanly whenMultiple Images as Texts Promptsis set toMatch images and text prompts, and the number of images matches the number of prompt lines
Local Qwen enhancement can use all Reference Images together with the current Start Image, End Image, and Control Image where supported. You can refer to them in your prompt as Image reference no 1, start image, end image, and Control Image. When the first reference is selected as the main image, it is named Main Ref. Image; subsequent references keep their numbers. Injected references also have a time label, such as Image reference no 2 (Frame 2s/15s); a reference at the window's endpoint is identified as end image. Florence-based enhancers use one image caption per prompt.
When continuing a video, its last retained frame (after source trimming) is available to the enhancer as start image. [/new_shot] omits this visual anchor.
In Sliding Window prompt modes, write each prompt for that window's references and End Image. The previous window's end image supplies the next start image, unless a new shot is requested. [/no_end_image] omits the gallery End Image for that window, leaving it available for the next window. For injected references, X skips a window's end-frame slot without consuming a reference, and L places a reference at the window's last kept frame, respecting duration changes and tail trimming.
Window commands such as [/duration=10s] survive enhancement, and the enhanced action takes the window's duration into account. Commands appear before the enhanced text: on the same line in one-prompt-per-line modes, or on their own line in paragraph and whole-text modes. Edit commands in the visible prompt, outside the #!PROMPT!: history line; re-enhancement uses those current commands, including changes or removals.
The Qwen LLM Quantization choice is available only for local Qwen engines. Lower quantization uses less VRAM and RAM but can reduce prompt quality.
For Qwen3.5:
- Quanto Int8 generally gives better quality and uses more memory. This is the recommended choice when it fits comfortably.
- GGUF Q4 uses less memory and can be faster with compatible GGUF CUDA kernels, at some cost to prompt compliance. Use it when Int8 leaves too little memory for generation.
For Qwen3.8:
- GGUF Q4 gives the highest quality and uses the most memory.
- GGUF IQ3_S provides the recommended balance of quality and memory for most local Qwen3.8 users.
- GGUF Q2 has the lowest memory use and the greatest quality loss. Use it only when Q3 or Q4 cannot fit.
The shared Configuration > Performance > Language Models Decoder Engine can accelerate supported local Qwen engines. Auto is recommended. CUDA Graph and vLLM can be much faster but load the whole language model into VRAM; vLLM also requires Triton and Flash Attention 2. Use the PyTorch option for maximum compatibility.
Speculative decoding can make supported local Qwen text generation faster by predicting multiple tokens ahead. It affects Prompt Enhancer and Deepy response speed, not media-generation speed.
- Auto is recommended. It normally enables acceleration with at least 12 GB VRAM for Qwen3.5 9B or 24 GB for Qwen3.8 27B.
- Disabled saves the additional VRAM and is appropriate when the generation model needs that memory.
- 2, 3, or 4 draft tokens allows manual tuning. More draft tokens are not always faster; start with 2 and compare repeated prompts if you want to tune it.
Qwen3.5 4B and the Florence/Llama engines do not support this option. Quantization, speculative decoding, local sampling controls, and local VRAM-loading controls are hidden when an external engine is selected because the external provider owns its runtime behavior.
The user-facing dropdown usually offers:
DisabledBased on Text Prompt ContentBased on Images Prompts Content (such as Start Image and Reference Images)Based on both Text Prompt and Images Prompts Content
But not every model shows exactly that set.
Some models expose model-specific options instead.
Practical examples:
TTS Index TTS 2,TTS Qwen3 Base (12Hz) 1.7B, andTTS KugelAudio 0 Open 7Bcan show:A Speech based on current PromptA Dialogue between two People based on current Prompt
Wan2.1 Chrono Edit 14Brestricts the Prompt Enhancer to the combined text+image mode, because that model expects both the edit instruction and the source image
So the safest rule is:
- use the supported
prompt_enhancerchoices:Tenables enhancement, andIadds image context to formTI - prefer the model-specific labels when WanGP exposes them, because they were defined for that model on purpose
This is the best choice when your text idea is short, rough, or under-detailed.
Practical use:
- Turn a simple video idea into a more cinematic paragraph
- Turn a rough speech topic into a proper spoken script
- Turn a basic song idea into structured lyrics
Good examples:
Wan2.1 Text2video 14B: useful if you type a short scene idea and want richer cinematic detailQwen Image 20B: useful if you want a more polished image promptTTS Chatterbox Multilingual: useful if you want the app to draft the speech before generating the voice
This is most useful when the image matters more than the text.
Practical use:
- Start from a portrait or reference image
- let the enhancer read the image
- then have it write a motion prompt that fits what is actually visible
This is often useful for image-to-video workflows where the face, clothing, pose, or framing should stay faithful to the source image.
This is the most useful choice when both the instruction and the image are important.
The clearest case is Qwen Edit 14B.
- the image tells the model what exists now
- the text tells it what you want changed
- the prompt enhancer rewrites that into the format the model expects
Pros:
- the best choice for edit models and instruction-following workflows
- balances image faithfulness with explicit user intent
Common button labels are Enhance Prompt, Write, Write Speech, and Compose Lyrics.
Some models expose more specific prompt-writing workflows.
Used on speech models such as:
TTS Index TTS 2TTS Qwen3 Base (12Hz) 1.7BTTS KugelAudio 0 Open 7B
Practical use:
- write a monologue from a short topic
- write a two-person dialogue from a rough idea
This is especially useful because those models are often used for spoken content, and two of them explicitly support Speaker 1: / Speaker 2: dialogue workflows.
Used on TTS Chatterbox Multilingual.
Practical use:
- quickly turn a topic into a spoken script before generating voice audio
This is helpful because Chatterbox is meant for multilingual speech generation, so many users start with an idea, not a finished script.
Used on music models such as:
TTS HeartMuLa OSS 3BTTS ACE-Step
Practical use:
- turn a short idea such as
a dreamy synth-pop song about missing someone - into actual lyrics with sections like
[Verse]and[Chorus]
This is especially useful because those models are conditioned by lyrics, and in HeartMuLa's case also by style tags.
These two syntaxes only matter when the Prompt Enhancer is being used.
If the Prompt Enhancer is disabled, WanGP treats them as normal characters.
Format:
your prompt @ extra instructions
Example:
a serious speech about AI safety @ keep it under 6 sentences, natural spoken English
Practical use:
- keep a script short
- ask for a certain tone
- ask for a certain output shape without replacing the model's tuned enhancer instructions
This is the safer and more practical everyday option.
Format:
your prompt @@ full replacement instructions
Example:
a woman opens a door @@ Output exactly 6 lines. Each line must start with "(at X seconds:" and describe only visible motion.
Practical use:
- force a very specific output format
- completely override the built-in enhancer behavior
Use this only when you know exactly what format you want. It is powerful, but easier to misuse than @.
With local Qwen3.5- and Qwen3.8-based prompt enhancers, WanGP can show a Think checkbox. External engines use their configured model and reasoning-effort controls instead.
Practical use:
- enable it when the prompt is vague, messy, or structurally difficult
- disable it when you want the fastest rewrite
It is most useful for tasks like:
- turning a rough story idea into a clean second-by-second prompt
- turning a topic into a believable two-person dialogue
- rewriting a difficult edit instruction so it stays aligned with the input image
The thinking text itself is not meant to become part of the final enhanced prompt.
Create multiple prompts from templates using macros. This allows you to generate variations of a sentence by defining lists of values for different variables.
Macros are expanded before WanGP applies the line-processing option from How to Process each Line of the Text Prompt. In practice, this means:
- macros first generate the prompt lines
- then WanGP decides whether those lines become separate jobs, sliding-window steps, or one single multiline prompt
Define your variables on a single line starting with !. Each complete variable definition, including its name and values, must be separated by a colon (:).
! {Variable1}="valueA","valueB" : {Variable2}="valueC","valueD"
This is a template using {Variable1} and {Variable2}.
- Every
{Variable}in the following prompt lines is replaced with one value from its list. - WanGP cycles through the values line by line.
- If two variables do not have the same number of values, the shorter one is reused cyclically.
This makes macros practical for:
- batch-testing several scene ideas
- generating multiple poster captions for image models
- creating several prompt variations from one reusable template
The following macro will generate three distinct prompts by cycling through the values for each variable.
Macro Definition:
! {Subject}="cat","woman","man" : {Location}="forest","lake","city" : {Possessive}="its","her","his"
In the video, a {Subject} is presented. The {Subject} is in a {Location} and looks at {Possessive} watch.
Generated Output:
In the video, a cat is presented. The cat is in a forest and looks at its watch.
In the video, a woman is presented. The woman is in a lake and looks at her watch.
In the video, a man is presented. The man is in a city and looks at his watch.
If you want to test several ad concepts in an image model, you can do this:
! {Product}="watch","perfume","sneakers" : {Mood}="luxury","minimal","energetic"
Studio advertising photo of a {Product}, {Mood} style, clean background, premium lighting, centered composition
If your line-processing mode is set to add each new line as a new request, WanGP will queue one image job per generated prompt.
- If dialogue lines are turning into separate jobs or a timeline prompt is split across several jobs, choose
All the Lines are Part of the Same Prompt. - If you want a long video with changing story beats, choose
Each Line Will be used for a new Sliding Window of the same Video Generation. - If you want several separate prompt ideas queued at once, choose
Each New Line Will Add a new ... Request to the Generation Queue. - If
Match images and text promptsfails, the number of images and prompts must match cleanly. - If
@or@@seems ignored, the Prompt Enhancer is probably disabled or not used for that run. - If an external engine cannot be saved, enable Deepy Prime and complete that engine's setup in Configuration > Prompt Enhancer / Deepy.
- If remote enhancement cannot inspect an image, confirm that the selected provider/model accepts images and that the external tool is authenticated.
- If you do not want prompts or visual inputs to leave the machine, select a local engine instead of Codex, Claude Code, or a cloud-backed OpenCode provider.
Applies to: Prompt writing, comments, line and paragraph splitting, window commands, image pairing, optional enhancement and macros. Prompt style and supported syntax vary by model and are described in its prompt help.