ZIT prompting guide and tweaks
This commit is contained in:
+7
-3
@@ -10,7 +10,7 @@ This model is not aesthetic tuned, it must be given explicit tags for everything
|
|||||||
Has very excellent understanding of characters and artists down to extremely niche. Unless prompting an original character, their name is enough to decribe their appearance completely except for clothing.
|
Has very excellent understanding of characters and artists down to extremely niche. Unless prompting an original character, their name is enough to decribe their appearance completely except for clothing.
|
||||||
Accepts a list of comma-separated booru-style tags. Use spaces, not underscores, for tags. **Use the `search_tags` tool to verify your tags**.
|
Accepts a list of comma-separated booru-style tags. Use spaces, not underscores, for tags. **Use the `search_tags` tool to verify your tags**.
|
||||||
Prompts MUST follow this format: <1girl/1boy/1other/solo/couple/(can use multiple)>, <character(s)>, <series>, <artist>, <tags>
|
Prompts MUST follow this format: <1girl/1boy/1other/solo/couple/(can use multiple)>, <character(s)>, <series>, <artist>, <tags>
|
||||||
Every prompt MUST include every one of the above sections.
|
Every prompt MUST include every one of the above sections (the angle brackets are not part of the prompt).
|
||||||
Quality tags such as "masterpiece", "best quality", "very awa", are a LAST RESORT, they override the artist tags. If absolutely required they should be prepended.
|
Quality tags such as "masterpiece", "best quality", "very awa", are a LAST RESORT, they override the artist tags. If absolutely required they should be prepended.
|
||||||
It understands every artist, so pick one appropriate for the image. If desired, it also knows 'implicit' artist tags such as "official art" or "game cg" for the 'artist' immediately following the series name.
|
It understands every artist, so pick one appropriate for the image. If desired, it also knows 'implicit' artist tags such as "official art" or "game cg" for the 'artist' immediately following the series name.
|
||||||
Natural language understanding is very limited, but can do things like "dark blue skirt" or natural language order of tags such as "lying, on bed".
|
Natural language understanding is very limited, but can do things like "dark blue skirt" or natural language order of tags such as "lying, on bed".
|
||||||
@@ -35,10 +35,14 @@ preset = "xl"
|
|||||||
"Rescale CFG" = 0.3
|
"Rescale CFG" = 0.3
|
||||||
|
|
||||||
["Z-Image-Turbo"]
|
["Z-Image-Turbo"]
|
||||||
description = "General image generation model. Aesthetic tuned, gets good results first try. Can only do softcore NSFW."
|
description = "General image generation model. Aesthetic tuned, gets good results first try. Can do softcore NSFW, e.g. underwear, breasts, asses. No full-frontal nudity."
|
||||||
guide = """
|
guide = """
|
||||||
This model is aesthetic tuned, regenerating with the same prompt will yield essentially the same image. Change the prompt before resubmitting.
|
This model is aesthetic tuned, regenerating with the same prompt will yield essentially the same image. Change the prompt before resubmitting.
|
||||||
Understands natural language very well. Characters can be described by naming them and using this name later in the prompt. Longer, detailed prompts work better.
|
It's a CFG 1.0 turbo model, the negative prompt has no effect.
|
||||||
|
Understands natural language very well, uses Qwen 3 4B as the text encoder. The longer and more detailed prompt the better, take advantage of line breaks and formatting.
|
||||||
|
If any part of the image is left out of the prompt, it will default to generic AI slop which is most NOT what you want. Be very explicit about each character's details. Appearance, ethnicity, age, individual outfit components, facial expression, pose, action, where they are looking, position in the image, etc. should ALL be included in the prompt. Characters can be referenced by naming them and using this name later in the prompt. This also helps the model avoid mixing traits between them.
|
||||||
|
This also applies to the image itself. Composition, framing, lighting, image style, setting, background, etc. should all be explicitly specified in the prompt.
|
||||||
|
Has some idiosyncrasies so you may need to iterate the prompt a few times to get around some weird artifacts. Think things like "green eyes" making them glow green, or "blush" making the entire face glow. Also really wants to make shirts tucked in for some reason. Examine the generated image closely and edit the prompt if needed.
|
||||||
"""
|
"""
|
||||||
preset = "zit"
|
preset = "zit"
|
||||||
filename = "z_image_turbo_bf16.safetensors"
|
filename = "z_image_turbo_bf16.safetensors"
|
||||||
|
|||||||
@@ -174,7 +174,7 @@ async def handle(args: Dict[str, Any]) -> List[Dict[str, Any]]:
|
|||||||
except (ValueError, AttributeError):
|
except (ValueError, AttributeError):
|
||||||
raise ToolError(f"Invalid resolution format for preset '{res_preset_name}': {res_val_str}. Expected 'WidthxHeight'.")
|
raise ToolError(f"Invalid resolution format for preset '{res_preset_name}': {res_val_str}. Expected 'WidthxHeight'.")
|
||||||
else:
|
else:
|
||||||
raise ToolError(f"Resolution preset '{res_preset_name}' not found for this model. Available: {', '.join(res_set.keys())}")
|
raise ToolError(f"Resolution preset '{res_preset_name}' not found for this model. You MUST call get_model_info with this model_name to see the available resolution presets.")
|
||||||
else:
|
else:
|
||||||
raise ToolError(f"No resolution set configured for model '{model_name}'.")
|
raise ToolError(f"No resolution set configured for model '{model_name}'.")
|
||||||
|
|
||||||
|
|||||||
@@ -24,7 +24,7 @@ async def handle(args: Dict[str, Any]) -> List[Dict[str, Any]]:
|
|||||||
{
|
{
|
||||||
"type": "text",
|
"type": "text",
|
||||||
"text": "Available models:\n\n" + "\n".join([f"- {m['name']}: {m['description']}" for m in catalog]) +
|
"text": "Available models:\n\n" + "\n".join([f"- {m['name']}: {m['description']}" for m in catalog]) +
|
||||||
"\n\nTo get a detailed prompting guide and available resolutions for a specific model, call this tool again with the 'model_name' argument."
|
"\n\nBefore generating an image, you MUST call this tool again with your selected model as the 'model_name' argument."
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
@@ -41,7 +41,7 @@ async def handle(args: Dict[str, Any]) -> List[Dict[str, Any]]:
|
|||||||
"type": "text",
|
"type": "text",
|
||||||
"text": f"Model '{model_name}' not found.\n\nAvailable models:\n\n" +
|
"text": f"Model '{model_name}' not found.\n\nAvailable models:\n\n" +
|
||||||
"\n".join([f"- {m['name']}: {m['description']}" for m in catalog]) +
|
"\n".join([f"- {m['name']}: {m['description']}" for m in catalog]) +
|
||||||
"\n\nTo get a detailed prompting guide and available resolutions for a specific model, call this tool again with the 'model_name' argument."
|
"\n\nBefore generating an image, you MUST call this tool again with selected model as the 'model_name' argument."
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user