Add Krea2 formatting and scalable scene pools

This commit is contained in:
2026-06-24 10:23:24 +02:00
parent 00ac8be640
commit 89af926a5a
9 changed files with 1191 additions and 23 deletions
+70
View File
@@ -9,6 +9,7 @@ The node is registered as:
- `prompt_builder / SxCP Seed Control`
- `prompt_builder / SxCP Camera Control`
- `prompt_builder / SxCP Caption Naturalizer`
- `prompt_builder / SxCP Krea2 Formatter`
- `prompt_builder / SxCP Insta/OF Options`
- `prompt_builder / SxCP Insta/OF Prompt Pair`
@@ -65,6 +66,35 @@ It outputs:
- `natural_caption`
- `method`
`SxCP Krea2 Formatter` rewrites an existing prompt or `metadata_json` into a
Krea2-oriented natural-language paragraph. It is a formatter, not a safety or
content downgrade pass: hardcore items, role graphs, sexual pose wording, and
camera controls are preserved. Negative prompts stay separate.
Important behavior:
- Age wording is preserved deliberately. Phrases like `21-year-old adult`,
`late 20s adult woman`, and `all participants 21+ and visibly adult` are kept
because they help avoid unwanted young-looking outputs.
- Trigger words are removed by default because Krea2 prompting generally reads
better as natural language. Enable `preserve_trigger` if you still need a LoRA
trigger in the positive prompt.
- `style_mode`: `preserve` keeps the current generated style text,
`photographic` converts the style tail toward creator-photo language, and
`minimal` omits most style text.
- For Insta/OF paired metadata, the node returns both `krea_softcore_prompt` and
`krea_hardcore_prompt`, with separate softcore and hardcore negatives.
It outputs:
- `krea_prompt`
- `negative_prompt`
- `krea_softcore_prompt`
- `krea_hardcore_prompt`
- `softcore_negative_prompt`
- `hardcore_negative_prompt`
- `method`
`SxCP Insta/OF Prompt Pair` is a special paired-output mode. It creates one
shared primary creator descriptor, then returns both a softcore prompt and a
hardcore prompt from that same descriptor. This is useful when you want the same
@@ -180,6 +210,46 @@ provided, the node uses a generic composer that selects subject appearance,
scene, pose, expression, composition, and a random item from the selected
subcategory.
Reusable location banks can be defined with top-level `scene_pools` in any
`categories/*.json` file. Categories, subcategories, and items can reference
them with `scene_pools`; referenced pools are merged with any local `scenes`.
This keeps location expansion scalable without duplicating the same bedroom,
selfie, mirror, creator, or group-sex locations across every subcategory.
Set `"inherit_scenes": false` on a subcategory or item when it should use only
its own `scenes` and `scene_pools` instead of also inheriting parent category
locations. This is useful for narrow subcategories such as group scenes, vehicle
sets, outdoor-only sets, or any category where a generic parent room would be a
bad match.
Example:
```json
{
"scene_pools": {
"creator_selfie_rooms": [
{
"slug": "bedroom_phone_tripod",
"prompt": "private creator bedroom with a phone tripod, rumpled bedding, and warm lamps"
}
]
},
"categories": [
{
"name": "Example",
"subcategories": [
{
"name": "Selfie set",
"inherit_scenes": false,
"scene_pools": ["creator_selfie_rooms"],
"items": ["simple outfit prompt"]
}
]
}
]
}
```
For large categories, prefer `item_templates` plus `item_axes` instead of writing
every final item by hand: