0ppxnhximxr commited on
Commit
5a87c6e
·
verified ·
1 Parent(s): f927011

Rename to SnapRef v1a

Browse files
NOTICE.txt CHANGED
@@ -1,7 +1,7 @@
1
  The CircleStone Model is licensed by CircleStone Labs LLC under the CircleStone Non-Commercial License. Copyright CircleStone Labs LLC.
2
  IN NO EVENT SHALL CIRCLESTONE LABS LLC BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH USE OF THIS MODEL.
3
 
4
- Modification notice: anima_ref_kv_v1.safetensors and anima_ref_kv_v1_fp8.safetensors are derivatives of the
5
  CircleStone Model (Anima base v1.0). They hold LoRA weights trained on images generated by that model, and they
6
  modify the model's behaviour when applied. They are not an official product of CircleStone Labs LLC and are not
7
  endorsed, approved or validated by it.
 
1
  The CircleStone Model is licensed by CircleStone Labs LLC under the CircleStone Non-Commercial License. Copyright CircleStone Labs LLC.
2
  IN NO EVENT SHALL CIRCLESTONE LABS LLC BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH USE OF THIS MODEL.
3
 
4
+ Modification notice: snapref_v1a.safetensors and snapref_v1a_fp8.safetensors (SnapRef v1a) are derivatives of the
5
  CircleStone Model (Anima base v1.0). They hold LoRA weights trained on images generated by that model, and they
6
  modify the model's behaviour when applied. They are not an official product of CircleStone Labs LLC and are not
7
  endorsed, approved or validated by it.
README.md CHANGED
@@ -11,9 +11,10 @@ tags:
11
  - reference-image
12
  - character-consistency
13
  - anime
 
14
  ---
15
 
16
- # Anima Ref KV
17
 
18
  ### One reference image. Your character, in any pose and scene you prompt.
19
 
@@ -34,9 +35,9 @@ describes only the scene.</sub>
34
  ## Quick start
35
 
36
  1. Install [Anima base v1.0](https://huggingface.co/circlestone-labs/Anima) with its text encoder and VAE.
37
- 2. Copy `comfyui/anima_ref_kv_nodes/` into `ComfyUI/custom_nodes/` and restart ComfyUI.
38
- 3. Put `anima_ref_kv_v1.safetensors` into `ComfyUI/models/loras/`.
39
- 4. Open `workflows/anima_ref_kv_v1.json`, load a reference image and queue.
40
 
41
  Write only the scene. Hair, eyes, outfit and style come from the reference.
42
 
@@ -45,7 +46,7 @@ masterpiece, best quality, score_7, safe, 1girl, solo, full body, sitting, cross
45
  ```
46
 
47
  > [!NOTE]
48
- > The adapter is not a regular LoRA. Load it with the **Anima Ref KV** node, not with LoraLoader.
49
 
50
  ## Settings
51
 
@@ -61,7 +62,7 @@ masterpiece, best quality, score_7, safe, 1girl, solo, full body, sitting, cross
61
 
62
  | setting | default | |
63
  |---|---|---|
64
- | `adapter` | `anima_ref_kv_v1.safetensors` | the bf16 file or the FP8 file |
65
  | `ref_in_uncond` | off | on: the reference is followed more loosely and the prompt more closely |
66
  | `ref_megapixels` | `1.0` | the reference is shrunk to this size if it is larger |
67
  | `ref_caption` | empty | optional appearance tags of the reference; can help with accessories |
@@ -76,13 +77,13 @@ Recommended sampling: euler or er_sde, `simple`, 28–30 steps, cfg 4.5.
76
 
77
  Put the two references side by side with the core **Image Stitch** node and connect the result as the reference.
78
  In the prompt, use `2girls` (or `1boy, 1girl`) instead of `solo`, and say in a few words who is on the left and who
79
- is on the right. A landscape size works best. See `workflows/anima_ref_kv_v1_two_characters.json`.
80
 
81
  ## Results
82
 
83
  <img src="figures/external.jpg" width="100%" alt="outside reference images">
84
 
85
- | | Anima Ref KV v1 | ElectronGirl v2 | Role-Ref-KV | Anima, no reference |
86
  |---|---:|---:|---:|---:|
87
  | seconds per image ¹ | **8.9** | 14.4 | 12.5 | 7.7 |
88
 
@@ -103,7 +104,7 @@ artist style.
103
 
104
  ## FP8
105
 
106
- `anima_ref_kv_v1_fp8.safetensors` is half the size (195 MB) and gives practically the same images. It also works
107
  with the [FP8 Anima base](https://huggingface.co/Bedovyy/Anima-FP8).
108
 
109
  ## Known limitations
@@ -120,9 +121,9 @@ with the [FP8 Anima base](https://huggingface.co/Bedovyy/Anima-FP8).
120
 
121
  | file | |
122
  |---|---|
123
- | `anima_ref_kv_v1.safetensors` | adapter, bf16 (382 MB) |
124
- | `anima_ref_kv_v1_fp8.safetensors` | adapter, FP8 (195 MB) |
125
- | `comfyui/anima_ref_kv_nodes/` | ComfyUI node |
126
  | `workflows/` | single character, two characters, side-by-side comparison with other adapters |
127
 
128
  ## License
 
11
  - reference-image
12
  - character-consistency
13
  - anime
14
+ - snapref
15
  ---
16
 
17
+ # SnapRef v1a
18
 
19
  ### One reference image. Your character, in any pose and scene you prompt.
20
 
 
35
  ## Quick start
36
 
37
  1. Install [Anima base v1.0](https://huggingface.co/circlestone-labs/Anima) with its text encoder and VAE.
38
+ 2. Copy `comfyui/snapref/` into `ComfyUI/custom_nodes/` and restart ComfyUI.
39
+ 3. Put `snapref_v1a.safetensors` into `ComfyUI/models/loras/`.
40
+ 4. Open `workflows/snapref_v1a.json`, load a reference image and queue.
41
 
42
  Write only the scene. Hair, eyes, outfit and style come from the reference.
43
 
 
46
  ```
47
 
48
  > [!NOTE]
49
+ > The adapter is not a regular LoRA. Load it with the **SnapRef** node, not with LoraLoader.
50
 
51
  ## Settings
52
 
 
62
 
63
  | setting | default | |
64
  |---|---|---|
65
+ | `adapter` | `snapref_v1a.safetensors` | the bf16 file or the FP8 file |
66
  | `ref_in_uncond` | off | on: the reference is followed more loosely and the prompt more closely |
67
  | `ref_megapixels` | `1.0` | the reference is shrunk to this size if it is larger |
68
  | `ref_caption` | empty | optional appearance tags of the reference; can help with accessories |
 
77
 
78
  Put the two references side by side with the core **Image Stitch** node and connect the result as the reference.
79
  In the prompt, use `2girls` (or `1boy, 1girl`) instead of `solo`, and say in a few words who is on the left and who
80
+ is on the right. A landscape size works best. See `workflows/snapref_v1a_two_characters.json`.
81
 
82
  ## Results
83
 
84
  <img src="figures/external.jpg" width="100%" alt="outside reference images">
85
 
86
+ | | SnapRef v1a | ElectronGirl v2 | Role-Ref-KV | Anima, no reference |
87
  |---|---:|---:|---:|---:|
88
  | seconds per image ¹ | **8.9** | 14.4 | 12.5 | 7.7 |
89
 
 
104
 
105
  ## FP8
106
 
107
+ `snapref_v1a_fp8.safetensors` is half the size (195 MB) and gives practically the same images. It also works
108
  with the [FP8 Anima base](https://huggingface.co/Bedovyy/Anima-FP8).
109
 
110
  ## Known limitations
 
121
 
122
  | file | |
123
  |---|---|
124
+ | `snapref_v1a.safetensors` | adapter, bf16 (382 MB) |
125
+ | `snapref_v1a_fp8.safetensors` | adapter, FP8 (195 MB) |
126
+ | `comfyui/snapref/` | ComfyUI node |
127
  | `workflows/` | single character, two characters, side-by-side comparison with other adapters |
128
 
129
  ## License
SHA256SUMS CHANGED
@@ -1,14 +1,14 @@
1
  ee956174133d7c2cdcf220440c7726187eaf4b50e8e48ee32194353a22164d15 *./LICENSE.md
2
- e84410274c0ae43e9e2218504dd6101d2cbefeee28cd1b426d631d6e70393c37 *./NOTICE.txt
3
- 684046281a5e7d8351933b04a244e733a798aaa6be9a52dab9d5617cee7762da *./README.md
4
- b04afe762dc883ec366e95f973874d2cca4db9fd8d6f3c7be8f5f1b7271f733d *./anima_ref_kv_v1.safetensors
5
- 4a298f72320a2df27ab05ef76df3e934b8200231508edace34de585f481e008e *./anima_ref_kv_v1_fp8.safetensors
6
- 2e0e9d5c2663ea8161e5214e479fcfb1baefc73a4c7638cf9f8196bfec88c110 *./comfyui/anima_ref_kv_nodes/__init__.py
7
  07d247f119e96843744d2103b1ae5b04900bb8b61bae6993c0d086f8a3f5fdf1 *./figures/comparison_summary.json
8
- 083ce80b9bde70ee4d811a1c0655dae4b32250235164537858f3272135ccf91d *./figures/external.jpg
9
- 645f3862e8a17b90e4f3af9c6e356a945dea74ddeb9321efc41d55459f336a5f *./figures/heldout.jpg
10
  05cd7c7137084cab60d732e651b53792a3a448f4ee4ccc3ed2aa93c72fefb233 *./heldout_loss.json
 
 
11
  07ddaf2db0b1bb684b9a1086614860cff7b078f309d19711dd8d959173badbc3 *./training_config.json
12
- 8fdf8ce68a48d7e7a66be036ff8193eb5880a38f7e66a826d8fe1e1021e07702 *./workflows/anima_ref_kv_v1.json
13
- cc4be70a58166c0e9f41f0df253c7d7a0501e1f71eed44df75f45a7dc12b5fb1 *./workflows/anima_ref_kv_v1_two_characters.json
14
- 05cded8877b3869fa9642e8865dbc9e409c73ba61b5fc0ad5cfd35dc011d4dec *./workflows/compare_with_other_adapters.json
 
1
  ee956174133d7c2cdcf220440c7726187eaf4b50e8e48ee32194353a22164d15 *./LICENSE.md
2
+ 0f9164e542c2e10df4e51b93a336c9cc8cc235edda053cb0270b775d841e4a1a *./NOTICE.txt
3
+ 9ff4604cbb6741405483a3fe19f954f99bc3501348ea883f9373595104bb8f5c *./README.md
4
+ 5bf826aeeb5a264392379caeabdd9a8dd78556cda04d3bc34b054872a35f2c5e *./comfyui/snapref/__init__.py
 
 
5
  07d247f119e96843744d2103b1ae5b04900bb8b61bae6993c0d086f8a3f5fdf1 *./figures/comparison_summary.json
6
+ c53601f28286d6b0103971f2fa33428bdf344d1bfd99544d54debff6b6a8c70d *./figures/external.jpg
7
+ 3c6c946bbd7a158b5e029c98b451090eb5b2cc9ccd839bc711d5a4d724fccb88 *./figures/heldout.jpg
8
  05cd7c7137084cab60d732e651b53792a3a448f4ee4ccc3ed2aa93c72fefb233 *./heldout_loss.json
9
+ 0b8c6897845bb721c46977eae034a95492aa39cf22342b345f7e0315f4bd81fd *./snapref_v1a.safetensors
10
+ 423b6efb7f0ddf9022b3a9b78a082a2baaaa5cbff38b6089a37637185b8193ce *./snapref_v1a_fp8.safetensors
11
  07ddaf2db0b1bb684b9a1086614860cff7b078f309d19711dd8d959173badbc3 *./training_config.json
12
+ 33cb69e9d02125f31782709ec3180896d02c1ca343a2d97284772b7c163aa7f1 *./workflows/compare_with_other_adapters.json
13
+ 5a75b525948b77a6b7b9c009e09423b85a391f24b19e644dc7a32e7e7ec1cbac *./workflows/snapref_v1a.json
14
+ 102ea31d8551df87dd053fec08538bd7812336ba4dc5d858bb672240317d728e *./workflows/snapref_v1a_two_characters.json
comfyui/{anima_ref_kv_nodes → snapref}/__init__.py RENAMED
@@ -1,4 +1,4 @@
1
- """Anima Ref KV: ComfyUI node for the Anima Ref KV reference adapter (asymmetric attention + cached reference K/V).
2
 
3
  The reference runs once per sampling run through its own stream (sigma 0, its own LoRA, RoPE frame t = ref_t,
4
  centred on the target) and every block's self-attention K/V are kept. Each target forward then prepends those
@@ -14,7 +14,8 @@ ComfyUI-Anima-Ref-Adapter, Apache-2.0). One extra model call per step until ref_
14
 
15
  Two characters: stitch two references side by side into one image and say who is left / right in the prompt.
16
 
17
- Node: Anima Ref KV (MODEL, CLIP, VAE, reference IMAGE, adapter) -> MODEL for KSampler.
 
18
  """
19
  from __future__ import annotations
20
 
@@ -31,8 +32,8 @@ import comfy.samplers
31
  import comfy.utils
32
  import folder_paths
33
 
34
- WRAPPER_KEY = "anima_ref_kv"
35
- NO_REF_KEY = "anima_ref_kv_off" # transformer_options flag: run this call without the reference
36
  _STATE = {"adapter": None, "stream": None} # LoRA hooks apply only while an adapter is active
37
  _adapters: dict[str, "_Adapter"] = {}
38
 
@@ -41,7 +42,8 @@ class _Adapter:
41
  def __init__(self, path: str):
42
  tensors = load_file(path)
43
  with safe_open(path, "pt") as handle:
44
- self.meta = json.loads((handle.metadata() or {}).get("anima_ref_kv", "{}"))
 
45
  if self.meta.get("format") != "anima_ref_kv/1":
46
  raise ValueError(f"{path} is not an anima_ref_kv/1 adapter")
47
  self.ref_t = int(self.meta.get("ref_t", 10))
@@ -259,10 +261,11 @@ def _make_ref_guidance(ref_guidance: float, correction: str, ref_end: float):
259
 
260
 
261
  def _adapter_files():
262
- return [n for n in folder_paths.get_filename_list("loras") if "anima_ref_kv" in n] or folder_paths.get_filename_list("loras")
 
263
 
264
 
265
- class AnimaRefKV:
266
  @classmethod
267
  def INPUT_TYPES(cls):
268
  return {"required": {
@@ -298,7 +301,7 @@ class AnimaRefKV:
298
 
299
  RETURN_TYPES = ("MODEL",)
300
  FUNCTION = "apply"
301
- CATEGORY = "Anima Ref KV"
302
 
303
  def apply(self, model, clip, vae, image, adapter, mode, ref_in_uncond, ref_megapixels, strength=0.0, ref_caption="",
304
  ref_guidance_on=False, ref_guidance=4.5, correction="apg", ref_end=1.0):
@@ -322,10 +325,10 @@ class AnimaRefKV:
322
  m.add_wrapper_with_key(comfy.patcher_extension.WrappersMP.OUTER_SAMPLE, WRAPPER_KEY, _make_outer(ad))
323
  if ref_guidance_on:
324
  m.set_model_sampler_post_cfg_function(_make_ref_guidance(ref_guidance, correction, ref_end))
325
- logging.info(f"[Anima Ref KV] {adapter} step {ad.meta.get('step')}, reference {width}x{height}, mode {mode}, "
326
  f"strength {strength}, ref_guidance {ref_guidance if ref_guidance_on else 'off'}")
327
  return (m,)
328
 
329
 
330
- NODE_CLASS_MAPPINGS = {"AnimaRefKV": AnimaRefKV}
331
- NODE_DISPLAY_NAME_MAPPINGS = {"AnimaRefKV": "Anima Ref KV"}
 
1
+ """SnapRef: ComfyUI node for the SnapRef reference adapter for Anima (asymmetric attention + cached reference K/V).
2
 
3
  The reference runs once per sampling run through its own stream (sigma 0, its own LoRA, RoPE frame t = ref_t,
4
  centred on the target) and every block's self-attention K/V are kept. Each target forward then prepends those
 
14
 
15
  Two characters: stitch two references side by side into one image and say who is left / right in the prompt.
16
 
17
+ Node: SnapRef (MODEL, CLIP, VAE, reference IMAGE, adapter) -> MODEL for KSampler.
18
+ Weight files keep the internal tensor format anima_ref_kv/1 (key prefix anima_ref_kv.*).
19
  """
20
  from __future__ import annotations
21
 
 
32
  import comfy.utils
33
  import folder_paths
34
 
35
+ WRAPPER_KEY = "snapref"
36
+ NO_REF_KEY = "snapref_off" # transformer_options flag: run this call without the reference
37
  _STATE = {"adapter": None, "stream": None} # LoRA hooks apply only while an adapter is active
38
  _adapters: dict[str, "_Adapter"] = {}
39
 
 
42
  def __init__(self, path: str):
43
  tensors = load_file(path)
44
  with safe_open(path, "pt") as handle:
45
+ md = handle.metadata() or {}
46
+ self.meta = json.loads(md.get("snapref") or md.get("anima_ref_kv") or "{}")
47
  if self.meta.get("format") != "anima_ref_kv/1":
48
  raise ValueError(f"{path} is not an anima_ref_kv/1 adapter")
49
  self.ref_t = int(self.meta.get("ref_t", 10))
 
261
 
262
 
263
  def _adapter_files():
264
+ names = folder_paths.get_filename_list("loras")
265
+ return [n for n in names if "snapref" in n.lower() or "anima_ref_kv" in n] or names
266
 
267
 
268
+ class SnapRef:
269
  @classmethod
270
  def INPUT_TYPES(cls):
271
  return {"required": {
 
301
 
302
  RETURN_TYPES = ("MODEL",)
303
  FUNCTION = "apply"
304
+ CATEGORY = "SnapRef"
305
 
306
  def apply(self, model, clip, vae, image, adapter, mode, ref_in_uncond, ref_megapixels, strength=0.0, ref_caption="",
307
  ref_guidance_on=False, ref_guidance=4.5, correction="apg", ref_end=1.0):
 
325
  m.add_wrapper_with_key(comfy.patcher_extension.WrappersMP.OUTER_SAMPLE, WRAPPER_KEY, _make_outer(ad))
326
  if ref_guidance_on:
327
  m.set_model_sampler_post_cfg_function(_make_ref_guidance(ref_guidance, correction, ref_end))
328
+ logging.info(f"[SnapRef] {adapter} step {ad.meta.get('step')}, reference {width}x{height}, mode {mode}, "
329
  f"strength {strength}, ref_guidance {ref_guidance if ref_guidance_on else 'off'}")
330
  return (m,)
331
 
332
 
333
+ NODE_CLASS_MAPPINGS = {"SnapRef": SnapRef}
334
+ NODE_DISPLAY_NAME_MAPPINGS = {"SnapRef": "SnapRef"}
figures/external.jpg CHANGED

Git LFS Details

  • SHA256: 083ce80b9bde70ee4d811a1c0655dae4b32250235164537858f3272135ccf91d
  • Pointer size: 132 Bytes
  • Size of remote file: 1.1 MB

Git LFS Details

  • SHA256: c53601f28286d6b0103971f2fa33428bdf344d1bfd99544d54debff6b6a8c70d
  • Pointer size: 132 Bytes
  • Size of remote file: 1.1 MB
figures/heldout.jpg CHANGED

Git LFS Details

  • SHA256: 645f3862e8a17b90e4f3af9c6e356a945dea74ddeb9321efc41d55459f336a5f
  • Pointer size: 132 Bytes
  • Size of remote file: 1.2 MB

Git LFS Details

  • SHA256: 3c6c946bbd7a158b5e029c98b451090eb5b2cc9ccd839bc711d5a4d724fccb88
  • Pointer size: 132 Bytes
  • Size of remote file: 1.2 MB
anima_ref_kv_v1.safetensors → snapref_v1a.safetensors RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:b04afe762dc883ec366e95f973874d2cca4db9fd8d6f3c7be8f5f1b7271f733d
3
- size 381821960
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:0b8c6897845bb721c46977eae034a95492aa39cf22342b345f7e0315f4bd81fd
3
+ size 381822008
anima_ref_kv_v1_fp8.safetensors → snapref_v1a_fp8.safetensors RENAMED
@@ -1,3 +1,3 @@
1
  version https://git-lfs.github.com/spec/v1
2
- oid sha256:4a298f72320a2df27ab05ef76df3e934b8200231508edace34de585f481e008e
3
- size 194652680
 
1
  version https://git-lfs.github.com/spec/v1
2
+ oid sha256:423b6efb7f0ddf9022b3a9b78a082a2baaaa5cbff38b6089a37637185b8193ce
3
+ size 194652728
workflows/compare_with_other_adapters.json CHANGED
@@ -1,1249 +1,1249 @@
1
- {
2
- "last_node_id": 22,
3
- "last_link_id": 38,
4
- "nodes": [
5
- {
6
- "id": 1,
7
- "type": "UNETLoader",
8
- "pos": [
9
- 0,
10
- 0
11
- ],
12
- "size": [
13
- 320,
14
- 130
15
- ],
16
- "flags": {},
17
- "order": 0,
18
- "mode": 0,
19
- "inputs": [],
20
- "outputs": [
21
- {
22
- "name": "MODEL",
23
- "type": "MODEL",
24
- "links": [
25
- 3,
26
- 14,
27
- 24,
28
- 32
29
- ],
30
- "slot_index": 0
31
- }
32
- ],
33
- "properties": {
34
- "Node name for S&R": "UNETLoader"
35
- },
36
- "widgets_values": [
37
- "anima-base-v1.0.safetensors",
38
- "default"
39
- ]
40
- },
41
- {
42
- "id": 2,
43
- "type": "CLIPLoader",
44
- "pos": [
45
- 0,
46
- 160
47
- ],
48
- "size": [
49
- 320,
50
- 130
51
- ],
52
- "flags": {},
53
- "order": 1,
54
- "mode": 0,
55
- "inputs": [],
56
- "outputs": [
57
- {
58
- "name": "CLIP",
59
- "type": "CLIP",
60
- "links": [
61
- 1,
62
- 2,
63
- 4
64
- ],
65
- "slot_index": 0
66
- }
67
- ],
68
- "properties": {
69
- "Node name for S&R": "CLIPLoader"
70
- },
71
- "widgets_values": [
72
- "qwen_3_06b_base.safetensors",
73
- "stable_diffusion",
74
- "default"
75
- ]
76
- },
77
- {
78
- "id": 3,
79
- "type": "VAELoader",
80
- "pos": [
81
- 0,
82
- 320
83
- ],
84
- "size": [
85
- 320,
86
- 130
87
- ],
88
- "flags": {},
89
- "order": 2,
90
- "mode": 0,
91
- "inputs": [],
92
- "outputs": [
93
- {
94
- "name": "VAE",
95
- "type": "VAE",
96
- "links": [
97
- 5,
98
- 12,
99
- 15,
100
- 22,
101
- 25,
102
- 30,
103
- 37
104
- ],
105
- "slot_index": 0
106
- }
107
- ],
108
- "properties": {
109
- "Node name for S&R": "VAELoader"
110
- },
111
- "widgets_values": [
112
- "qwen_image_vae.safetensors"
113
- ]
114
- },
115
- {
116
- "id": 4,
117
- "type": "LoadImage",
118
- "pos": [
119
- 0,
120
- 460
121
- ],
122
- "size": [
123
- 320,
124
- 130
125
- ],
126
- "flags": {},
127
- "order": 3,
128
- "mode": 0,
129
- "inputs": [],
130
- "outputs": [
131
- {
132
- "name": "IMAGE",
133
- "type": "IMAGE",
134
- "links": [
135
- 6,
136
- 16,
137
- 28
138
- ],
139
- "slot_index": 0
140
- },
141
- {
142
- "name": "MASK",
143
- "type": "MASK",
144
- "links": [],
145
- "slot_index": 1
146
- }
147
- ],
148
- "properties": {
149
- "Node name for S&R": "LoadImage"
150
- },
151
- "widgets_values": [
152
- "reference.png",
153
- "image"
154
- ]
155
- },
156
- {
157
- "id": 5,
158
- "type": "CLIPTextEncode",
159
- "pos": [
160
- 360,
161
- 0
162
- ],
163
- "size": [
164
- 420,
165
- 260
166
- ],
167
- "flags": {},
168
- "order": 4,
169
- "mode": 0,
170
- "inputs": [
171
- {
172
- "name": "clip",
173
- "type": "CLIP",
174
- "link": 1
175
- }
176
- ],
177
- "outputs": [
178
- {
179
- "name": "CONDITIONING",
180
- "type": "CONDITIONING",
181
- "links": [
182
- 8,
183
- 18,
184
- 26,
185
- 33
186
- ],
187
- "slot_index": 0
188
- }
189
- ],
190
- "properties": {
191
- "Node name for S&R": "CLIPTextEncode"
192
- },
193
- "widgets_values": [
194
- "masterpiece, best quality, score_7, safe, 1girl, solo, full body, standing, looking at viewer, smile, park, day"
195
- ],
196
- "title": "positive (scene only)"
197
- },
198
- {
199
- "id": 6,
200
- "type": "CLIPTextEncode",
201
- "pos": [
202
- 360,
203
- 300
204
- ],
205
- "size": [
206
- 420,
207
- 260
208
- ],
209
- "flags": {},
210
- "order": 5,
211
- "mode": 0,
212
- "inputs": [
213
- {
214
- "name": "clip",
215
- "type": "CLIP",
216
- "link": 2
217
- }
218
- ],
219
- "outputs": [
220
- {
221
- "name": "CONDITIONING",
222
- "type": "CONDITIONING",
223
- "links": [
224
- 9,
225
- 19,
226
- 27,
227
- 34
228
- ],
229
- "slot_index": 0
230
- }
231
- ],
232
- "properties": {
233
- "Node name for S&R": "CLIPTextEncode"
234
- },
235
- "widgets_values": [
236
- "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
237
- ],
238
- "title": "negative"
239
- },
240
- {
241
- "id": 7,
242
- "type": "EmptyLatentImage",
243
- "pos": [
244
- 360,
245
- 600
246
- ],
247
- "size": [
248
- 320,
249
- 130
250
- ],
251
- "flags": {},
252
- "order": 6,
253
- "mode": 0,
254
- "inputs": [],
255
- "outputs": [
256
- {
257
- "name": "LATENT",
258
- "type": "LATENT",
259
- "links": [
260
- 10,
261
- 20,
262
- 35
263
- ],
264
- "slot_index": 0
265
- }
266
- ],
267
- "properties": {
268
- "Node name for S&R": "EmptyLatentImage"
269
- },
270
- "widgets_values": [
271
- 832,
272
- 1216,
273
- 1
274
- ]
275
- },
276
- {
277
- "id": 8,
278
- "type": "AnimaRefKV",
279
- "pos": [
280
- 820,
281
- 0
282
- ],
283
- "size": [
284
- 320,
285
- 130
286
- ],
287
- "flags": {},
288
- "order": 7,
289
- "mode": 0,
290
- "inputs": [
291
- {
292
- "name": "model",
293
- "type": "MODEL",
294
- "link": 3
295
- },
296
- {
297
- "name": "clip",
298
- "type": "CLIP",
299
- "link": 4
300
- },
301
- {
302
- "name": "vae",
303
- "type": "VAE",
304
- "link": 5
305
- },
306
- {
307
- "name": "image",
308
- "type": "IMAGE",
309
- "link": 6
310
- }
311
- ],
312
- "outputs": [
313
- {
314
- "name": "MODEL",
315
- "type": "MODEL",
316
- "links": [
317
- 7
318
- ],
319
- "slot_index": 0
320
- }
321
- ],
322
- "properties": {
323
- "Node name for S&R": "AnimaRefKV"
324
- },
325
- "widgets_values": [
326
- "anima_ref_kv_v1.safetensors",
327
- "cs",
328
- false,
329
- 1.0,
330
- 0.0,
331
- "",
332
- false,
333
- 4.5,
334
- "apg",
335
- 1.0
336
- ],
337
- "title": "Anima Ref KV"
338
- },
339
- {
340
- "id": 9,
341
- "type": "KSampler",
342
- "pos": [
343
- 1160,
344
- 0
345
- ],
346
- "size": [
347
- 320,
348
- 130
349
- ],
350
- "flags": {},
351
- "order": 8,
352
- "mode": 0,
353
- "inputs": [
354
- {
355
- "name": "model",
356
- "type": "MODEL",
357
- "link": 7
358
- },
359
- {
360
- "name": "positive",
361
- "type": "CONDITIONING",
362
- "link": 8
363
- },
364
- {
365
- "name": "negative",
366
- "type": "CONDITIONING",
367
- "link": 9
368
- },
369
- {
370
- "name": "latent_image",
371
- "type": "LATENT",
372
- "link": 10
373
- }
374
- ],
375
- "outputs": [
376
- {
377
- "name": "LATENT",
378
- "type": "LATENT",
379
- "links": [
380
- 11
381
- ],
382
- "slot_index": 0
383
- }
384
- ],
385
- "properties": {
386
- "Node name for S&R": "KSampler"
387
- },
388
- "widgets_values": [
389
- 20261029,
390
- "fixed",
391
- 28,
392
- 4.5,
393
- "euler",
394
- "simple",
395
- 1.0
396
- ]
397
- },
398
- {
399
- "id": 10,
400
- "type": "VAEDecode",
401
- "pos": [
402
- 1500,
403
- 0
404
- ],
405
- "size": [
406
- 320,
407
- 130
408
- ],
409
- "flags": {},
410
- "order": 9,
411
- "mode": 0,
412
- "inputs": [
413
- {
414
- "name": "samples",
415
- "type": "LATENT",
416
- "link": 11
417
- },
418
- {
419
- "name": "vae",
420
- "type": "VAE",
421
- "link": 12
422
- }
423
- ],
424
- "outputs": [
425
- {
426
- "name": "IMAGE",
427
- "type": "IMAGE",
428
- "links": [
429
- 13
430
- ],
431
- "slot_index": 0
432
- }
433
- ],
434
- "properties": {
435
- "Node name for S&R": "VAEDecode"
436
- },
437
- "widgets_values": []
438
- },
439
- {
440
- "id": 11,
441
- "type": "SaveImage",
442
- "pos": [
443
- 1720,
444
- 0
445
- ],
446
- "size": [
447
- 320,
448
- 130
449
- ],
450
- "flags": {},
451
- "order": 10,
452
- "mode": 0,
453
- "inputs": [
454
- {
455
- "name": "images",
456
- "type": "IMAGE",
457
- "link": 13
458
- }
459
- ],
460
- "outputs": [],
461
- "properties": {
462
- "Node name for S&R": "SaveImage"
463
- },
464
- "widgets_values": [
465
- "compare/anima_ref_kv"
466
- ]
467
- },
468
- {
469
- "id": 12,
470
- "type": "AnimaRefAdapter",
471
- "pos": [
472
- 820,
473
- 300
474
- ],
475
- "size": [
476
- 320,
477
- 130
478
- ],
479
- "flags": {},
480
- "order": 11,
481
- "mode": 0,
482
- "inputs": [
483
- {
484
- "name": "model",
485
- "type": "MODEL",
486
- "link": 14
487
- },
488
- {
489
- "name": "vae",
490
- "type": "VAE",
491
- "link": 15
492
- },
493
- {
494
- "name": "image",
495
- "type": "IMAGE",
496
- "link": 16
497
- }
498
- ],
499
- "outputs": [
500
- {
501
- "name": "MODEL",
502
- "type": "MODEL",
503
- "links": [
504
- 17
505
- ],
506
- "slot_index": 0
507
- }
508
- ],
509
- "properties": {
510
- "Node name for S&R": "AnimaRefAdapter"
511
- },
512
- "widgets_values": [
513
- "anima_ref_adapter_v2_r64.safetensors",
514
- 4.5,
515
- "apg",
516
- 1.0,
517
- 1.0,
518
- 1.0
519
- ],
520
- "title": "ElectronGirl v2"
521
- },
522
- {
523
- "id": 13,
524
- "type": "KSampler",
525
- "pos": [
526
- 1160,
527
- 300
528
- ],
529
- "size": [
530
- 320,
531
- 130
532
- ],
533
- "flags": {},
534
- "order": 12,
535
- "mode": 0,
536
- "inputs": [
537
- {
538
- "name": "model",
539
- "type": "MODEL",
540
- "link": 17
541
- },
542
- {
543
- "name": "positive",
544
- "type": "CONDITIONING",
545
- "link": 18
546
- },
547
- {
548
- "name": "negative",
549
- "type": "CONDITIONING",
550
- "link": 19
551
- },
552
- {
553
- "name": "latent_image",
554
- "type": "LATENT",
555
- "link": 20
556
- }
557
- ],
558
- "outputs": [
559
- {
560
- "name": "LATENT",
561
- "type": "LATENT",
562
- "links": [
563
- 21
564
- ],
565
- "slot_index": 0
566
- }
567
- ],
568
- "properties": {
569
- "Node name for S&R": "KSampler"
570
- },
571
- "widgets_values": [
572
- 20261029,
573
- "fixed",
574
- 28,
575
- 4.5,
576
- "euler",
577
- "simple",
578
- 1.0
579
- ]
580
- },
581
- {
582
- "id": 14,
583
- "type": "VAEDecode",
584
- "pos": [
585
- 1500,
586
- 300
587
- ],
588
- "size": [
589
- 320,
590
- 130
591
- ],
592
- "flags": {},
593
- "order": 13,
594
- "mode": 0,
595
- "inputs": [
596
- {
597
- "name": "samples",
598
- "type": "LATENT",
599
- "link": 21
600
- },
601
- {
602
- "name": "vae",
603
- "type": "VAE",
604
- "link": 22
605
- }
606
- ],
607
- "outputs": [
608
- {
609
- "name": "IMAGE",
610
- "type": "IMAGE",
611
- "links": [
612
- 23
613
- ],
614
- "slot_index": 0
615
- }
616
- ],
617
- "properties": {
618
- "Node name for S&R": "VAEDecode"
619
- },
620
- "widgets_values": []
621
- },
622
- {
623
- "id": 15,
624
- "type": "SaveImage",
625
- "pos": [
626
- 1720,
627
- 300
628
- ],
629
- "size": [
630
- 320,
631
- 130
632
- ],
633
- "flags": {},
634
- "order": 14,
635
- "mode": 0,
636
- "inputs": [
637
- {
638
- "name": "images",
639
- "type": "IMAGE",
640
- "link": 23
641
- }
642
- ],
643
- "outputs": [],
644
- "properties": {
645
- "Node name for S&R": "SaveImage"
646
- },
647
- "widgets_values": [
648
- "compare/v2"
649
- ]
650
- },
651
- {
652
- "id": 16,
653
- "type": "AnimaRoleRefKV",
654
- "pos": [
655
- 820,
656
- 600
657
- ],
658
- "size": [
659
- 320,
660
- 130
661
- ],
662
- "flags": {},
663
- "order": 15,
664
- "mode": 0,
665
- "inputs": [
666
- {
667
- "name": "model",
668
- "type": "MODEL",
669
- "link": 24
670
- },
671
- {
672
- "name": "vae",
673
- "type": "VAE",
674
- "link": 25
675
- },
676
- {
677
- "name": "positive",
678
- "type": "CONDITIONING",
679
- "link": 26
680
- },
681
- {
682
- "name": "negative",
683
- "type": "CONDITIONING",
684
- "link": 27
685
- },
686
- {
687
- "name": "reference",
688
- "type": "IMAGE",
689
- "link": 28
690
- }
691
- ],
692
- "outputs": [
693
- {
694
- "name": "LATENT",
695
- "type": "LATENT",
696
- "links": [
697
- 29
698
- ],
699
- "slot_index": 0
700
- }
701
- ],
702
- "properties": {
703
- "Node name for S&R": "AnimaRoleRefKV"
704
- },
705
- "widgets_values": [
706
- "anima-role-ref-kv-v1.0.safetensors",
707
- 20261029,
708
- "fixed",
709
- 832,
710
- 1216,
711
- 28,
712
- 4.5
713
- ],
714
- "title": "AnticPan Role-Ref-KV (own sampler)"
715
- },
716
- {
717
- "id": 17,
718
- "type": "VAEDecode",
719
- "pos": [
720
- 1160,
721
- 600
722
- ],
723
- "size": [
724
- 320,
725
- 130
726
- ],
727
- "flags": {},
728
- "order": 16,
729
- "mode": 0,
730
- "inputs": [
731
- {
732
- "name": "samples",
733
- "type": "LATENT",
734
- "link": 29
735
- },
736
- {
737
- "name": "vae",
738
- "type": "VAE",
739
- "link": 30
740
- }
741
- ],
742
- "outputs": [
743
- {
744
- "name": "IMAGE",
745
- "type": "IMAGE",
746
- "links": [
747
- 31
748
- ],
749
- "slot_index": 0
750
- }
751
- ],
752
- "properties": {
753
- "Node name for S&R": "VAEDecode"
754
- },
755
- "widgets_values": []
756
- },
757
- {
758
- "id": 18,
759
- "type": "SaveImage",
760
- "pos": [
761
- 1380,
762
- 600
763
- ],
764
- "size": [
765
- 320,
766
- 130
767
- ],
768
- "flags": {},
769
- "order": 17,
770
- "mode": 0,
771
- "inputs": [
772
- {
773
- "name": "images",
774
- "type": "IMAGE",
775
- "link": 31
776
- }
777
- ],
778
- "outputs": [],
779
- "properties": {
780
- "Node name for S&R": "SaveImage"
781
- },
782
- "widgets_values": [
783
- "compare/role_ref_kv"
784
- ]
785
- },
786
- {
787
- "id": 19,
788
- "type": "KSampler",
789
- "pos": [
790
- 1160,
791
- 900
792
- ],
793
- "size": [
794
- 320,
795
- 130
796
- ],
797
- "flags": {},
798
- "order": 18,
799
- "mode": 0,
800
- "inputs": [
801
- {
802
- "name": "model",
803
- "type": "MODEL",
804
- "link": 32
805
- },
806
- {
807
- "name": "positive",
808
- "type": "CONDITIONING",
809
- "link": 33
810
- },
811
- {
812
- "name": "negative",
813
- "type": "CONDITIONING",
814
- "link": 34
815
- },
816
- {
817
- "name": "latent_image",
818
- "type": "LATENT",
819
- "link": 35
820
- }
821
- ],
822
- "outputs": [
823
- {
824
- "name": "LATENT",
825
- "type": "LATENT",
826
- "links": [
827
- 36
828
- ],
829
- "slot_index": 0
830
- }
831
- ],
832
- "properties": {
833
- "Node name for S&R": "KSampler"
834
- },
835
- "widgets_values": [
836
- 20261029,
837
- "fixed",
838
- 28,
839
- 4.5,
840
- "euler",
841
- "simple",
842
- 1.0
843
- ]
844
- },
845
- {
846
- "id": 20,
847
- "type": "VAEDecode",
848
- "pos": [
849
- 1500,
850
- 900
851
- ],
852
- "size": [
853
- 320,
854
- 130
855
- ],
856
- "flags": {},
857
- "order": 19,
858
- "mode": 0,
859
- "inputs": [
860
- {
861
- "name": "samples",
862
- "type": "LATENT",
863
- "link": 36
864
- },
865
- {
866
- "name": "vae",
867
- "type": "VAE",
868
- "link": 37
869
- }
870
- ],
871
- "outputs": [
872
- {
873
- "name": "IMAGE",
874
- "type": "IMAGE",
875
- "links": [
876
- 38
877
- ],
878
- "slot_index": 0
879
- }
880
- ],
881
- "properties": {
882
- "Node name for S&R": "VAEDecode"
883
- },
884
- "widgets_values": []
885
- },
886
- {
887
- "id": 21,
888
- "type": "SaveImage",
889
- "pos": [
890
- 1720,
891
- 900
892
- ],
893
- "size": [
894
- 320,
895
- 130
896
- ],
897
- "flags": {},
898
- "order": 20,
899
- "mode": 0,
900
- "inputs": [
901
- {
902
- "name": "images",
903
- "type": "IMAGE",
904
- "link": 38
905
- }
906
- ],
907
- "outputs": [],
908
- "properties": {
909
- "Node name for S&R": "SaveImage"
910
- },
911
- "widgets_values": [
912
- "compare/base"
913
- ]
914
- },
915
- {
916
- "id": 22,
917
- "type": "Note",
918
- "pos": [
919
- 0,
920
- 760
921
- ],
922
- "size": [
923
- 420,
924
- 260
925
- ],
926
- "flags": {},
927
- "order": 21,
928
- "mode": 0,
929
- "inputs": [],
930
- "outputs": [],
931
- "properties": {
932
- "Node name for S&R": "Note"
933
- },
934
- "widgets_values": [
935
- "Same reference, prompt, seed and size for every method: ours | ElectronGirl v2 | Role-Ref-KV | base without reference. Euler/simple 28 steps cfg 4.5 everywhere (Role-Ref-KV: its own Euler loop). Change the seed on each sampler node together."
936
- ]
937
- }
938
- ],
939
- "links": [
940
- [
941
- 1,
942
- 2,
943
- 0,
944
- 5,
945
- 0,
946
- "CLIP"
947
- ],
948
- [
949
- 2,
950
- 2,
951
- 0,
952
- 6,
953
- 0,
954
- "CLIP"
955
- ],
956
- [
957
- 3,
958
- 1,
959
- 0,
960
- 8,
961
- 0,
962
- "MODEL"
963
- ],
964
- [
965
- 4,
966
- 2,
967
- 0,
968
- 8,
969
- 1,
970
- "CLIP"
971
- ],
972
- [
973
- 5,
974
- 3,
975
- 0,
976
- 8,
977
- 2,
978
- "VAE"
979
- ],
980
- [
981
- 6,
982
- 4,
983
- 0,
984
- 8,
985
- 3,
986
- "IMAGE"
987
- ],
988
- [
989
- 7,
990
- 8,
991
- 0,
992
- 9,
993
- 0,
994
- "MODEL"
995
- ],
996
- [
997
- 8,
998
- 5,
999
- 0,
1000
- 9,
1001
- 1,
1002
- "CONDITIONING"
1003
- ],
1004
- [
1005
- 9,
1006
- 6,
1007
- 0,
1008
- 9,
1009
- 2,
1010
- "CONDITIONING"
1011
- ],
1012
- [
1013
- 10,
1014
- 7,
1015
- 0,
1016
- 9,
1017
- 3,
1018
- "LATENT"
1019
- ],
1020
- [
1021
- 11,
1022
- 9,
1023
- 0,
1024
- 10,
1025
- 0,
1026
- "LATENT"
1027
- ],
1028
- [
1029
- 12,
1030
- 3,
1031
- 0,
1032
- 10,
1033
- 1,
1034
- "VAE"
1035
- ],
1036
- [
1037
- 13,
1038
- 10,
1039
- 0,
1040
- 11,
1041
- 0,
1042
- "IMAGE"
1043
- ],
1044
- [
1045
- 14,
1046
- 1,
1047
- 0,
1048
- 12,
1049
- 0,
1050
- "MODEL"
1051
- ],
1052
- [
1053
- 15,
1054
- 3,
1055
- 0,
1056
- 12,
1057
- 1,
1058
- "VAE"
1059
- ],
1060
- [
1061
- 16,
1062
- 4,
1063
- 0,
1064
- 12,
1065
- 2,
1066
- "IMAGE"
1067
- ],
1068
- [
1069
- 17,
1070
- 12,
1071
- 0,
1072
- 13,
1073
- 0,
1074
- "MODEL"
1075
- ],
1076
- [
1077
- 18,
1078
- 5,
1079
- 0,
1080
- 13,
1081
- 1,
1082
- "CONDITIONING"
1083
- ],
1084
- [
1085
- 19,
1086
- 6,
1087
- 0,
1088
- 13,
1089
- 2,
1090
- "CONDITIONING"
1091
- ],
1092
- [
1093
- 20,
1094
- 7,
1095
- 0,
1096
- 13,
1097
- 3,
1098
- "LATENT"
1099
- ],
1100
- [
1101
- 21,
1102
- 13,
1103
- 0,
1104
- 14,
1105
- 0,
1106
- "LATENT"
1107
- ],
1108
- [
1109
- 22,
1110
- 3,
1111
- 0,
1112
- 14,
1113
- 1,
1114
- "VAE"
1115
- ],
1116
- [
1117
- 23,
1118
- 14,
1119
- 0,
1120
- 15,
1121
- 0,
1122
- "IMAGE"
1123
- ],
1124
- [
1125
- 24,
1126
- 1,
1127
- 0,
1128
- 16,
1129
- 0,
1130
- "MODEL"
1131
- ],
1132
- [
1133
- 25,
1134
- 3,
1135
- 0,
1136
- 16,
1137
- 1,
1138
- "VAE"
1139
- ],
1140
- [
1141
- 26,
1142
- 5,
1143
- 0,
1144
- 16,
1145
- 2,
1146
- "CONDITIONING"
1147
- ],
1148
- [
1149
- 27,
1150
- 6,
1151
- 0,
1152
- 16,
1153
- 3,
1154
- "CONDITIONING"
1155
- ],
1156
- [
1157
- 28,
1158
- 4,
1159
- 0,
1160
- 16,
1161
- 4,
1162
- "IMAGE"
1163
- ],
1164
- [
1165
- 29,
1166
- 16,
1167
- 0,
1168
- 17,
1169
- 0,
1170
- "LATENT"
1171
- ],
1172
- [
1173
- 30,
1174
- 3,
1175
- 0,
1176
- 17,
1177
- 1,
1178
- "VAE"
1179
- ],
1180
- [
1181
- 31,
1182
- 17,
1183
- 0,
1184
- 18,
1185
- 0,
1186
- "IMAGE"
1187
- ],
1188
- [
1189
- 32,
1190
- 1,
1191
- 0,
1192
- 19,
1193
- 0,
1194
- "MODEL"
1195
- ],
1196
- [
1197
- 33,
1198
- 5,
1199
- 0,
1200
- 19,
1201
- 1,
1202
- "CONDITIONING"
1203
- ],
1204
- [
1205
- 34,
1206
- 6,
1207
- 0,
1208
- 19,
1209
- 2,
1210
- "CONDITIONING"
1211
- ],
1212
- [
1213
- 35,
1214
- 7,
1215
- 0,
1216
- 19,
1217
- 3,
1218
- "LATENT"
1219
- ],
1220
- [
1221
- 36,
1222
- 19,
1223
- 0,
1224
- 20,
1225
- 0,
1226
- "LATENT"
1227
- ],
1228
- [
1229
- 37,
1230
- 3,
1231
- 0,
1232
- 20,
1233
- 1,
1234
- "VAE"
1235
- ],
1236
- [
1237
- 38,
1238
- 20,
1239
- 0,
1240
- 21,
1241
- 0,
1242
- "IMAGE"
1243
- ]
1244
- ],
1245
- "groups": [],
1246
- "config": {},
1247
- "extra": {},
1248
- "version": 0.4
1249
  }
 
1
+ {
2
+ "last_node_id": 22,
3
+ "last_link_id": 38,
4
+ "nodes": [
5
+ {
6
+ "id": 1,
7
+ "type": "UNETLoader",
8
+ "pos": [
9
+ 0,
10
+ 0
11
+ ],
12
+ "size": [
13
+ 320,
14
+ 130
15
+ ],
16
+ "flags": {},
17
+ "order": 0,
18
+ "mode": 0,
19
+ "inputs": [],
20
+ "outputs": [
21
+ {
22
+ "name": "MODEL",
23
+ "type": "MODEL",
24
+ "links": [
25
+ 3,
26
+ 14,
27
+ 24,
28
+ 32
29
+ ],
30
+ "slot_index": 0
31
+ }
32
+ ],
33
+ "properties": {
34
+ "Node name for S&R": "UNETLoader"
35
+ },
36
+ "widgets_values": [
37
+ "anima-base-v1.0.safetensors",
38
+ "default"
39
+ ]
40
+ },
41
+ {
42
+ "id": 2,
43
+ "type": "CLIPLoader",
44
+ "pos": [
45
+ 0,
46
+ 160
47
+ ],
48
+ "size": [
49
+ 320,
50
+ 130
51
+ ],
52
+ "flags": {},
53
+ "order": 1,
54
+ "mode": 0,
55
+ "inputs": [],
56
+ "outputs": [
57
+ {
58
+ "name": "CLIP",
59
+ "type": "CLIP",
60
+ "links": [
61
+ 1,
62
+ 2,
63
+ 4
64
+ ],
65
+ "slot_index": 0
66
+ }
67
+ ],
68
+ "properties": {
69
+ "Node name for S&R": "CLIPLoader"
70
+ },
71
+ "widgets_values": [
72
+ "qwen_3_06b_base.safetensors",
73
+ "stable_diffusion",
74
+ "default"
75
+ ]
76
+ },
77
+ {
78
+ "id": 3,
79
+ "type": "VAELoader",
80
+ "pos": [
81
+ 0,
82
+ 320
83
+ ],
84
+ "size": [
85
+ 320,
86
+ 130
87
+ ],
88
+ "flags": {},
89
+ "order": 2,
90
+ "mode": 0,
91
+ "inputs": [],
92
+ "outputs": [
93
+ {
94
+ "name": "VAE",
95
+ "type": "VAE",
96
+ "links": [
97
+ 5,
98
+ 12,
99
+ 15,
100
+ 22,
101
+ 25,
102
+ 30,
103
+ 37
104
+ ],
105
+ "slot_index": 0
106
+ }
107
+ ],
108
+ "properties": {
109
+ "Node name for S&R": "VAELoader"
110
+ },
111
+ "widgets_values": [
112
+ "qwen_image_vae.safetensors"
113
+ ]
114
+ },
115
+ {
116
+ "id": 4,
117
+ "type": "LoadImage",
118
+ "pos": [
119
+ 0,
120
+ 460
121
+ ],
122
+ "size": [
123
+ 320,
124
+ 130
125
+ ],
126
+ "flags": {},
127
+ "order": 3,
128
+ "mode": 0,
129
+ "inputs": [],
130
+ "outputs": [
131
+ {
132
+ "name": "IMAGE",
133
+ "type": "IMAGE",
134
+ "links": [
135
+ 6,
136
+ 16,
137
+ 28
138
+ ],
139
+ "slot_index": 0
140
+ },
141
+ {
142
+ "name": "MASK",
143
+ "type": "MASK",
144
+ "links": [],
145
+ "slot_index": 1
146
+ }
147
+ ],
148
+ "properties": {
149
+ "Node name for S&R": "LoadImage"
150
+ },
151
+ "widgets_values": [
152
+ "reference.png",
153
+ "image"
154
+ ]
155
+ },
156
+ {
157
+ "id": 5,
158
+ "type": "CLIPTextEncode",
159
+ "pos": [
160
+ 360,
161
+ 0
162
+ ],
163
+ "size": [
164
+ 420,
165
+ 260
166
+ ],
167
+ "flags": {},
168
+ "order": 4,
169
+ "mode": 0,
170
+ "inputs": [
171
+ {
172
+ "name": "clip",
173
+ "type": "CLIP",
174
+ "link": 1
175
+ }
176
+ ],
177
+ "outputs": [
178
+ {
179
+ "name": "CONDITIONING",
180
+ "type": "CONDITIONING",
181
+ "links": [
182
+ 8,
183
+ 18,
184
+ 26,
185
+ 33
186
+ ],
187
+ "slot_index": 0
188
+ }
189
+ ],
190
+ "properties": {
191
+ "Node name for S&R": "CLIPTextEncode"
192
+ },
193
+ "widgets_values": [
194
+ "masterpiece, best quality, score_7, safe, 1girl, solo, full body, standing, looking at viewer, smile, park, day"
195
+ ],
196
+ "title": "positive (scene only)"
197
+ },
198
+ {
199
+ "id": 6,
200
+ "type": "CLIPTextEncode",
201
+ "pos": [
202
+ 360,
203
+ 300
204
+ ],
205
+ "size": [
206
+ 420,
207
+ 260
208
+ ],
209
+ "flags": {},
210
+ "order": 5,
211
+ "mode": 0,
212
+ "inputs": [
213
+ {
214
+ "name": "clip",
215
+ "type": "CLIP",
216
+ "link": 2
217
+ }
218
+ ],
219
+ "outputs": [
220
+ {
221
+ "name": "CONDITIONING",
222
+ "type": "CONDITIONING",
223
+ "links": [
224
+ 9,
225
+ 19,
226
+ 27,
227
+ 34
228
+ ],
229
+ "slot_index": 0
230
+ }
231
+ ],
232
+ "properties": {
233
+ "Node name for S&R": "CLIPTextEncode"
234
+ },
235
+ "widgets_values": [
236
+ "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
237
+ ],
238
+ "title": "negative"
239
+ },
240
+ {
241
+ "id": 7,
242
+ "type": "EmptyLatentImage",
243
+ "pos": [
244
+ 360,
245
+ 600
246
+ ],
247
+ "size": [
248
+ 320,
249
+ 130
250
+ ],
251
+ "flags": {},
252
+ "order": 6,
253
+ "mode": 0,
254
+ "inputs": [],
255
+ "outputs": [
256
+ {
257
+ "name": "LATENT",
258
+ "type": "LATENT",
259
+ "links": [
260
+ 10,
261
+ 20,
262
+ 35
263
+ ],
264
+ "slot_index": 0
265
+ }
266
+ ],
267
+ "properties": {
268
+ "Node name for S&R": "EmptyLatentImage"
269
+ },
270
+ "widgets_values": [
271
+ 832,
272
+ 1216,
273
+ 1
274
+ ]
275
+ },
276
+ {
277
+ "id": 8,
278
+ "type": "SnapRef",
279
+ "pos": [
280
+ 820,
281
+ 0
282
+ ],
283
+ "size": [
284
+ 320,
285
+ 130
286
+ ],
287
+ "flags": {},
288
+ "order": 7,
289
+ "mode": 0,
290
+ "inputs": [
291
+ {
292
+ "name": "model",
293
+ "type": "MODEL",
294
+ "link": 3
295
+ },
296
+ {
297
+ "name": "clip",
298
+ "type": "CLIP",
299
+ "link": 4
300
+ },
301
+ {
302
+ "name": "vae",
303
+ "type": "VAE",
304
+ "link": 5
305
+ },
306
+ {
307
+ "name": "image",
308
+ "type": "IMAGE",
309
+ "link": 6
310
+ }
311
+ ],
312
+ "outputs": [
313
+ {
314
+ "name": "MODEL",
315
+ "type": "MODEL",
316
+ "links": [
317
+ 7
318
+ ],
319
+ "slot_index": 0
320
+ }
321
+ ],
322
+ "properties": {
323
+ "Node name for S&R": "SnapRef"
324
+ },
325
+ "widgets_values": [
326
+ "snapref_v1a.safetensors",
327
+ "cs",
328
+ false,
329
+ 1.0,
330
+ 0.0,
331
+ "",
332
+ false,
333
+ 4.5,
334
+ "apg",
335
+ 1.0
336
+ ],
337
+ "title": "SnapRef v1a"
338
+ },
339
+ {
340
+ "id": 9,
341
+ "type": "KSampler",
342
+ "pos": [
343
+ 1160,
344
+ 0
345
+ ],
346
+ "size": [
347
+ 320,
348
+ 130
349
+ ],
350
+ "flags": {},
351
+ "order": 8,
352
+ "mode": 0,
353
+ "inputs": [
354
+ {
355
+ "name": "model",
356
+ "type": "MODEL",
357
+ "link": 7
358
+ },
359
+ {
360
+ "name": "positive",
361
+ "type": "CONDITIONING",
362
+ "link": 8
363
+ },
364
+ {
365
+ "name": "negative",
366
+ "type": "CONDITIONING",
367
+ "link": 9
368
+ },
369
+ {
370
+ "name": "latent_image",
371
+ "type": "LATENT",
372
+ "link": 10
373
+ }
374
+ ],
375
+ "outputs": [
376
+ {
377
+ "name": "LATENT",
378
+ "type": "LATENT",
379
+ "links": [
380
+ 11
381
+ ],
382
+ "slot_index": 0
383
+ }
384
+ ],
385
+ "properties": {
386
+ "Node name for S&R": "KSampler"
387
+ },
388
+ "widgets_values": [
389
+ 20261029,
390
+ "fixed",
391
+ 28,
392
+ 4.5,
393
+ "euler",
394
+ "simple",
395
+ 1.0
396
+ ]
397
+ },
398
+ {
399
+ "id": 10,
400
+ "type": "VAEDecode",
401
+ "pos": [
402
+ 1500,
403
+ 0
404
+ ],
405
+ "size": [
406
+ 320,
407
+ 130
408
+ ],
409
+ "flags": {},
410
+ "order": 9,
411
+ "mode": 0,
412
+ "inputs": [
413
+ {
414
+ "name": "samples",
415
+ "type": "LATENT",
416
+ "link": 11
417
+ },
418
+ {
419
+ "name": "vae",
420
+ "type": "VAE",
421
+ "link": 12
422
+ }
423
+ ],
424
+ "outputs": [
425
+ {
426
+ "name": "IMAGE",
427
+ "type": "IMAGE",
428
+ "links": [
429
+ 13
430
+ ],
431
+ "slot_index": 0
432
+ }
433
+ ],
434
+ "properties": {
435
+ "Node name for S&R": "VAEDecode"
436
+ },
437
+ "widgets_values": []
438
+ },
439
+ {
440
+ "id": 11,
441
+ "type": "SaveImage",
442
+ "pos": [
443
+ 1720,
444
+ 0
445
+ ],
446
+ "size": [
447
+ 320,
448
+ 130
449
+ ],
450
+ "flags": {},
451
+ "order": 10,
452
+ "mode": 0,
453
+ "inputs": [
454
+ {
455
+ "name": "images",
456
+ "type": "IMAGE",
457
+ "link": 13
458
+ }
459
+ ],
460
+ "outputs": [],
461
+ "properties": {
462
+ "Node name for S&R": "SaveImage"
463
+ },
464
+ "widgets_values": [
465
+ "compare/snapref"
466
+ ]
467
+ },
468
+ {
469
+ "id": 12,
470
+ "type": "AnimaRefAdapter",
471
+ "pos": [
472
+ 820,
473
+ 300
474
+ ],
475
+ "size": [
476
+ 320,
477
+ 130
478
+ ],
479
+ "flags": {},
480
+ "order": 11,
481
+ "mode": 0,
482
+ "inputs": [
483
+ {
484
+ "name": "model",
485
+ "type": "MODEL",
486
+ "link": 14
487
+ },
488
+ {
489
+ "name": "vae",
490
+ "type": "VAE",
491
+ "link": 15
492
+ },
493
+ {
494
+ "name": "image",
495
+ "type": "IMAGE",
496
+ "link": 16
497
+ }
498
+ ],
499
+ "outputs": [
500
+ {
501
+ "name": "MODEL",
502
+ "type": "MODEL",
503
+ "links": [
504
+ 17
505
+ ],
506
+ "slot_index": 0
507
+ }
508
+ ],
509
+ "properties": {
510
+ "Node name for S&R": "AnimaRefAdapter"
511
+ },
512
+ "widgets_values": [
513
+ "anima_ref_adapter_v2_r64.safetensors",
514
+ 4.5,
515
+ "apg",
516
+ 1.0,
517
+ 1.0,
518
+ 1.0
519
+ ],
520
+ "title": "ElectronGirl v2"
521
+ },
522
+ {
523
+ "id": 13,
524
+ "type": "KSampler",
525
+ "pos": [
526
+ 1160,
527
+ 300
528
+ ],
529
+ "size": [
530
+ 320,
531
+ 130
532
+ ],
533
+ "flags": {},
534
+ "order": 12,
535
+ "mode": 0,
536
+ "inputs": [
537
+ {
538
+ "name": "model",
539
+ "type": "MODEL",
540
+ "link": 17
541
+ },
542
+ {
543
+ "name": "positive",
544
+ "type": "CONDITIONING",
545
+ "link": 18
546
+ },
547
+ {
548
+ "name": "negative",
549
+ "type": "CONDITIONING",
550
+ "link": 19
551
+ },
552
+ {
553
+ "name": "latent_image",
554
+ "type": "LATENT",
555
+ "link": 20
556
+ }
557
+ ],
558
+ "outputs": [
559
+ {
560
+ "name": "LATENT",
561
+ "type": "LATENT",
562
+ "links": [
563
+ 21
564
+ ],
565
+ "slot_index": 0
566
+ }
567
+ ],
568
+ "properties": {
569
+ "Node name for S&R": "KSampler"
570
+ },
571
+ "widgets_values": [
572
+ 20261029,
573
+ "fixed",
574
+ 28,
575
+ 4.5,
576
+ "euler",
577
+ "simple",
578
+ 1.0
579
+ ]
580
+ },
581
+ {
582
+ "id": 14,
583
+ "type": "VAEDecode",
584
+ "pos": [
585
+ 1500,
586
+ 300
587
+ ],
588
+ "size": [
589
+ 320,
590
+ 130
591
+ ],
592
+ "flags": {},
593
+ "order": 13,
594
+ "mode": 0,
595
+ "inputs": [
596
+ {
597
+ "name": "samples",
598
+ "type": "LATENT",
599
+ "link": 21
600
+ },
601
+ {
602
+ "name": "vae",
603
+ "type": "VAE",
604
+ "link": 22
605
+ }
606
+ ],
607
+ "outputs": [
608
+ {
609
+ "name": "IMAGE",
610
+ "type": "IMAGE",
611
+ "links": [
612
+ 23
613
+ ],
614
+ "slot_index": 0
615
+ }
616
+ ],
617
+ "properties": {
618
+ "Node name for S&R": "VAEDecode"
619
+ },
620
+ "widgets_values": []
621
+ },
622
+ {
623
+ "id": 15,
624
+ "type": "SaveImage",
625
+ "pos": [
626
+ 1720,
627
+ 300
628
+ ],
629
+ "size": [
630
+ 320,
631
+ 130
632
+ ],
633
+ "flags": {},
634
+ "order": 14,
635
+ "mode": 0,
636
+ "inputs": [
637
+ {
638
+ "name": "images",
639
+ "type": "IMAGE",
640
+ "link": 23
641
+ }
642
+ ],
643
+ "outputs": [],
644
+ "properties": {
645
+ "Node name for S&R": "SaveImage"
646
+ },
647
+ "widgets_values": [
648
+ "compare/v2"
649
+ ]
650
+ },
651
+ {
652
+ "id": 16,
653
+ "type": "AnimaRoleRefKV",
654
+ "pos": [
655
+ 820,
656
+ 600
657
+ ],
658
+ "size": [
659
+ 320,
660
+ 130
661
+ ],
662
+ "flags": {},
663
+ "order": 15,
664
+ "mode": 0,
665
+ "inputs": [
666
+ {
667
+ "name": "model",
668
+ "type": "MODEL",
669
+ "link": 24
670
+ },
671
+ {
672
+ "name": "vae",
673
+ "type": "VAE",
674
+ "link": 25
675
+ },
676
+ {
677
+ "name": "positive",
678
+ "type": "CONDITIONING",
679
+ "link": 26
680
+ },
681
+ {
682
+ "name": "negative",
683
+ "type": "CONDITIONING",
684
+ "link": 27
685
+ },
686
+ {
687
+ "name": "reference",
688
+ "type": "IMAGE",
689
+ "link": 28
690
+ }
691
+ ],
692
+ "outputs": [
693
+ {
694
+ "name": "LATENT",
695
+ "type": "LATENT",
696
+ "links": [
697
+ 29
698
+ ],
699
+ "slot_index": 0
700
+ }
701
+ ],
702
+ "properties": {
703
+ "Node name for S&R": "AnimaRoleRefKV"
704
+ },
705
+ "widgets_values": [
706
+ "anima-role-ref-kv-v1.0.safetensors",
707
+ 20261029,
708
+ "fixed",
709
+ 832,
710
+ 1216,
711
+ 28,
712
+ 4.5
713
+ ],
714
+ "title": "AnticPan Role-Ref-KV (own sampler)"
715
+ },
716
+ {
717
+ "id": 17,
718
+ "type": "VAEDecode",
719
+ "pos": [
720
+ 1160,
721
+ 600
722
+ ],
723
+ "size": [
724
+ 320,
725
+ 130
726
+ ],
727
+ "flags": {},
728
+ "order": 16,
729
+ "mode": 0,
730
+ "inputs": [
731
+ {
732
+ "name": "samples",
733
+ "type": "LATENT",
734
+ "link": 29
735
+ },
736
+ {
737
+ "name": "vae",
738
+ "type": "VAE",
739
+ "link": 30
740
+ }
741
+ ],
742
+ "outputs": [
743
+ {
744
+ "name": "IMAGE",
745
+ "type": "IMAGE",
746
+ "links": [
747
+ 31
748
+ ],
749
+ "slot_index": 0
750
+ }
751
+ ],
752
+ "properties": {
753
+ "Node name for S&R": "VAEDecode"
754
+ },
755
+ "widgets_values": []
756
+ },
757
+ {
758
+ "id": 18,
759
+ "type": "SaveImage",
760
+ "pos": [
761
+ 1380,
762
+ 600
763
+ ],
764
+ "size": [
765
+ 320,
766
+ 130
767
+ ],
768
+ "flags": {},
769
+ "order": 17,
770
+ "mode": 0,
771
+ "inputs": [
772
+ {
773
+ "name": "images",
774
+ "type": "IMAGE",
775
+ "link": 31
776
+ }
777
+ ],
778
+ "outputs": [],
779
+ "properties": {
780
+ "Node name for S&R": "SaveImage"
781
+ },
782
+ "widgets_values": [
783
+ "compare/role_ref_kv"
784
+ ]
785
+ },
786
+ {
787
+ "id": 19,
788
+ "type": "KSampler",
789
+ "pos": [
790
+ 1160,
791
+ 900
792
+ ],
793
+ "size": [
794
+ 320,
795
+ 130
796
+ ],
797
+ "flags": {},
798
+ "order": 18,
799
+ "mode": 0,
800
+ "inputs": [
801
+ {
802
+ "name": "model",
803
+ "type": "MODEL",
804
+ "link": 32
805
+ },
806
+ {
807
+ "name": "positive",
808
+ "type": "CONDITIONING",
809
+ "link": 33
810
+ },
811
+ {
812
+ "name": "negative",
813
+ "type": "CONDITIONING",
814
+ "link": 34
815
+ },
816
+ {
817
+ "name": "latent_image",
818
+ "type": "LATENT",
819
+ "link": 35
820
+ }
821
+ ],
822
+ "outputs": [
823
+ {
824
+ "name": "LATENT",
825
+ "type": "LATENT",
826
+ "links": [
827
+ 36
828
+ ],
829
+ "slot_index": 0
830
+ }
831
+ ],
832
+ "properties": {
833
+ "Node name for S&R": "KSampler"
834
+ },
835
+ "widgets_values": [
836
+ 20261029,
837
+ "fixed",
838
+ 28,
839
+ 4.5,
840
+ "euler",
841
+ "simple",
842
+ 1.0
843
+ ]
844
+ },
845
+ {
846
+ "id": 20,
847
+ "type": "VAEDecode",
848
+ "pos": [
849
+ 1500,
850
+ 900
851
+ ],
852
+ "size": [
853
+ 320,
854
+ 130
855
+ ],
856
+ "flags": {},
857
+ "order": 19,
858
+ "mode": 0,
859
+ "inputs": [
860
+ {
861
+ "name": "samples",
862
+ "type": "LATENT",
863
+ "link": 36
864
+ },
865
+ {
866
+ "name": "vae",
867
+ "type": "VAE",
868
+ "link": 37
869
+ }
870
+ ],
871
+ "outputs": [
872
+ {
873
+ "name": "IMAGE",
874
+ "type": "IMAGE",
875
+ "links": [
876
+ 38
877
+ ],
878
+ "slot_index": 0
879
+ }
880
+ ],
881
+ "properties": {
882
+ "Node name for S&R": "VAEDecode"
883
+ },
884
+ "widgets_values": []
885
+ },
886
+ {
887
+ "id": 21,
888
+ "type": "SaveImage",
889
+ "pos": [
890
+ 1720,
891
+ 900
892
+ ],
893
+ "size": [
894
+ 320,
895
+ 130
896
+ ],
897
+ "flags": {},
898
+ "order": 20,
899
+ "mode": 0,
900
+ "inputs": [
901
+ {
902
+ "name": "images",
903
+ "type": "IMAGE",
904
+ "link": 38
905
+ }
906
+ ],
907
+ "outputs": [],
908
+ "properties": {
909
+ "Node name for S&R": "SaveImage"
910
+ },
911
+ "widgets_values": [
912
+ "compare/base"
913
+ ]
914
+ },
915
+ {
916
+ "id": 22,
917
+ "type": "Note",
918
+ "pos": [
919
+ 0,
920
+ 760
921
+ ],
922
+ "size": [
923
+ 420,
924
+ 260
925
+ ],
926
+ "flags": {},
927
+ "order": 21,
928
+ "mode": 0,
929
+ "inputs": [],
930
+ "outputs": [],
931
+ "properties": {
932
+ "Node name for S&R": "Note"
933
+ },
934
+ "widgets_values": [
935
+ "Same reference, prompt, seed and size for every method: SnapRef | ElectronGirl v2 | Role-Ref-KV | base without reference. Euler/simple 28 steps cfg 4.5 everywhere (Role-Ref-KV: its own Euler loop). Change the seed on each sampler node together."
936
+ ]
937
+ }
938
+ ],
939
+ "links": [
940
+ [
941
+ 1,
942
+ 2,
943
+ 0,
944
+ 5,
945
+ 0,
946
+ "CLIP"
947
+ ],
948
+ [
949
+ 2,
950
+ 2,
951
+ 0,
952
+ 6,
953
+ 0,
954
+ "CLIP"
955
+ ],
956
+ [
957
+ 3,
958
+ 1,
959
+ 0,
960
+ 8,
961
+ 0,
962
+ "MODEL"
963
+ ],
964
+ [
965
+ 4,
966
+ 2,
967
+ 0,
968
+ 8,
969
+ 1,
970
+ "CLIP"
971
+ ],
972
+ [
973
+ 5,
974
+ 3,
975
+ 0,
976
+ 8,
977
+ 2,
978
+ "VAE"
979
+ ],
980
+ [
981
+ 6,
982
+ 4,
983
+ 0,
984
+ 8,
985
+ 3,
986
+ "IMAGE"
987
+ ],
988
+ [
989
+ 7,
990
+ 8,
991
+ 0,
992
+ 9,
993
+ 0,
994
+ "MODEL"
995
+ ],
996
+ [
997
+ 8,
998
+ 5,
999
+ 0,
1000
+ 9,
1001
+ 1,
1002
+ "CONDITIONING"
1003
+ ],
1004
+ [
1005
+ 9,
1006
+ 6,
1007
+ 0,
1008
+ 9,
1009
+ 2,
1010
+ "CONDITIONING"
1011
+ ],
1012
+ [
1013
+ 10,
1014
+ 7,
1015
+ 0,
1016
+ 9,
1017
+ 3,
1018
+ "LATENT"
1019
+ ],
1020
+ [
1021
+ 11,
1022
+ 9,
1023
+ 0,
1024
+ 10,
1025
+ 0,
1026
+ "LATENT"
1027
+ ],
1028
+ [
1029
+ 12,
1030
+ 3,
1031
+ 0,
1032
+ 10,
1033
+ 1,
1034
+ "VAE"
1035
+ ],
1036
+ [
1037
+ 13,
1038
+ 10,
1039
+ 0,
1040
+ 11,
1041
+ 0,
1042
+ "IMAGE"
1043
+ ],
1044
+ [
1045
+ 14,
1046
+ 1,
1047
+ 0,
1048
+ 12,
1049
+ 0,
1050
+ "MODEL"
1051
+ ],
1052
+ [
1053
+ 15,
1054
+ 3,
1055
+ 0,
1056
+ 12,
1057
+ 1,
1058
+ "VAE"
1059
+ ],
1060
+ [
1061
+ 16,
1062
+ 4,
1063
+ 0,
1064
+ 12,
1065
+ 2,
1066
+ "IMAGE"
1067
+ ],
1068
+ [
1069
+ 17,
1070
+ 12,
1071
+ 0,
1072
+ 13,
1073
+ 0,
1074
+ "MODEL"
1075
+ ],
1076
+ [
1077
+ 18,
1078
+ 5,
1079
+ 0,
1080
+ 13,
1081
+ 1,
1082
+ "CONDITIONING"
1083
+ ],
1084
+ [
1085
+ 19,
1086
+ 6,
1087
+ 0,
1088
+ 13,
1089
+ 2,
1090
+ "CONDITIONING"
1091
+ ],
1092
+ [
1093
+ 20,
1094
+ 7,
1095
+ 0,
1096
+ 13,
1097
+ 3,
1098
+ "LATENT"
1099
+ ],
1100
+ [
1101
+ 21,
1102
+ 13,
1103
+ 0,
1104
+ 14,
1105
+ 0,
1106
+ "LATENT"
1107
+ ],
1108
+ [
1109
+ 22,
1110
+ 3,
1111
+ 0,
1112
+ 14,
1113
+ 1,
1114
+ "VAE"
1115
+ ],
1116
+ [
1117
+ 23,
1118
+ 14,
1119
+ 0,
1120
+ 15,
1121
+ 0,
1122
+ "IMAGE"
1123
+ ],
1124
+ [
1125
+ 24,
1126
+ 1,
1127
+ 0,
1128
+ 16,
1129
+ 0,
1130
+ "MODEL"
1131
+ ],
1132
+ [
1133
+ 25,
1134
+ 3,
1135
+ 0,
1136
+ 16,
1137
+ 1,
1138
+ "VAE"
1139
+ ],
1140
+ [
1141
+ 26,
1142
+ 5,
1143
+ 0,
1144
+ 16,
1145
+ 2,
1146
+ "CONDITIONING"
1147
+ ],
1148
+ [
1149
+ 27,
1150
+ 6,
1151
+ 0,
1152
+ 16,
1153
+ 3,
1154
+ "CONDITIONING"
1155
+ ],
1156
+ [
1157
+ 28,
1158
+ 4,
1159
+ 0,
1160
+ 16,
1161
+ 4,
1162
+ "IMAGE"
1163
+ ],
1164
+ [
1165
+ 29,
1166
+ 16,
1167
+ 0,
1168
+ 17,
1169
+ 0,
1170
+ "LATENT"
1171
+ ],
1172
+ [
1173
+ 30,
1174
+ 3,
1175
+ 0,
1176
+ 17,
1177
+ 1,
1178
+ "VAE"
1179
+ ],
1180
+ [
1181
+ 31,
1182
+ 17,
1183
+ 0,
1184
+ 18,
1185
+ 0,
1186
+ "IMAGE"
1187
+ ],
1188
+ [
1189
+ 32,
1190
+ 1,
1191
+ 0,
1192
+ 19,
1193
+ 0,
1194
+ "MODEL"
1195
+ ],
1196
+ [
1197
+ 33,
1198
+ 5,
1199
+ 0,
1200
+ 19,
1201
+ 1,
1202
+ "CONDITIONING"
1203
+ ],
1204
+ [
1205
+ 34,
1206
+ 6,
1207
+ 0,
1208
+ 19,
1209
+ 2,
1210
+ "CONDITIONING"
1211
+ ],
1212
+ [
1213
+ 35,
1214
+ 7,
1215
+ 0,
1216
+ 19,
1217
+ 3,
1218
+ "LATENT"
1219
+ ],
1220
+ [
1221
+ 36,
1222
+ 19,
1223
+ 0,
1224
+ 20,
1225
+ 0,
1226
+ "LATENT"
1227
+ ],
1228
+ [
1229
+ 37,
1230
+ 3,
1231
+ 0,
1232
+ 20,
1233
+ 1,
1234
+ "VAE"
1235
+ ],
1236
+ [
1237
+ 38,
1238
+ 20,
1239
+ 0,
1240
+ 21,
1241
+ 0,
1242
+ "IMAGE"
1243
+ ]
1244
+ ],
1245
+ "groups": [],
1246
+ "config": {},
1247
+ "extra": {},
1248
+ "version": 0.4
1249
  }
workflows/{anima_ref_kv_v1.json → snapref_v1a.json} RENAMED
@@ -1,584 +1,584 @@
1
- {
2
- "last_node_id": 12,
3
- "last_link_id": 13,
4
- "nodes": [
5
- {
6
- "id": 1,
7
- "type": "UNETLoader",
8
- "pos": [
9
- 0,
10
- 0
11
- ],
12
- "size": [
13
- 320,
14
- 130
15
- ],
16
- "flags": {},
17
- "order": 0,
18
- "mode": 0,
19
- "inputs": [],
20
- "outputs": [
21
- {
22
- "name": "MODEL",
23
- "type": "MODEL",
24
- "links": [
25
- 3
26
- ],
27
- "slot_index": 0
28
- }
29
- ],
30
- "properties": {
31
- "Node name for S&R": "UNETLoader"
32
- },
33
- "widgets_values": [
34
- "anima-base-v1.0.safetensors",
35
- "default"
36
- ]
37
- },
38
- {
39
- "id": 2,
40
- "type": "CLIPLoader",
41
- "pos": [
42
- 0,
43
- 160
44
- ],
45
- "size": [
46
- 320,
47
- 130
48
- ],
49
- "flags": {},
50
- "order": 1,
51
- "mode": 0,
52
- "inputs": [],
53
- "outputs": [
54
- {
55
- "name": "CLIP",
56
- "type": "CLIP",
57
- "links": [
58
- 1,
59
- 2,
60
- 4
61
- ],
62
- "slot_index": 0
63
- }
64
- ],
65
- "properties": {
66
- "Node name for S&R": "CLIPLoader"
67
- },
68
- "widgets_values": [
69
- "qwen_3_06b_base.safetensors",
70
- "stable_diffusion",
71
- "default"
72
- ]
73
- },
74
- {
75
- "id": 3,
76
- "type": "VAELoader",
77
- "pos": [
78
- 0,
79
- 320
80
- ],
81
- "size": [
82
- 320,
83
- 130
84
- ],
85
- "flags": {},
86
- "order": 2,
87
- "mode": 0,
88
- "inputs": [],
89
- "outputs": [
90
- {
91
- "name": "VAE",
92
- "type": "VAE",
93
- "links": [
94
- 5,
95
- 12
96
- ],
97
- "slot_index": 0
98
- }
99
- ],
100
- "properties": {
101
- "Node name for S&R": "VAELoader"
102
- },
103
- "widgets_values": [
104
- "qwen_image_vae.safetensors"
105
- ]
106
- },
107
- {
108
- "id": 4,
109
- "type": "LoadImage",
110
- "pos": [
111
- 0,
112
- 460
113
- ],
114
- "size": [
115
- 320,
116
- 130
117
- ],
118
- "flags": {},
119
- "order": 3,
120
- "mode": 0,
121
- "inputs": [],
122
- "outputs": [
123
- {
124
- "name": "IMAGE",
125
- "type": "IMAGE",
126
- "links": [
127
- 6
128
- ],
129
- "slot_index": 0
130
- },
131
- {
132
- "name": "MASK",
133
- "type": "MASK",
134
- "links": [],
135
- "slot_index": 1
136
- }
137
- ],
138
- "properties": {
139
- "Node name for S&R": "LoadImage"
140
- },
141
- "widgets_values": [
142
- "reference.png",
143
- "image"
144
- ]
145
- },
146
- {
147
- "id": 5,
148
- "type": "CLIPTextEncode",
149
- "pos": [
150
- 360,
151
- 0
152
- ],
153
- "size": [
154
- 420,
155
- 260
156
- ],
157
- "flags": {},
158
- "order": 4,
159
- "mode": 0,
160
- "inputs": [
161
- {
162
- "name": "clip",
163
- "type": "CLIP",
164
- "link": 1
165
- }
166
- ],
167
- "outputs": [
168
- {
169
- "name": "CONDITIONING",
170
- "type": "CONDITIONING",
171
- "links": [
172
- 8
173
- ],
174
- "slot_index": 0
175
- }
176
- ],
177
- "properties": {
178
- "Node name for S&R": "CLIPTextEncode"
179
- },
180
- "widgets_values": [
181
- "masterpiece, best quality, score_7, safe, 1girl, solo, full body, standing, looking at viewer, smile, park, day"
182
- ],
183
- "title": "positive (scene only)"
184
- },
185
- {
186
- "id": 6,
187
- "type": "CLIPTextEncode",
188
- "pos": [
189
- 360,
190
- 300
191
- ],
192
- "size": [
193
- 420,
194
- 260
195
- ],
196
- "flags": {},
197
- "order": 5,
198
- "mode": 0,
199
- "inputs": [
200
- {
201
- "name": "clip",
202
- "type": "CLIP",
203
- "link": 2
204
- }
205
- ],
206
- "outputs": [
207
- {
208
- "name": "CONDITIONING",
209
- "type": "CONDITIONING",
210
- "links": [
211
- 9
212
- ],
213
- "slot_index": 0
214
- }
215
- ],
216
- "properties": {
217
- "Node name for S&R": "CLIPTextEncode"
218
- },
219
- "widgets_values": [
220
- "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
221
- ],
222
- "title": "negative"
223
- },
224
- {
225
- "id": 7,
226
- "type": "EmptyLatentImage",
227
- "pos": [
228
- 360,
229
- 600
230
- ],
231
- "size": [
232
- 320,
233
- 130
234
- ],
235
- "flags": {},
236
- "order": 6,
237
- "mode": 0,
238
- "inputs": [],
239
- "outputs": [
240
- {
241
- "name": "LATENT",
242
- "type": "LATENT",
243
- "links": [
244
- 10
245
- ],
246
- "slot_index": 0
247
- }
248
- ],
249
- "properties": {
250
- "Node name for S&R": "EmptyLatentImage"
251
- },
252
- "widgets_values": [
253
- 832,
254
- 1216,
255
- 1
256
- ]
257
- },
258
- {
259
- "id": 8,
260
- "type": "AnimaRefKV",
261
- "pos": [
262
- 820,
263
- 0
264
- ],
265
- "size": [
266
- 320,
267
- 130
268
- ],
269
- "flags": {},
270
- "order": 7,
271
- "mode": 0,
272
- "inputs": [
273
- {
274
- "name": "model",
275
- "type": "MODEL",
276
- "link": 3
277
- },
278
- {
279
- "name": "clip",
280
- "type": "CLIP",
281
- "link": 4
282
- },
283
- {
284
- "name": "vae",
285
- "type": "VAE",
286
- "link": 5
287
- },
288
- {
289
- "name": "image",
290
- "type": "IMAGE",
291
- "link": 6
292
- }
293
- ],
294
- "outputs": [
295
- {
296
- "name": "MODEL",
297
- "type": "MODEL",
298
- "links": [
299
- 7
300
- ],
301
- "slot_index": 0
302
- }
303
- ],
304
- "properties": {
305
- "Node name for S&R": "AnimaRefKV"
306
- },
307
- "widgets_values": [
308
- "anima_ref_kv_v1.safetensors",
309
- "cs",
310
- false,
311
- 1.0,
312
- 0.0,
313
- "",
314
- false,
315
- 4.5,
316
- "apg",
317
- 1.0
318
- ],
319
- "title": "Anima Ref KV"
320
- },
321
- {
322
- "id": 9,
323
- "type": "KSampler",
324
- "pos": [
325
- 820,
326
- 260
327
- ],
328
- "size": [
329
- 320,
330
- 130
331
- ],
332
- "flags": {},
333
- "order": 8,
334
- "mode": 0,
335
- "inputs": [
336
- {
337
- "name": "model",
338
- "type": "MODEL",
339
- "link": 7
340
- },
341
- {
342
- "name": "positive",
343
- "type": "CONDITIONING",
344
- "link": 8
345
- },
346
- {
347
- "name": "negative",
348
- "type": "CONDITIONING",
349
- "link": 9
350
- },
351
- {
352
- "name": "latent_image",
353
- "type": "LATENT",
354
- "link": 10
355
- }
356
- ],
357
- "outputs": [
358
- {
359
- "name": "LATENT",
360
- "type": "LATENT",
361
- "links": [
362
- 11
363
- ],
364
- "slot_index": 0
365
- }
366
- ],
367
- "properties": {
368
- "Node name for S&R": "KSampler"
369
- },
370
- "widgets_values": [
371
- 20261029,
372
- "fixed",
373
- 28,
374
- 4.5,
375
- "euler",
376
- "simple",
377
- 1.0
378
- ]
379
- },
380
- {
381
- "id": 10,
382
- "type": "VAEDecode",
383
- "pos": [
384
- 1160,
385
- 260
386
- ],
387
- "size": [
388
- 320,
389
- 130
390
- ],
391
- "flags": {},
392
- "order": 9,
393
- "mode": 0,
394
- "inputs": [
395
- {
396
- "name": "samples",
397
- "type": "LATENT",
398
- "link": 11
399
- },
400
- {
401
- "name": "vae",
402
- "type": "VAE",
403
- "link": 12
404
- }
405
- ],
406
- "outputs": [
407
- {
408
- "name": "IMAGE",
409
- "type": "IMAGE",
410
- "links": [
411
- 13
412
- ],
413
- "slot_index": 0
414
- }
415
- ],
416
- "properties": {
417
- "Node name for S&R": "VAEDecode"
418
- },
419
- "widgets_values": []
420
- },
421
- {
422
- "id": 11,
423
- "type": "SaveImage",
424
- "pos": [
425
- 1380,
426
- 260
427
- ],
428
- "size": [
429
- 320,
430
- 130
431
- ],
432
- "flags": {},
433
- "order": 10,
434
- "mode": 0,
435
- "inputs": [
436
- {
437
- "name": "images",
438
- "type": "IMAGE",
439
- "link": 13
440
- }
441
- ],
442
- "outputs": [],
443
- "properties": {
444
- "Node name for S&R": "SaveImage"
445
- },
446
- "widgets_values": [
447
- "anima_ref_kv/image"
448
- ]
449
- },
450
- {
451
- "id": 12,
452
- "type": "Note",
453
- "pos": [
454
- 820,
455
- 620
456
- ],
457
- "size": [
458
- 420,
459
- 260
460
- ],
461
- "flags": {},
462
- "order": 11,
463
- "mode": 0,
464
- "inputs": [],
465
- "outputs": [],
466
- "properties": {
467
- "Node name for S&R": "Note"
468
- },
469
- "widgets_values": [
470
- "Anima Ref KV v1: one reference image, pose and scene from the prompt.\n\n- Prompt: quality tags, 1girl/1boy, solo, then the scene. No character name, artist or outfit tags needed.\n- mode cs: character and style from the reference. char: character only; add artist tags to the prompt.\n- strength (log scale): +1 to +2 for more reference detail, negative for less.\n- ref_guidance_on + ref_guidance 6-8: stronger reference at about 1.4x the time; apg keeps colors in check.\n- ref_caption: optional appearance tags of the reference (no name or artist).\n- Any sampler works; euler or er_sde, simple, 28-30 steps, cfg 4.5."
471
- ]
472
- }
473
- ],
474
- "links": [
475
- [
476
- 1,
477
- 2,
478
- 0,
479
- 5,
480
- 0,
481
- "CLIP"
482
- ],
483
- [
484
- 2,
485
- 2,
486
- 0,
487
- 6,
488
- 0,
489
- "CLIP"
490
- ],
491
- [
492
- 3,
493
- 1,
494
- 0,
495
- 8,
496
- 0,
497
- "MODEL"
498
- ],
499
- [
500
- 4,
501
- 2,
502
- 0,
503
- 8,
504
- 1,
505
- "CLIP"
506
- ],
507
- [
508
- 5,
509
- 3,
510
- 0,
511
- 8,
512
- 2,
513
- "VAE"
514
- ],
515
- [
516
- 6,
517
- 4,
518
- 0,
519
- 8,
520
- 3,
521
- "IMAGE"
522
- ],
523
- [
524
- 7,
525
- 8,
526
- 0,
527
- 9,
528
- 0,
529
- "MODEL"
530
- ],
531
- [
532
- 8,
533
- 5,
534
- 0,
535
- 9,
536
- 1,
537
- "CONDITIONING"
538
- ],
539
- [
540
- 9,
541
- 6,
542
- 0,
543
- 9,
544
- 2,
545
- "CONDITIONING"
546
- ],
547
- [
548
- 10,
549
- 7,
550
- 0,
551
- 9,
552
- 3,
553
- "LATENT"
554
- ],
555
- [
556
- 11,
557
- 9,
558
- 0,
559
- 10,
560
- 0,
561
- "LATENT"
562
- ],
563
- [
564
- 12,
565
- 3,
566
- 0,
567
- 10,
568
- 1,
569
- "VAE"
570
- ],
571
- [
572
- 13,
573
- 10,
574
- 0,
575
- 11,
576
- 0,
577
- "IMAGE"
578
- ]
579
- ],
580
- "groups": [],
581
- "config": {},
582
- "extra": {},
583
- "version": 0.4
584
  }
 
1
+ {
2
+ "last_node_id": 12,
3
+ "last_link_id": 13,
4
+ "nodes": [
5
+ {
6
+ "id": 1,
7
+ "type": "UNETLoader",
8
+ "pos": [
9
+ 0,
10
+ 0
11
+ ],
12
+ "size": [
13
+ 320,
14
+ 130
15
+ ],
16
+ "flags": {},
17
+ "order": 0,
18
+ "mode": 0,
19
+ "inputs": [],
20
+ "outputs": [
21
+ {
22
+ "name": "MODEL",
23
+ "type": "MODEL",
24
+ "links": [
25
+ 3
26
+ ],
27
+ "slot_index": 0
28
+ }
29
+ ],
30
+ "properties": {
31
+ "Node name for S&R": "UNETLoader"
32
+ },
33
+ "widgets_values": [
34
+ "anima-base-v1.0.safetensors",
35
+ "default"
36
+ ]
37
+ },
38
+ {
39
+ "id": 2,
40
+ "type": "CLIPLoader",
41
+ "pos": [
42
+ 0,
43
+ 160
44
+ ],
45
+ "size": [
46
+ 320,
47
+ 130
48
+ ],
49
+ "flags": {},
50
+ "order": 1,
51
+ "mode": 0,
52
+ "inputs": [],
53
+ "outputs": [
54
+ {
55
+ "name": "CLIP",
56
+ "type": "CLIP",
57
+ "links": [
58
+ 1,
59
+ 2,
60
+ 4
61
+ ],
62
+ "slot_index": 0
63
+ }
64
+ ],
65
+ "properties": {
66
+ "Node name for S&R": "CLIPLoader"
67
+ },
68
+ "widgets_values": [
69
+ "qwen_3_06b_base.safetensors",
70
+ "stable_diffusion",
71
+ "default"
72
+ ]
73
+ },
74
+ {
75
+ "id": 3,
76
+ "type": "VAELoader",
77
+ "pos": [
78
+ 0,
79
+ 320
80
+ ],
81
+ "size": [
82
+ 320,
83
+ 130
84
+ ],
85
+ "flags": {},
86
+ "order": 2,
87
+ "mode": 0,
88
+ "inputs": [],
89
+ "outputs": [
90
+ {
91
+ "name": "VAE",
92
+ "type": "VAE",
93
+ "links": [
94
+ 5,
95
+ 12
96
+ ],
97
+ "slot_index": 0
98
+ }
99
+ ],
100
+ "properties": {
101
+ "Node name for S&R": "VAELoader"
102
+ },
103
+ "widgets_values": [
104
+ "qwen_image_vae.safetensors"
105
+ ]
106
+ },
107
+ {
108
+ "id": 4,
109
+ "type": "LoadImage",
110
+ "pos": [
111
+ 0,
112
+ 460
113
+ ],
114
+ "size": [
115
+ 320,
116
+ 130
117
+ ],
118
+ "flags": {},
119
+ "order": 3,
120
+ "mode": 0,
121
+ "inputs": [],
122
+ "outputs": [
123
+ {
124
+ "name": "IMAGE",
125
+ "type": "IMAGE",
126
+ "links": [
127
+ 6
128
+ ],
129
+ "slot_index": 0
130
+ },
131
+ {
132
+ "name": "MASK",
133
+ "type": "MASK",
134
+ "links": [],
135
+ "slot_index": 1
136
+ }
137
+ ],
138
+ "properties": {
139
+ "Node name for S&R": "LoadImage"
140
+ },
141
+ "widgets_values": [
142
+ "reference.png",
143
+ "image"
144
+ ]
145
+ },
146
+ {
147
+ "id": 5,
148
+ "type": "CLIPTextEncode",
149
+ "pos": [
150
+ 360,
151
+ 0
152
+ ],
153
+ "size": [
154
+ 420,
155
+ 260
156
+ ],
157
+ "flags": {},
158
+ "order": 4,
159
+ "mode": 0,
160
+ "inputs": [
161
+ {
162
+ "name": "clip",
163
+ "type": "CLIP",
164
+ "link": 1
165
+ }
166
+ ],
167
+ "outputs": [
168
+ {
169
+ "name": "CONDITIONING",
170
+ "type": "CONDITIONING",
171
+ "links": [
172
+ 8
173
+ ],
174
+ "slot_index": 0
175
+ }
176
+ ],
177
+ "properties": {
178
+ "Node name for S&R": "CLIPTextEncode"
179
+ },
180
+ "widgets_values": [
181
+ "masterpiece, best quality, score_7, safe, 1girl, solo, full body, standing, looking at viewer, smile, park, day"
182
+ ],
183
+ "title": "positive (scene only)"
184
+ },
185
+ {
186
+ "id": 6,
187
+ "type": "CLIPTextEncode",
188
+ "pos": [
189
+ 360,
190
+ 300
191
+ ],
192
+ "size": [
193
+ 420,
194
+ 260
195
+ ],
196
+ "flags": {},
197
+ "order": 5,
198
+ "mode": 0,
199
+ "inputs": [
200
+ {
201
+ "name": "clip",
202
+ "type": "CLIP",
203
+ "link": 2
204
+ }
205
+ ],
206
+ "outputs": [
207
+ {
208
+ "name": "CONDITIONING",
209
+ "type": "CONDITIONING",
210
+ "links": [
211
+ 9
212
+ ],
213
+ "slot_index": 0
214
+ }
215
+ ],
216
+ "properties": {
217
+ "Node name for S&R": "CLIPTextEncode"
218
+ },
219
+ "widgets_values": [
220
+ "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
221
+ ],
222
+ "title": "negative"
223
+ },
224
+ {
225
+ "id": 7,
226
+ "type": "EmptyLatentImage",
227
+ "pos": [
228
+ 360,
229
+ 600
230
+ ],
231
+ "size": [
232
+ 320,
233
+ 130
234
+ ],
235
+ "flags": {},
236
+ "order": 6,
237
+ "mode": 0,
238
+ "inputs": [],
239
+ "outputs": [
240
+ {
241
+ "name": "LATENT",
242
+ "type": "LATENT",
243
+ "links": [
244
+ 10
245
+ ],
246
+ "slot_index": 0
247
+ }
248
+ ],
249
+ "properties": {
250
+ "Node name for S&R": "EmptyLatentImage"
251
+ },
252
+ "widgets_values": [
253
+ 832,
254
+ 1216,
255
+ 1
256
+ ]
257
+ },
258
+ {
259
+ "id": 8,
260
+ "type": "SnapRef",
261
+ "pos": [
262
+ 820,
263
+ 0
264
+ ],
265
+ "size": [
266
+ 320,
267
+ 130
268
+ ],
269
+ "flags": {},
270
+ "order": 7,
271
+ "mode": 0,
272
+ "inputs": [
273
+ {
274
+ "name": "model",
275
+ "type": "MODEL",
276
+ "link": 3
277
+ },
278
+ {
279
+ "name": "clip",
280
+ "type": "CLIP",
281
+ "link": 4
282
+ },
283
+ {
284
+ "name": "vae",
285
+ "type": "VAE",
286
+ "link": 5
287
+ },
288
+ {
289
+ "name": "image",
290
+ "type": "IMAGE",
291
+ "link": 6
292
+ }
293
+ ],
294
+ "outputs": [
295
+ {
296
+ "name": "MODEL",
297
+ "type": "MODEL",
298
+ "links": [
299
+ 7
300
+ ],
301
+ "slot_index": 0
302
+ }
303
+ ],
304
+ "properties": {
305
+ "Node name for S&R": "SnapRef"
306
+ },
307
+ "widgets_values": [
308
+ "snapref_v1a.safetensors",
309
+ "cs",
310
+ false,
311
+ 1.0,
312
+ 0.0,
313
+ "",
314
+ false,
315
+ 4.5,
316
+ "apg",
317
+ 1.0
318
+ ],
319
+ "title": "SnapRef v1a"
320
+ },
321
+ {
322
+ "id": 9,
323
+ "type": "KSampler",
324
+ "pos": [
325
+ 820,
326
+ 260
327
+ ],
328
+ "size": [
329
+ 320,
330
+ 130
331
+ ],
332
+ "flags": {},
333
+ "order": 8,
334
+ "mode": 0,
335
+ "inputs": [
336
+ {
337
+ "name": "model",
338
+ "type": "MODEL",
339
+ "link": 7
340
+ },
341
+ {
342
+ "name": "positive",
343
+ "type": "CONDITIONING",
344
+ "link": 8
345
+ },
346
+ {
347
+ "name": "negative",
348
+ "type": "CONDITIONING",
349
+ "link": 9
350
+ },
351
+ {
352
+ "name": "latent_image",
353
+ "type": "LATENT",
354
+ "link": 10
355
+ }
356
+ ],
357
+ "outputs": [
358
+ {
359
+ "name": "LATENT",
360
+ "type": "LATENT",
361
+ "links": [
362
+ 11
363
+ ],
364
+ "slot_index": 0
365
+ }
366
+ ],
367
+ "properties": {
368
+ "Node name for S&R": "KSampler"
369
+ },
370
+ "widgets_values": [
371
+ 20261029,
372
+ "fixed",
373
+ 28,
374
+ 4.5,
375
+ "euler",
376
+ "simple",
377
+ 1.0
378
+ ]
379
+ },
380
+ {
381
+ "id": 10,
382
+ "type": "VAEDecode",
383
+ "pos": [
384
+ 1160,
385
+ 260
386
+ ],
387
+ "size": [
388
+ 320,
389
+ 130
390
+ ],
391
+ "flags": {},
392
+ "order": 9,
393
+ "mode": 0,
394
+ "inputs": [
395
+ {
396
+ "name": "samples",
397
+ "type": "LATENT",
398
+ "link": 11
399
+ },
400
+ {
401
+ "name": "vae",
402
+ "type": "VAE",
403
+ "link": 12
404
+ }
405
+ ],
406
+ "outputs": [
407
+ {
408
+ "name": "IMAGE",
409
+ "type": "IMAGE",
410
+ "links": [
411
+ 13
412
+ ],
413
+ "slot_index": 0
414
+ }
415
+ ],
416
+ "properties": {
417
+ "Node name for S&R": "VAEDecode"
418
+ },
419
+ "widgets_values": []
420
+ },
421
+ {
422
+ "id": 11,
423
+ "type": "SaveImage",
424
+ "pos": [
425
+ 1380,
426
+ 260
427
+ ],
428
+ "size": [
429
+ 320,
430
+ 130
431
+ ],
432
+ "flags": {},
433
+ "order": 10,
434
+ "mode": 0,
435
+ "inputs": [
436
+ {
437
+ "name": "images",
438
+ "type": "IMAGE",
439
+ "link": 13
440
+ }
441
+ ],
442
+ "outputs": [],
443
+ "properties": {
444
+ "Node name for S&R": "SaveImage"
445
+ },
446
+ "widgets_values": [
447
+ "snapref/image"
448
+ ]
449
+ },
450
+ {
451
+ "id": 12,
452
+ "type": "Note",
453
+ "pos": [
454
+ 820,
455
+ 620
456
+ ],
457
+ "size": [
458
+ 420,
459
+ 260
460
+ ],
461
+ "flags": {},
462
+ "order": 11,
463
+ "mode": 0,
464
+ "inputs": [],
465
+ "outputs": [],
466
+ "properties": {
467
+ "Node name for S&R": "Note"
468
+ },
469
+ "widgets_values": [
470
+ "SnapRef v1a: one reference image, pose and scene from the prompt.\n\n- Prompt: quality tags, 1girl/1boy, solo, then the scene. No character name, artist or outfit tags needed.\n- mode cs: character and style from the reference. char: character only; add artist tags to the prompt.\n- strength (log scale): +1 to +2 for more reference detail, negative for less.\n- ref_guidance_on + ref_guidance 6-8: stronger reference at about 1.4x the time; apg keeps colors in check.\n- ref_caption: optional appearance tags of the reference (no name or artist).\n- Any sampler works; euler or er_sde, simple, 28-30 steps, cfg 4.5."
471
+ ]
472
+ }
473
+ ],
474
+ "links": [
475
+ [
476
+ 1,
477
+ 2,
478
+ 0,
479
+ 5,
480
+ 0,
481
+ "CLIP"
482
+ ],
483
+ [
484
+ 2,
485
+ 2,
486
+ 0,
487
+ 6,
488
+ 0,
489
+ "CLIP"
490
+ ],
491
+ [
492
+ 3,
493
+ 1,
494
+ 0,
495
+ 8,
496
+ 0,
497
+ "MODEL"
498
+ ],
499
+ [
500
+ 4,
501
+ 2,
502
+ 0,
503
+ 8,
504
+ 1,
505
+ "CLIP"
506
+ ],
507
+ [
508
+ 5,
509
+ 3,
510
+ 0,
511
+ 8,
512
+ 2,
513
+ "VAE"
514
+ ],
515
+ [
516
+ 6,
517
+ 4,
518
+ 0,
519
+ 8,
520
+ 3,
521
+ "IMAGE"
522
+ ],
523
+ [
524
+ 7,
525
+ 8,
526
+ 0,
527
+ 9,
528
+ 0,
529
+ "MODEL"
530
+ ],
531
+ [
532
+ 8,
533
+ 5,
534
+ 0,
535
+ 9,
536
+ 1,
537
+ "CONDITIONING"
538
+ ],
539
+ [
540
+ 9,
541
+ 6,
542
+ 0,
543
+ 9,
544
+ 2,
545
+ "CONDITIONING"
546
+ ],
547
+ [
548
+ 10,
549
+ 7,
550
+ 0,
551
+ 9,
552
+ 3,
553
+ "LATENT"
554
+ ],
555
+ [
556
+ 11,
557
+ 9,
558
+ 0,
559
+ 10,
560
+ 0,
561
+ "LATENT"
562
+ ],
563
+ [
564
+ 12,
565
+ 3,
566
+ 0,
567
+ 10,
568
+ 1,
569
+ "VAE"
570
+ ],
571
+ [
572
+ 13,
573
+ 10,
574
+ 0,
575
+ 11,
576
+ 0,
577
+ "IMAGE"
578
+ ]
579
+ ],
580
+ "groups": [],
581
+ "config": {},
582
+ "extra": {},
583
+ "version": 0.4
584
  }
workflows/{anima_ref_kv_v1_two_characters.json → snapref_v1a_two_characters.json} RENAMED
@@ -1,685 +1,685 @@
1
- {
2
- "last_node_id": 14,
3
- "last_link_id": 15,
4
- "nodes": [
5
- {
6
- "id": 1,
7
- "type": "UNETLoader",
8
- "pos": [
9
- 0,
10
- 0
11
- ],
12
- "size": [
13
- 320,
14
- 130
15
- ],
16
- "flags": {},
17
- "order": 0,
18
- "mode": 0,
19
- "inputs": [],
20
- "outputs": [
21
- {
22
- "name": "MODEL",
23
- "type": "MODEL",
24
- "links": [
25
- 5
26
- ],
27
- "slot_index": 0
28
- }
29
- ],
30
- "properties": {
31
- "Node name for S&R": "UNETLoader"
32
- },
33
- "widgets_values": [
34
- "anima-base-v1.0.safetensors",
35
- "default"
36
- ]
37
- },
38
- {
39
- "id": 2,
40
- "type": "CLIPLoader",
41
- "pos": [
42
- 0,
43
- 160
44
- ],
45
- "size": [
46
- 320,
47
- 130
48
- ],
49
- "flags": {},
50
- "order": 1,
51
- "mode": 0,
52
- "inputs": [],
53
- "outputs": [
54
- {
55
- "name": "CLIP",
56
- "type": "CLIP",
57
- "links": [
58
- 1,
59
- 2,
60
- 6
61
- ],
62
- "slot_index": 0
63
- }
64
- ],
65
- "properties": {
66
- "Node name for S&R": "CLIPLoader"
67
- },
68
- "widgets_values": [
69
- "qwen_3_06b_base.safetensors",
70
- "stable_diffusion",
71
- "default"
72
- ]
73
- },
74
- {
75
- "id": 3,
76
- "type": "VAELoader",
77
- "pos": [
78
- 0,
79
- 320
80
- ],
81
- "size": [
82
- 320,
83
- 130
84
- ],
85
- "flags": {},
86
- "order": 2,
87
- "mode": 0,
88
- "inputs": [],
89
- "outputs": [
90
- {
91
- "name": "VAE",
92
- "type": "VAE",
93
- "links": [
94
- 7,
95
- 14
96
- ],
97
- "slot_index": 0
98
- }
99
- ],
100
- "properties": {
101
- "Node name for S&R": "VAELoader"
102
- },
103
- "widgets_values": [
104
- "qwen_image_vae.safetensors"
105
- ]
106
- },
107
- {
108
- "id": 4,
109
- "type": "LoadImage",
110
- "pos": [
111
- 0,
112
- 460
113
- ],
114
- "size": [
115
- 320,
116
- 130
117
- ],
118
- "flags": {},
119
- "order": 3,
120
- "mode": 0,
121
- "inputs": [],
122
- "outputs": [
123
- {
124
- "name": "IMAGE",
125
- "type": "IMAGE",
126
- "links": [
127
- 3
128
- ],
129
- "slot_index": 0
130
- },
131
- {
132
- "name": "MASK",
133
- "type": "MASK",
134
- "links": [],
135
- "slot_index": 1
136
- }
137
- ],
138
- "properties": {
139
- "Node name for S&R": "LoadImage"
140
- },
141
- "widgets_values": [
142
- "reference.png",
143
- "image"
144
- ]
145
- },
146
- {
147
- "id": 5,
148
- "type": "CLIPTextEncode",
149
- "pos": [
150
- 360,
151
- 0
152
- ],
153
- "size": [
154
- 420,
155
- 260
156
- ],
157
- "flags": {},
158
- "order": 4,
159
- "mode": 0,
160
- "inputs": [
161
- {
162
- "name": "clip",
163
- "type": "CLIP",
164
- "link": 1
165
- }
166
- ],
167
- "outputs": [
168
- {
169
- "name": "CONDITIONING",
170
- "type": "CONDITIONING",
171
- "links": [
172
- 10
173
- ],
174
- "slot_index": 0
175
- }
176
- ],
177
- "properties": {
178
- "Node name for S&R": "CLIPTextEncode"
179
- },
180
- "widgets_values": [
181
- "masterpiece, best quality, score_7, safe, 2girls, the girl on the left is <describe A>, the girl on the right is <describe B>, standing side by side, smile, park, day"
182
- ],
183
- "title": "positive (scene only)"
184
- },
185
- {
186
- "id": 6,
187
- "type": "CLIPTextEncode",
188
- "pos": [
189
- 360,
190
- 300
191
- ],
192
- "size": [
193
- 420,
194
- 260
195
- ],
196
- "flags": {},
197
- "order": 5,
198
- "mode": 0,
199
- "inputs": [
200
- {
201
- "name": "clip",
202
- "type": "CLIP",
203
- "link": 2
204
- }
205
- ],
206
- "outputs": [
207
- {
208
- "name": "CONDITIONING",
209
- "type": "CONDITIONING",
210
- "links": [
211
- 11
212
- ],
213
- "slot_index": 0
214
- }
215
- ],
216
- "properties": {
217
- "Node name for S&R": "CLIPTextEncode"
218
- },
219
- "widgets_values": [
220
- "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
221
- ],
222
- "title": "negative"
223
- },
224
- {
225
- "id": 7,
226
- "type": "LoadImage",
227
- "pos": [
228
- 0,
229
- 760
230
- ],
231
- "size": [
232
- 320,
233
- 130
234
- ],
235
- "flags": {},
236
- "order": 6,
237
- "mode": 0,
238
- "inputs": [],
239
- "outputs": [
240
- {
241
- "name": "IMAGE",
242
- "type": "IMAGE",
243
- "links": [
244
- 4
245
- ],
246
- "slot_index": 0
247
- },
248
- {
249
- "name": "MASK",
250
- "type": "MASK",
251
- "links": [],
252
- "slot_index": 1
253
- }
254
- ],
255
- "properties": {
256
- "Node name for S&R": "LoadImage"
257
- },
258
- "widgets_values": [
259
- "reference2.png",
260
- "image"
261
- ]
262
- },
263
- {
264
- "id": 8,
265
- "type": "ImageStitch",
266
- "pos": [
267
- 360,
268
- 600
269
- ],
270
- "size": [
271
- 320,
272
- 130
273
- ],
274
- "flags": {},
275
- "order": 7,
276
- "mode": 0,
277
- "inputs": [
278
- {
279
- "name": "image1",
280
- "type": "IMAGE",
281
- "link": 3
282
- },
283
- {
284
- "name": "image2",
285
- "type": "IMAGE",
286
- "link": 4
287
- }
288
- ],
289
- "outputs": [
290
- {
291
- "name": "IMAGE",
292
- "type": "IMAGE",
293
- "links": [
294
- 8
295
- ],
296
- "slot_index": 0
297
- }
298
- ],
299
- "properties": {
300
- "Node name for S&R": "ImageStitch"
301
- },
302
- "widgets_values": [
303
- "right",
304
- true,
305
- 0,
306
- "white"
307
- ]
308
- },
309
- {
310
- "id": 9,
311
- "type": "EmptyLatentImage",
312
- "pos": [
313
- 360,
314
- 760
315
- ],
316
- "size": [
317
- 320,
318
- 130
319
- ],
320
- "flags": {},
321
- "order": 8,
322
- "mode": 0,
323
- "inputs": [],
324
- "outputs": [
325
- {
326
- "name": "LATENT",
327
- "type": "LATENT",
328
- "links": [
329
- 12
330
- ],
331
- "slot_index": 0
332
- }
333
- ],
334
- "properties": {
335
- "Node name for S&R": "EmptyLatentImage"
336
- },
337
- "widgets_values": [
338
- 1216,
339
- 832,
340
- 1
341
- ]
342
- },
343
- {
344
- "id": 10,
345
- "type": "AnimaRefKV",
346
- "pos": [
347
- 820,
348
- 0
349
- ],
350
- "size": [
351
- 320,
352
- 130
353
- ],
354
- "flags": {},
355
- "order": 9,
356
- "mode": 0,
357
- "inputs": [
358
- {
359
- "name": "model",
360
- "type": "MODEL",
361
- "link": 5
362
- },
363
- {
364
- "name": "clip",
365
- "type": "CLIP",
366
- "link": 6
367
- },
368
- {
369
- "name": "vae",
370
- "type": "VAE",
371
- "link": 7
372
- },
373
- {
374
- "name": "image",
375
- "type": "IMAGE",
376
- "link": 8
377
- }
378
- ],
379
- "outputs": [
380
- {
381
- "name": "MODEL",
382
- "type": "MODEL",
383
- "links": [
384
- 9
385
- ],
386
- "slot_index": 0
387
- }
388
- ],
389
- "properties": {
390
- "Node name for S&R": "AnimaRefKV"
391
- },
392
- "widgets_values": [
393
- "anima_ref_kv_v1.safetensors",
394
- "cs",
395
- false,
396
- 1.0,
397
- 0.0,
398
- "",
399
- false,
400
- 4.5,
401
- "apg",
402
- 1.0
403
- ],
404
- "title": "Anima Ref KV"
405
- },
406
- {
407
- "id": 11,
408
- "type": "KSampler",
409
- "pos": [
410
- 820,
411
- 300
412
- ],
413
- "size": [
414
- 320,
415
- 130
416
- ],
417
- "flags": {},
418
- "order": 10,
419
- "mode": 0,
420
- "inputs": [
421
- {
422
- "name": "model",
423
- "type": "MODEL",
424
- "link": 9
425
- },
426
- {
427
- "name": "positive",
428
- "type": "CONDITIONING",
429
- "link": 10
430
- },
431
- {
432
- "name": "negative",
433
- "type": "CONDITIONING",
434
- "link": 11
435
- },
436
- {
437
- "name": "latent_image",
438
- "type": "LATENT",
439
- "link": 12
440
- }
441
- ],
442
- "outputs": [
443
- {
444
- "name": "LATENT",
445
- "type": "LATENT",
446
- "links": [
447
- 13
448
- ],
449
- "slot_index": 0
450
- }
451
- ],
452
- "properties": {
453
- "Node name for S&R": "KSampler"
454
- },
455
- "widgets_values": [
456
- 20261029,
457
- "fixed",
458
- 28,
459
- 4.5,
460
- "euler",
461
- "simple",
462
- 1.0
463
- ]
464
- },
465
- {
466
- "id": 12,
467
- "type": "VAEDecode",
468
- "pos": [
469
- 1160,
470
- 300
471
- ],
472
- "size": [
473
- 320,
474
- 130
475
- ],
476
- "flags": {},
477
- "order": 11,
478
- "mode": 0,
479
- "inputs": [
480
- {
481
- "name": "samples",
482
- "type": "LATENT",
483
- "link": 13
484
- },
485
- {
486
- "name": "vae",
487
- "type": "VAE",
488
- "link": 14
489
- }
490
- ],
491
- "outputs": [
492
- {
493
- "name": "IMAGE",
494
- "type": "IMAGE",
495
- "links": [
496
- 15
497
- ],
498
- "slot_index": 0
499
- }
500
- ],
501
- "properties": {
502
- "Node name for S&R": "VAEDecode"
503
- },
504
- "widgets_values": []
505
- },
506
- {
507
- "id": 13,
508
- "type": "SaveImage",
509
- "pos": [
510
- 1380,
511
- 300
512
- ],
513
- "size": [
514
- 320,
515
- 130
516
- ],
517
- "flags": {},
518
- "order": 12,
519
- "mode": 0,
520
- "inputs": [
521
- {
522
- "name": "images",
523
- "type": "IMAGE",
524
- "link": 15
525
- }
526
- ],
527
- "outputs": [],
528
- "properties": {
529
- "Node name for S&R": "SaveImage"
530
- },
531
- "widgets_values": [
532
- "anima_ref_kv/two_characters"
533
- ]
534
- },
535
- {
536
- "id": 14,
537
- "type": "Note",
538
- "pos": [
539
- 820,
540
- 620
541
- ],
542
- "size": [
543
- 420,
544
- 260
545
- ],
546
- "flags": {},
547
- "order": 13,
548
- "mode": 0,
549
- "inputs": [],
550
- "outputs": [],
551
- "properties": {
552
- "Node name for S&R": "Note"
553
- },
554
- "widgets_values": [
555
- "Two characters: load one reference per character (left, right). Image Stitch puts them side by side into one reference. In the prompt use 2girls / 1boy, 1girl instead of solo and say who is on the left and who is on the right with a few words each. A landscape size works best."
556
- ]
557
- }
558
- ],
559
- "links": [
560
- [
561
- 1,
562
- 2,
563
- 0,
564
- 5,
565
- 0,
566
- "CLIP"
567
- ],
568
- [
569
- 2,
570
- 2,
571
- 0,
572
- 6,
573
- 0,
574
- "CLIP"
575
- ],
576
- [
577
- 3,
578
- 4,
579
- 0,
580
- 8,
581
- 0,
582
- "IMAGE"
583
- ],
584
- [
585
- 4,
586
- 7,
587
- 0,
588
- 8,
589
- 1,
590
- "IMAGE"
591
- ],
592
- [
593
- 5,
594
- 1,
595
- 0,
596
- 10,
597
- 0,
598
- "MODEL"
599
- ],
600
- [
601
- 6,
602
- 2,
603
- 0,
604
- 10,
605
- 1,
606
- "CLIP"
607
- ],
608
- [
609
- 7,
610
- 3,
611
- 0,
612
- 10,
613
- 2,
614
- "VAE"
615
- ],
616
- [
617
- 8,
618
- 8,
619
- 0,
620
- 10,
621
- 3,
622
- "IMAGE"
623
- ],
624
- [
625
- 9,
626
- 10,
627
- 0,
628
- 11,
629
- 0,
630
- "MODEL"
631
- ],
632
- [
633
- 10,
634
- 5,
635
- 0,
636
- 11,
637
- 1,
638
- "CONDITIONING"
639
- ],
640
- [
641
- 11,
642
- 6,
643
- 0,
644
- 11,
645
- 2,
646
- "CONDITIONING"
647
- ],
648
- [
649
- 12,
650
- 9,
651
- 0,
652
- 11,
653
- 3,
654
- "LATENT"
655
- ],
656
- [
657
- 13,
658
- 11,
659
- 0,
660
- 12,
661
- 0,
662
- "LATENT"
663
- ],
664
- [
665
- 14,
666
- 3,
667
- 0,
668
- 12,
669
- 1,
670
- "VAE"
671
- ],
672
- [
673
- 15,
674
- 12,
675
- 0,
676
- 13,
677
- 0,
678
- "IMAGE"
679
- ]
680
- ],
681
- "groups": [],
682
- "config": {},
683
- "extra": {},
684
- "version": 0.4
685
  }
 
1
+ {
2
+ "last_node_id": 14,
3
+ "last_link_id": 15,
4
+ "nodes": [
5
+ {
6
+ "id": 1,
7
+ "type": "UNETLoader",
8
+ "pos": [
9
+ 0,
10
+ 0
11
+ ],
12
+ "size": [
13
+ 320,
14
+ 130
15
+ ],
16
+ "flags": {},
17
+ "order": 0,
18
+ "mode": 0,
19
+ "inputs": [],
20
+ "outputs": [
21
+ {
22
+ "name": "MODEL",
23
+ "type": "MODEL",
24
+ "links": [
25
+ 5
26
+ ],
27
+ "slot_index": 0
28
+ }
29
+ ],
30
+ "properties": {
31
+ "Node name for S&R": "UNETLoader"
32
+ },
33
+ "widgets_values": [
34
+ "anima-base-v1.0.safetensors",
35
+ "default"
36
+ ]
37
+ },
38
+ {
39
+ "id": 2,
40
+ "type": "CLIPLoader",
41
+ "pos": [
42
+ 0,
43
+ 160
44
+ ],
45
+ "size": [
46
+ 320,
47
+ 130
48
+ ],
49
+ "flags": {},
50
+ "order": 1,
51
+ "mode": 0,
52
+ "inputs": [],
53
+ "outputs": [
54
+ {
55
+ "name": "CLIP",
56
+ "type": "CLIP",
57
+ "links": [
58
+ 1,
59
+ 2,
60
+ 6
61
+ ],
62
+ "slot_index": 0
63
+ }
64
+ ],
65
+ "properties": {
66
+ "Node name for S&R": "CLIPLoader"
67
+ },
68
+ "widgets_values": [
69
+ "qwen_3_06b_base.safetensors",
70
+ "stable_diffusion",
71
+ "default"
72
+ ]
73
+ },
74
+ {
75
+ "id": 3,
76
+ "type": "VAELoader",
77
+ "pos": [
78
+ 0,
79
+ 320
80
+ ],
81
+ "size": [
82
+ 320,
83
+ 130
84
+ ],
85
+ "flags": {},
86
+ "order": 2,
87
+ "mode": 0,
88
+ "inputs": [],
89
+ "outputs": [
90
+ {
91
+ "name": "VAE",
92
+ "type": "VAE",
93
+ "links": [
94
+ 7,
95
+ 14
96
+ ],
97
+ "slot_index": 0
98
+ }
99
+ ],
100
+ "properties": {
101
+ "Node name for S&R": "VAELoader"
102
+ },
103
+ "widgets_values": [
104
+ "qwen_image_vae.safetensors"
105
+ ]
106
+ },
107
+ {
108
+ "id": 4,
109
+ "type": "LoadImage",
110
+ "pos": [
111
+ 0,
112
+ 460
113
+ ],
114
+ "size": [
115
+ 320,
116
+ 130
117
+ ],
118
+ "flags": {},
119
+ "order": 3,
120
+ "mode": 0,
121
+ "inputs": [],
122
+ "outputs": [
123
+ {
124
+ "name": "IMAGE",
125
+ "type": "IMAGE",
126
+ "links": [
127
+ 3
128
+ ],
129
+ "slot_index": 0
130
+ },
131
+ {
132
+ "name": "MASK",
133
+ "type": "MASK",
134
+ "links": [],
135
+ "slot_index": 1
136
+ }
137
+ ],
138
+ "properties": {
139
+ "Node name for S&R": "LoadImage"
140
+ },
141
+ "widgets_values": [
142
+ "reference.png",
143
+ "image"
144
+ ]
145
+ },
146
+ {
147
+ "id": 5,
148
+ "type": "CLIPTextEncode",
149
+ "pos": [
150
+ 360,
151
+ 0
152
+ ],
153
+ "size": [
154
+ 420,
155
+ 260
156
+ ],
157
+ "flags": {},
158
+ "order": 4,
159
+ "mode": 0,
160
+ "inputs": [
161
+ {
162
+ "name": "clip",
163
+ "type": "CLIP",
164
+ "link": 1
165
+ }
166
+ ],
167
+ "outputs": [
168
+ {
169
+ "name": "CONDITIONING",
170
+ "type": "CONDITIONING",
171
+ "links": [
172
+ 10
173
+ ],
174
+ "slot_index": 0
175
+ }
176
+ ],
177
+ "properties": {
178
+ "Node name for S&R": "CLIPTextEncode"
179
+ },
180
+ "widgets_values": [
181
+ "masterpiece, best quality, score_7, safe, 2girls, the girl on the left is <describe A>, the girl on the right is <describe B>, standing side by side, smile, park, day"
182
+ ],
183
+ "title": "positive (scene only)"
184
+ },
185
+ {
186
+ "id": 6,
187
+ "type": "CLIPTextEncode",
188
+ "pos": [
189
+ 360,
190
+ 300
191
+ ],
192
+ "size": [
193
+ 420,
194
+ 260
195
+ ],
196
+ "flags": {},
197
+ "order": 5,
198
+ "mode": 0,
199
+ "inputs": [
200
+ {
201
+ "name": "clip",
202
+ "type": "CLIP",
203
+ "link": 2
204
+ }
205
+ ],
206
+ "outputs": [
207
+ {
208
+ "name": "CONDITIONING",
209
+ "type": "CONDITIONING",
210
+ "links": [
211
+ 11
212
+ ],
213
+ "slot_index": 0
214
+ }
215
+ ],
216
+ "properties": {
217
+ "Node name for S&R": "CLIPTextEncode"
218
+ },
219
+ "widgets_values": [
220
+ "worst quality, low quality, score_1, score_2, score_3, artist name, blurry, jpeg artifacts, chromatic aberration"
221
+ ],
222
+ "title": "negative"
223
+ },
224
+ {
225
+ "id": 7,
226
+ "type": "LoadImage",
227
+ "pos": [
228
+ 0,
229
+ 760
230
+ ],
231
+ "size": [
232
+ 320,
233
+ 130
234
+ ],
235
+ "flags": {},
236
+ "order": 6,
237
+ "mode": 0,
238
+ "inputs": [],
239
+ "outputs": [
240
+ {
241
+ "name": "IMAGE",
242
+ "type": "IMAGE",
243
+ "links": [
244
+ 4
245
+ ],
246
+ "slot_index": 0
247
+ },
248
+ {
249
+ "name": "MASK",
250
+ "type": "MASK",
251
+ "links": [],
252
+ "slot_index": 1
253
+ }
254
+ ],
255
+ "properties": {
256
+ "Node name for S&R": "LoadImage"
257
+ },
258
+ "widgets_values": [
259
+ "reference2.png",
260
+ "image"
261
+ ]
262
+ },
263
+ {
264
+ "id": 8,
265
+ "type": "ImageStitch",
266
+ "pos": [
267
+ 360,
268
+ 600
269
+ ],
270
+ "size": [
271
+ 320,
272
+ 130
273
+ ],
274
+ "flags": {},
275
+ "order": 7,
276
+ "mode": 0,
277
+ "inputs": [
278
+ {
279
+ "name": "image1",
280
+ "type": "IMAGE",
281
+ "link": 3
282
+ },
283
+ {
284
+ "name": "image2",
285
+ "type": "IMAGE",
286
+ "link": 4
287
+ }
288
+ ],
289
+ "outputs": [
290
+ {
291
+ "name": "IMAGE",
292
+ "type": "IMAGE",
293
+ "links": [
294
+ 8
295
+ ],
296
+ "slot_index": 0
297
+ }
298
+ ],
299
+ "properties": {
300
+ "Node name for S&R": "ImageStitch"
301
+ },
302
+ "widgets_values": [
303
+ "right",
304
+ true,
305
+ 0,
306
+ "white"
307
+ ]
308
+ },
309
+ {
310
+ "id": 9,
311
+ "type": "EmptyLatentImage",
312
+ "pos": [
313
+ 360,
314
+ 760
315
+ ],
316
+ "size": [
317
+ 320,
318
+ 130
319
+ ],
320
+ "flags": {},
321
+ "order": 8,
322
+ "mode": 0,
323
+ "inputs": [],
324
+ "outputs": [
325
+ {
326
+ "name": "LATENT",
327
+ "type": "LATENT",
328
+ "links": [
329
+ 12
330
+ ],
331
+ "slot_index": 0
332
+ }
333
+ ],
334
+ "properties": {
335
+ "Node name for S&R": "EmptyLatentImage"
336
+ },
337
+ "widgets_values": [
338
+ 1216,
339
+ 832,
340
+ 1
341
+ ]
342
+ },
343
+ {
344
+ "id": 10,
345
+ "type": "SnapRef",
346
+ "pos": [
347
+ 820,
348
+ 0
349
+ ],
350
+ "size": [
351
+ 320,
352
+ 130
353
+ ],
354
+ "flags": {},
355
+ "order": 9,
356
+ "mode": 0,
357
+ "inputs": [
358
+ {
359
+ "name": "model",
360
+ "type": "MODEL",
361
+ "link": 5
362
+ },
363
+ {
364
+ "name": "clip",
365
+ "type": "CLIP",
366
+ "link": 6
367
+ },
368
+ {
369
+ "name": "vae",
370
+ "type": "VAE",
371
+ "link": 7
372
+ },
373
+ {
374
+ "name": "image",
375
+ "type": "IMAGE",
376
+ "link": 8
377
+ }
378
+ ],
379
+ "outputs": [
380
+ {
381
+ "name": "MODEL",
382
+ "type": "MODEL",
383
+ "links": [
384
+ 9
385
+ ],
386
+ "slot_index": 0
387
+ }
388
+ ],
389
+ "properties": {
390
+ "Node name for S&R": "SnapRef"
391
+ },
392
+ "widgets_values": [
393
+ "snapref_v1a.safetensors",
394
+ "cs",
395
+ false,
396
+ 1.0,
397
+ 0.0,
398
+ "",
399
+ false,
400
+ 4.5,
401
+ "apg",
402
+ 1.0
403
+ ],
404
+ "title": "SnapRef v1a"
405
+ },
406
+ {
407
+ "id": 11,
408
+ "type": "KSampler",
409
+ "pos": [
410
+ 820,
411
+ 300
412
+ ],
413
+ "size": [
414
+ 320,
415
+ 130
416
+ ],
417
+ "flags": {},
418
+ "order": 10,
419
+ "mode": 0,
420
+ "inputs": [
421
+ {
422
+ "name": "model",
423
+ "type": "MODEL",
424
+ "link": 9
425
+ },
426
+ {
427
+ "name": "positive",
428
+ "type": "CONDITIONING",
429
+ "link": 10
430
+ },
431
+ {
432
+ "name": "negative",
433
+ "type": "CONDITIONING",
434
+ "link": 11
435
+ },
436
+ {
437
+ "name": "latent_image",
438
+ "type": "LATENT",
439
+ "link": 12
440
+ }
441
+ ],
442
+ "outputs": [
443
+ {
444
+ "name": "LATENT",
445
+ "type": "LATENT",
446
+ "links": [
447
+ 13
448
+ ],
449
+ "slot_index": 0
450
+ }
451
+ ],
452
+ "properties": {
453
+ "Node name for S&R": "KSampler"
454
+ },
455
+ "widgets_values": [
456
+ 20261029,
457
+ "fixed",
458
+ 28,
459
+ 4.5,
460
+ "euler",
461
+ "simple",
462
+ 1.0
463
+ ]
464
+ },
465
+ {
466
+ "id": 12,
467
+ "type": "VAEDecode",
468
+ "pos": [
469
+ 1160,
470
+ 300
471
+ ],
472
+ "size": [
473
+ 320,
474
+ 130
475
+ ],
476
+ "flags": {},
477
+ "order": 11,
478
+ "mode": 0,
479
+ "inputs": [
480
+ {
481
+ "name": "samples",
482
+ "type": "LATENT",
483
+ "link": 13
484
+ },
485
+ {
486
+ "name": "vae",
487
+ "type": "VAE",
488
+ "link": 14
489
+ }
490
+ ],
491
+ "outputs": [
492
+ {
493
+ "name": "IMAGE",
494
+ "type": "IMAGE",
495
+ "links": [
496
+ 15
497
+ ],
498
+ "slot_index": 0
499
+ }
500
+ ],
501
+ "properties": {
502
+ "Node name for S&R": "VAEDecode"
503
+ },
504
+ "widgets_values": []
505
+ },
506
+ {
507
+ "id": 13,
508
+ "type": "SaveImage",
509
+ "pos": [
510
+ 1380,
511
+ 300
512
+ ],
513
+ "size": [
514
+ 320,
515
+ 130
516
+ ],
517
+ "flags": {},
518
+ "order": 12,
519
+ "mode": 0,
520
+ "inputs": [
521
+ {
522
+ "name": "images",
523
+ "type": "IMAGE",
524
+ "link": 15
525
+ }
526
+ ],
527
+ "outputs": [],
528
+ "properties": {
529
+ "Node name for S&R": "SaveImage"
530
+ },
531
+ "widgets_values": [
532
+ "snapref/two_characters"
533
+ ]
534
+ },
535
+ {
536
+ "id": 14,
537
+ "type": "Note",
538
+ "pos": [
539
+ 820,
540
+ 620
541
+ ],
542
+ "size": [
543
+ 420,
544
+ 260
545
+ ],
546
+ "flags": {},
547
+ "order": 13,
548
+ "mode": 0,
549
+ "inputs": [],
550
+ "outputs": [],
551
+ "properties": {
552
+ "Node name for S&R": "Note"
553
+ },
554
+ "widgets_values": [
555
+ "Two characters: load one reference per character (left, right). Image Stitch puts them side by side into one reference. In the prompt use 2girls / 1boy, 1girl instead of solo and say who is on the left and who is on the right with a few words each. A landscape size works best."
556
+ ]
557
+ }
558
+ ],
559
+ "links": [
560
+ [
561
+ 1,
562
+ 2,
563
+ 0,
564
+ 5,
565
+ 0,
566
+ "CLIP"
567
+ ],
568
+ [
569
+ 2,
570
+ 2,
571
+ 0,
572
+ 6,
573
+ 0,
574
+ "CLIP"
575
+ ],
576
+ [
577
+ 3,
578
+ 4,
579
+ 0,
580
+ 8,
581
+ 0,
582
+ "IMAGE"
583
+ ],
584
+ [
585
+ 4,
586
+ 7,
587
+ 0,
588
+ 8,
589
+ 1,
590
+ "IMAGE"
591
+ ],
592
+ [
593
+ 5,
594
+ 1,
595
+ 0,
596
+ 10,
597
+ 0,
598
+ "MODEL"
599
+ ],
600
+ [
601
+ 6,
602
+ 2,
603
+ 0,
604
+ 10,
605
+ 1,
606
+ "CLIP"
607
+ ],
608
+ [
609
+ 7,
610
+ 3,
611
+ 0,
612
+ 10,
613
+ 2,
614
+ "VAE"
615
+ ],
616
+ [
617
+ 8,
618
+ 8,
619
+ 0,
620
+ 10,
621
+ 3,
622
+ "IMAGE"
623
+ ],
624
+ [
625
+ 9,
626
+ 10,
627
+ 0,
628
+ 11,
629
+ 0,
630
+ "MODEL"
631
+ ],
632
+ [
633
+ 10,
634
+ 5,
635
+ 0,
636
+ 11,
637
+ 1,
638
+ "CONDITIONING"
639
+ ],
640
+ [
641
+ 11,
642
+ 6,
643
+ 0,
644
+ 11,
645
+ 2,
646
+ "CONDITIONING"
647
+ ],
648
+ [
649
+ 12,
650
+ 9,
651
+ 0,
652
+ 11,
653
+ 3,
654
+ "LATENT"
655
+ ],
656
+ [
657
+ 13,
658
+ 11,
659
+ 0,
660
+ 12,
661
+ 0,
662
+ "LATENT"
663
+ ],
664
+ [
665
+ 14,
666
+ 3,
667
+ 0,
668
+ 12,
669
+ 1,
670
+ "VAE"
671
+ ],
672
+ [
673
+ 15,
674
+ 12,
675
+ 0,
676
+ 13,
677
+ 0,
678
+ "IMAGE"
679
+ ]
680
+ ],
681
+ "groups": [],
682
+ "config": {},
683
+ "extra": {},
684
+ "version": 0.4
685
  }