Instruction file imported from DaturaInoxia/DreamGenClone (
.github/instructions/sdxl-juggernaut-prompting.instructions.md). Copyright stays with the author.
SDXL / Juggernaut Prompting Rules (Scene Image Generator)
The photorealistic companion to
pony-v6-prompting.instructions.md. SDXL-family checkpoints (sd_xl_base_1.0, Juggernaut XL, RealVisXL, Big Lust, ...) read natural-language photography briefs, NOT Pony's danbooru tag vocabulary. These rules were validated by live generation on the RunPod pod 2026-08-23. The Pony code path is untouched — SDXL is a fully separate implementation.GOVERNANCE — read first:
scene-image-prompt-compiler-standards.instructions.mdis the CANONICAL standards + research doc for all prompt compilers. It contains the externally-researched prompting technique, the authoritative model-settings envelope (§3), and the HARD RULES that govern every future compiler change (no "just get an image" tweaks). This file is the practical pod-validated rule set; the standards file is the research + governance behind it.
The model's real nature
- SDXL base / Juggernaut XL are photorealistic SDXL finetunes. They follow natural-language direction far better than Pony and render correct human/gender anatomy (validated: SDXL base produced correct man+woman, correct bodies; base SDXL cannot render explicit genital anatomy — it is trained to avoid it → use Juggernaut XL (NSFW-capable) or Pony for explicit genital shots).
- Juggernaut XL Ragnarok (
juggernautXL_ragnarok.safetensors, 6.62GB) is the recommended photorealistic NSFW-capable model (RAIL++-M license, "Overwhelmingly Positive" on Civitai, ~1.9M downloads). Download requires a Civitai API token (anonymous = 403 on the R2 delivery CDN; the token goes inAuthorization: Bearer).
Dual-path routing (single decision path, no fallback)
SceneImageModelFamilyResolver.Classify(checkpoint) is the one router (Domain/RolePlay):
pony*→Pony→ Pony builder + Pony workflow (CLIP skip 2) — unchanged.juggernaut/jugg/sd_xl/sdxl/realvis/realistic vision→Sdxl→ SDXL builder + SDXL workflow.- anything else →
Unknown→ fail fast with an explicit diagnostic (never a silent default model).
Used by: SceneImagePromptGenerationJobHandler (picks the LLM prompt builder), SceneImageRenderingJobHandler
(picks the negative builder + SFW clamp suffix), and ComfyUIImageClient (picks the workflow + baseline negative).
Non-negotiable SDXL/Juggernaut rules (all validated)
- Natural language, NOT tags. Write 2-4 short sentences/phrases like a photography brief. Never
emit
score_9,rating_*,1girl/1boy/2peoplecount tags, or danbooru tokens. The SDXL system prompt explicitly teaches the model to avoid Pony vocabulary. - State gender + number explicitly ("a middle-aged man and a middle-aged woman") to prevent figure merging/miscounting (SDXL's equivalent of Pony's count tags).
- Photographic style cues help:
photorealistic,35mm,natural skin texture,sharp focus. - Keep it short — target under ~800 chars. Long caption prose degrades output.
- Honor beat-stated clothing exactly; nudity only when the beat implies it AND the explicitness level allows it.
- No CLIP skip by default. The SDXL workflow (
ComfyUIImageClient.BuildSdxlWorkflow) adds theCLIPSetLastLayernode only when a clip-skip value is explicitly set; the studio default is "None". Pony keeps its own CLIP-skip-2 workflow untouched. - Sampler for Juggernaut (studio-configurable): default
dpmpp_2m_sde/karras/ 30 steps / CFG 5.0 (matches the validated test prompts and the author's guidance). Pony keepseuler_ancestral/ 25 / 7. - Heavier negative than Pony (SDXL needs a bigger guard set):
deformed, bad anatomy, extra limbs, extra legs, four legs, fused legs, extra fingers, extra arms, missing limbs, malformed hands, malformed feet, blurry genitals, featureless genitals, censored, cartoon, anime, illustration, painting, sketch, watermark, text, low quality, oversaturated, plastic skin. - For explicit content, SDXL needs concrete anatomy language in the positive ("erect penis penetrating her vagina, correct penis and vagina anatomy") AND the genital guards above in the negative. Base SDXL avoids genitals even then; Juggernaut renders them correctly.
Phase → explicitness (SDXL prose, the analogue of the Pony rating tag)
SdxlSceneImagePromptBuilder.ResolveExplicitnessProse(phase, policy):
- BuildUp / Opening →
safe: fully clothed, wholesome, non-explicit - Committed / Approaching / Reset →
questionable: partially undressed, suggestive, implied intimacy - Climax →
explicit: nude bodies, explicit sexual activity, correct genital anatomy - SFW provider policy is a hard clamp to
saferegardless of phase.
Model Manager steps (Juggernaut)
- Add Model: DisplayName
Juggernaut XL Ragnarok, ModelIdentifierjuggernautXL_ragnarok.safetensors(must EXACTLY match the pod filename — ComfyUI client uses the identifier verbatim as the checkpoint when it looks like a filename, else fails fast), ProviderRunPod ComfyUI, ModelKindImage, ImageSizeSupported1024x1024, Enabled. - Set the
RolePlaySceneImageFunctionDefault → Juggernaut (replaces Pony V6 XL). - Provider unchanged:
RunPod ComfyUI,ImageCapability=ImageOnly,ContentPolicy=AdultAllowed.
Source-Controlled Generation Harness
- The canonical Juggernaut generation workflow is
specs/image-generator-tests/qwen/prompts/qwen-simple-people-base.json. It contains the exact natural-language prompt, negative prompt,juggernautXL_ragnarok.safetensorscheckpoint, seed73190, 1024x1024 dimensions, and validateddpmpp_2m_sde/karras/ 30-step / CFG-5 settings. - Its source-controlled accepted output is
specs/image-generator-tests/qwen/images/base.png; integrity metadata is in the siblingmanifest.json. - To test a reachable Juggernaut ComfyUI service exactly once, run:
powershell -ExecutionPolicy RemoteSigned -File helpers/runpod/run-juggernaut-simple-people-base.ps1 -ComfyUiUrl <base-comfyui-url>. - The runner saves a new result only under ignored
artifacts/tmp/images/juggernaut-simple-people-replay/. Review it visually against the accepted base image. Do not expect byte-identical output when ComfyUI, CUDA, PyTorch, or model environments differ. - For the complete six-edit Qwen replay that consumes a new Juggernaut base, follow
specs/image-generator-tests/qwen/RUNBOOK.mdand usehelpers/runpod/run-qwen-simple-people-proof.ps1.