Add split workflow nodes and profile controls

This commit is contained in:
2026-06-24 12:40:34 +02:00
parent 543e2feab7
commit 9c72af0585
6 changed files with 1364 additions and 0 deletions
+293
View File
@@ -0,0 +1,293 @@
{
"last_node_id": 12,
"last_link_id": 17,
"nodes": [
{
"id": 1,
"type": "SxCPCategoryPreset",
"pos": [-980, -300],
"size": [320, 82],
"flags": {},
"order": 0,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "category_config", "type": "STRING", "links": [1, 2], "slot_index": 0},
{"name": "category", "type": "STRING", "links": null, "slot_index": 1},
{"name": "subcategory", "type": "STRING", "links": null, "slot_index": 2}
],
"properties": {"Node name for S&R": "SxCPCategoryPreset"},
"widgets_values": ["women_casual", "Casual clothes / Smart casual"]
},
{
"id": 2,
"type": "SxCPCastControl",
"pos": [-980, -160],
"size": [320, 106],
"flags": {},
"order": 1,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "cast_config", "type": "STRING", "links": [3, 4], "slot_index": 0},
{"name": "women_count", "type": "INT", "links": null, "slot_index": 1},
{"name": "men_count", "type": "INT", "links": null, "slot_index": 2},
{"name": "cast_summary", "type": "STRING", "links": null, "slot_index": 3}
],
"properties": {"Node name for S&R": "SxCPCastControl"},
"widgets_values": ["solo_woman", 1, 0]
},
{
"id": 3,
"type": "SxCPGenerationProfile",
"pos": [-980, 20],
"size": [320, 226],
"flags": {},
"order": 2,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "generation_profile", "type": "STRING", "links": [5, 6], "slot_index": 0},
{"name": "summary", "type": "STRING", "links": null, "slot_index": 1}
],
"properties": {"Node name for S&R": "SxCPGenerationProfile"},
"widgets_values": ["casual_clean", "profile_default", "profile_default", -1.0, -1.0, -1.0, -1.0, "profile_default"]
},
{
"id": 4,
"type": "SxCPAdvancedFilters",
"pos": [-980, 310],
"size": [320, 130],
"flags": {},
"order": 3,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "filter_config", "type": "STRING", "links": [7, 8], "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPAdvancedFilters"},
"widgets_values": ["any", "balanced", false, false]
},
{
"id": 5,
"type": "SxCPSeedControl",
"pos": [-600, -300],
"size": [320, 250],
"flags": {},
"order": 4,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "seed_config", "type": "STRING", "links": [9, 10], "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPSeedControl"},
"widgets_values": [-1, -1, -1, -1, -1, -1, -1, -1, -1]
},
{
"id": 6,
"type": "SxCPCameraControl",
"pos": [-600, 10],
"size": [320, 226],
"flags": {},
"order": 5,
"mode": 0,
"inputs": [],
"outputs": [
{"name": "camera_config", "type": "STRING", "links": [11, 12], "slot_index": 0}
],
"properties": {"Node name for S&R": "SxCPCameraControl"},
"widgets_values": ["mirror_selfie", "full_body", "mirror_reflection", "smartphone_wide", "arm_length", "vertical_story", "phone_visible", "locked"]
},
{
"id": 7,
"type": "SxCPPromptBuilderFromConfigs",
"pos": [-180, -300],
"size": [360, 246],
"flags": {},
"order": 6,
"mode": 0,
"inputs": [
{"name": "category_config", "type": "STRING", "link": 1},
{"name": "cast_config", "type": "STRING", "link": 3},
{"name": "generation_profile", "type": "STRING", "link": 5},
{"name": "filter_config", "type": "STRING", "link": 7},
{"name": "seed_config", "type": "STRING", "link": 9},
{"name": "camera_config", "type": "STRING", "link": 11}
],
"outputs": [
{"name": "prompt", "type": "STRING", "links": null, "slot_index": 0},
{"name": "negative_prompt", "type": "STRING", "links": null, "slot_index": 1},
{"name": "caption", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": [13], "slot_index": 3},
{"name": "category", "type": "STRING", "links": null, "slot_index": 4},
{"name": "subcategory", "type": "STRING", "links": null, "slot_index": 5}
],
"properties": {"Node name for S&R": "SxCPPromptBuilderFromConfigs"},
"widgets_values": [1, 41, 20260624]
},
{
"id": 8,
"type": "SxCPCharacterProfileSave",
"pos": [260, -300],
"size": [360, 294],
"flags": {},
"order": 7,
"mode": 0,
"inputs": [
{"name": "metadata_json", "type": "STRING", "link": 13}
],
"outputs": [
{"name": "character_profile", "type": "STRING", "links": [14], "slot_index": 0},
{"name": "descriptor", "type": "STRING", "links": null, "slot_index": 1},
{"name": "profile_name", "type": "STRING", "links": null, "slot_index": 2},
{"name": "saved_path", "type": "STRING", "links": null, "slot_index": 3},
{"name": "status", "type": "STRING", "links": null, "slot_index": 4}
],
"properties": {"Node name for S&R": "SxCPCharacterProfileSave"},
"widgets_values": ["example_creator", "metadata_json", "woman", "", "", "", "", "", "", "", false]
},
{
"id": 9,
"type": "SxCPCharacterProfileLoad",
"pos": [700, -300],
"size": [340, 174],
"flags": {},
"order": 8,
"mode": 0,
"inputs": [
{"name": "fallback_profile_json", "type": "STRING", "link": 14}
],
"outputs": [
{"name": "character_profile", "type": "STRING", "links": [15], "slot_index": 0},
{"name": "descriptor", "type": "STRING", "links": null, "slot_index": 1},
{"name": "profile_name", "type": "STRING", "links": null, "slot_index": 2},
{"name": "saved_path", "type": "STRING", "links": null, "slot_index": 3},
{"name": "status", "type": "STRING", "links": null, "slot_index": 4}
],
"properties": {"Node name for S&R": "SxCPCharacterProfileLoad"},
"widgets_values": [true, "manual", "", false, false, ""]
},
{
"id": 10,
"type": "SxCPPromptBuilderFromConfigs",
"pos": [1120, -300],
"size": [370, 270],
"flags": {},
"order": 9,
"mode": 0,
"inputs": [
{"name": "category_config", "type": "STRING", "link": 2},
{"name": "cast_config", "type": "STRING", "link": 4},
{"name": "generation_profile", "type": "STRING", "link": 6},
{"name": "filter_config", "type": "STRING", "link": 8},
{"name": "seed_config", "type": "STRING", "link": 10},
{"name": "camera_config", "type": "STRING", "link": 12},
{"name": "character_profile", "type": "STRING", "link": 15}
],
"outputs": [
{"name": "prompt", "type": "STRING", "links": null, "slot_index": 0},
{"name": "negative_prompt", "type": "STRING", "links": null, "slot_index": 1},
{"name": "caption", "type": "STRING", "links": null, "slot_index": 2},
{"name": "metadata_json", "type": "STRING", "links": [16, 17], "slot_index": 3},
{"name": "category", "type": "STRING", "links": null, "slot_index": 4},
{"name": "subcategory", "type": "STRING", "links": null, "slot_index": 5}
],
"properties": {"Node name for S&R": "SxCPPromptBuilderFromConfigs"},
"widgets_values": [1, 41, 20260777]
},
{
"id": 11,
"type": "SxCPCaptionNaturalizer",
"pos": [1560, -420],
"size": [360, 198],
"flags": {},
"order": 10,
"mode": 0,
"inputs": [
{"name": "metadata_json", "type": "STRING", "link": 17}
],
"outputs": [
{"name": "natural_caption", "type": "STRING", "links": null, "slot_index": 0},
{"name": "method", "type": "STRING", "links": null, "slot_index": 1}
],
"properties": {"Node name for S&R": "SxCPCaptionNaturalizer"},
"widgets_values": ["", "metadata_json", "balanced", "drop_style_tail", "sxcppnl7", false]
},
{
"id": 12,
"type": "SxCPKrea2Formatter",
"pos": [1560, -150],
"size": [380, 246],
"flags": {},
"order": 11,
"mode": 0,
"inputs": [
{"name": "metadata_json", "type": "STRING", "link": 16}
],
"outputs": [
{"name": "krea_prompt", "type": "STRING", "links": null, "slot_index": 0},
{"name": "negative_prompt", "type": "STRING", "links": null, "slot_index": 1},
{"name": "krea_softcore_prompt", "type": "STRING", "links": null, "slot_index": 2},
{"name": "krea_hardcore_prompt", "type": "STRING", "links": null, "slot_index": 3},
{"name": "softcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 4},
{"name": "hardcore_negative_prompt", "type": "STRING", "links": null, "slot_index": 5},
{"name": "method", "type": "STRING", "links": null, "slot_index": 6}
],
"properties": {"Node name for S&R": "SxCPKrea2Formatter"},
"widgets_values": ["", "metadata_json", "auto", "balanced", "minimal", false, "", "", ""]
}
],
"links": [
[1, 1, 0, 7, 0, "STRING"],
[2, 1, 0, 10, 0, "STRING"],
[3, 2, 0, 7, 1, "STRING"],
[4, 2, 0, 10, 1, "STRING"],
[5, 3, 0, 7, 2, "STRING"],
[6, 3, 0, 10, 2, "STRING"],
[7, 4, 0, 7, 3, "STRING"],
[8, 4, 0, 10, 3, "STRING"],
[9, 5, 0, 7, 4, "STRING"],
[10, 5, 0, 10, 4, "STRING"],
[11, 6, 0, 7, 5, "STRING"],
[12, 6, 0, 10, 5, "STRING"],
[13, 7, 3, 8, 0, "STRING"],
[14, 8, 0, 9, 0, "STRING"],
[15, 9, 0, 10, 6, "STRING"],
[16, 10, 3, 11, 0, "STRING"],
[17, 10, 3, 12, 0, "STRING"]
],
"groups": [
{
"title": "Shared controls",
"bounding": [-1010, -350, 760, 840],
"color": "#3f789e",
"font_size": 24
},
{
"title": "Pass 1: generate and extract profile",
"bounding": [-220, -350, 890, 390],
"color": "#8f6d31",
"font_size": 24
},
{
"title": "Pass 2: reuse profile with a different seed",
"bounding": [670, -350, 870, 390],
"color": "#4d7f45",
"font_size": 24
},
{
"title": "Optional reformats",
"bounding": [1530, -470, 440, 600],
"color": "#5f4d8f",
"font_size": 24
}
],
"config": {},
"extra": {
"ds": {
"scale": 0.82,
"offset": [1090, 430]
}
},
"version": 0.4
}