{ "last_node_id": 20, "last_link_id": 30, "nodes": [ { "id": 1, "type": "LoadImage", "pos": [40, 40], "size": {"0": 315, "1": 314}, "flags": {}, "order": 0, "mode": 0, "inputs": [], "outputs": [ {"name": "IMAGE", "type": "IMAGE", "links": [1], "slot_index": 0}, {"name": "MASK", "type": "MASK", "links": null} ], "properties": {"Node name for S&R": "LoadImage"}, "title": "Source face", "widgets_values": ["face.jpg", "image"] }, { "id": 2, "type": "AgePromptBuilder", "pos": [40, 400], "size": {"0": 360, "1": 320}, "flags": {}, "order": 1, "mode": 0, "inputs": [], "outputs": [ {"name": "positive", "type": "STRING", "links": [2], "slot_index": 0}, {"name": "negative", "type": "STRING", "links": [3], "slot_index": 1}, {"name": "summary", "type": "STRING", "links": [4], "slot_index": 2}, {"name": "target_age", "type": "INT", "links": null, "slot_index": 3} ], "properties": {"Node name for S&R": "AgePromptBuilder"}, "widgets_values": [ 65, "person", "unspecified", "photorealistic portrait, sharp focus, natural studio lighting, neutral background", "same identity, same facial structure, same eye shape", "cartoon, illustration, painting, anime, 3d render, deformed, distorted, blurry, low quality, plastic skin, watermark, text", true ] }, { "id": 3, "type": "UNETLoader", "pos": [440, 40], "size": {"0": 315, "1": 82}, "flags": {}, "order": 2, "mode": 0, "inputs": [], "outputs": [{"name": "MODEL", "type": "MODEL", "links": [5], "slot_index": 0}], "properties": {"Node name for S&R": "UNETLoader"}, "widgets_values": ["flux1-dev.safetensors", "default"] }, { "id": 4, "type": "DualCLIPLoader", "pos": [440, 160], "size": {"0": 315, "1": 106}, "flags": {}, "order": 3, "mode": 0, "inputs": [], "outputs": [{"name": "CLIP", "type": "CLIP", "links": [6, 7], "slot_index": 0}], "properties": {"Node name for S&R": "DualCLIPLoader"}, "widgets_values": ["clip_l.safetensors", "t5xxl_fp8_e4m3fn.safetensors", "flux"] }, { "id": 5, "type": "VAELoader", "pos": [440, 300], "size": {"0": 315, "1": 58}, "flags": {}, "order": 4, "mode": 0, "inputs": [], "outputs": [{"name": "VAE", "type": "VAE", "links": [8], "slot_index": 0}], "properties": {"Node name for S&R": "VAELoader"}, "widgets_values": ["ae.safetensors"] }, { "id": 6, "type": "PulidFluxModelLoader", "pos": [440, 400], "size": {"0": 315, "1": 58}, "flags": {}, "order": 5, "mode": 0, "inputs": [], "outputs": [{"name": "PULIDFLUX", "type": "PULIDFLUX", "links": [9], "slot_index": 0}], "properties": {"Node name for S&R": "PulidFluxModelLoader"}, "widgets_values": ["pulid_flux_v0.9.1.safetensors"] }, { "id": 7, "type": "PulidFluxEvaClipLoader", "pos": [440, 500], "size": {"0": 315, "1": 26}, "flags": {}, "order": 6, "mode": 0, "inputs": [], "outputs": [{"name": "EVA_CLIP", "type": "EVA_CLIP", "links": [10], "slot_index": 0}], "properties": {"Node name for S&R": "PulidFluxEvaClipLoader"}, "widgets_values": [] }, { "id": 8, "type": "PulidFluxInsightFaceLoader", "pos": [440, 560], "size": {"0": 315, "1": 58}, "flags": {}, "order": 7, "mode": 0, "inputs": [], "outputs": [{"name": "FACEANALYSIS", "type": "FACEANALYSIS", "links": [11], "slot_index": 0}], "properties": {"Node name for S&R": "PulidFluxInsightFaceLoader"}, "widgets_values": ["CUDA"] }, { "id": 9, "type": "ApplyPulidFlux", "pos": [800, 40], "size": {"0": 315, "1": 290}, "flags": {}, "order": 8, "mode": 0, "inputs": [ {"name": "model", "type": "MODEL", "link": 5}, {"name": "pulid_flux", "type": "PULIDFLUX", "link": 9}, {"name": "eva_clip", "type": "EVA_CLIP", "link": 10}, {"name": "face_analysis", "type": "FACEANALYSIS", "link": 11}, {"name": "image", "type": "IMAGE", "link": 1} ], "outputs": [{"name": "MODEL", "type": "MODEL", "links": [12], "slot_index": 0}], "properties": {"Node name for S&R": "ApplyPulidFlux"}, "widgets_values": [0.9, 0.0, 1.0, "mean", 1.0, 0.0, 1000, true] }, { "id": 10, "type": "CLIPTextEncode", "pos": [800, 360], "size": {"0": 315, "1": 96}, "flags": {}, "order": 9, "mode": 0, "inputs": [ {"name": "clip", "type": "CLIP", "link": 6}, {"name": "text", "type": "STRING", "link": 2, "widget": {"name": "text"}} ], "outputs": [{"name": "CONDITIONING", "type": "CONDITIONING", "links": [13], "slot_index": 0}], "properties": {"Node name for S&R": "CLIPTextEncode"}, "title": "Positive (age-conditioned)", "widgets_values": [""] }, { "id": 11, "type": "CLIPTextEncode", "pos": [800, 500], "size": {"0": 315, "1": 96}, "flags": {}, "order": 10, "mode": 0, "inputs": [ {"name": "clip", "type": "CLIP", "link": 7}, {"name": "text", "type": "STRING", "link": 3, "widget": {"name": "text"}} ], "outputs": [{"name": "CONDITIONING", "type": "CONDITIONING", "links": [14], "slot_index": 0}], "properties": {"Node name for S&R": "CLIPTextEncode"}, "title": "Negative", "widgets_values": [""] }, { "id": 12, "type": "FluxGuidance", "pos": [1160, 360], "size": {"0": 315, "1": 58}, "flags": {}, "order": 11, "mode": 0, "inputs": [{"name": "conditioning", "type": "CONDITIONING", "link": 13}], "outputs": [{"name": "CONDITIONING", "type": "CONDITIONING", "links": [15], "slot_index": 0}], "properties": {"Node name for S&R": "FluxGuidance"}, "widgets_values": [3.5] }, { "id": 13, "type": "EmptySD3LatentImage", "pos": [1160, 460], "size": {"0": 315, "1": 106}, "flags": {}, "order": 12, "mode": 0, "inputs": [], "outputs": [{"name": "LATENT", "type": "LATENT", "links": [16], "slot_index": 0}], "properties": {"Node name for S&R": "EmptySD3LatentImage"}, "widgets_values": [1024, 1024, 1] }, { "id": 14, "type": "KSampler", "pos": [1520, 40], "size": {"0": 315, "1": 262}, "flags": {}, "order": 13, "mode": 0, "inputs": [ {"name": "model", "type": "MODEL", "link": 12}, {"name": "positive", "type": "CONDITIONING", "link": 15}, {"name": "negative", "type": "CONDITIONING", "link": 14}, {"name": "latent_image", "type": "LATENT", "link": 16} ], "outputs": [{"name": "LATENT", "type": "LATENT", "links": [17], "slot_index": 0}], "properties": {"Node name for S&R": "KSampler"}, "widgets_values": [0, "randomize", 20, 1.0, "euler", "simple", 1.0] }, { "id": 15, "type": "VAEDecode", "pos": [1520, 340], "size": {"0": 315, "1": 46}, "flags": {}, "order": 14, "mode": 0, "inputs": [ {"name": "samples", "type": "LATENT", "link": 17}, {"name": "vae", "type": "VAE", "link": 8} ], "outputs": [{"name": "IMAGE", "type": "IMAGE", "links": [18], "slot_index": 0}], "properties": {"Node name for S&R": "VAEDecode"}, "widgets_values": [] }, { "id": 16, "type": "SaveImage", "pos": [1520, 420], "size": {"0": 315, "1": 270}, "flags": {}, "order": 15, "mode": 0, "inputs": [{"name": "images", "type": "IMAGE", "link": 18}], "outputs": [], "properties": {}, "widgets_values": ["ageshift_age065"] }, { "id": 17, "type": "PreviewAny", "pos": [40, 760], "size": {"0": 360, "1": 76}, "flags": {}, "order": 16, "mode": 0, "inputs": [{"name": "source", "type": "*", "link": 4}], "outputs": [], "properties": {"Node name for S&R": "PreviewAny"}, "title": "Prompt summary", "widgets_values": [] } ], "links": [ [1, 1, 0, 9, 4, "IMAGE"], [2, 2, 0, 10, 1, "STRING"], [3, 2, 1, 11, 1, "STRING"], [4, 2, 2, 17, 0, "STRING"], [5, 3, 0, 9, 0, "MODEL"], [6, 4, 0, 10, 0, "CLIP"], [7, 4, 0, 11, 0, "CLIP"], [8, 5, 0, 15, 1, "VAE"], [9, 6, 0, 9, 1, "PULIDFLUX"], [10, 7, 0, 9, 2, "EVA_CLIP"], [11, 8, 0, 9, 3, "FACEANALYSIS"], [12, 9, 0, 14, 0, "MODEL"], [13, 10, 0, 12, 0, "CONDITIONING"], [14, 11, 0, 14, 2, "CONDITIONING"], [15, 12, 0, 14, 1, "CONDITIONING"], [16, 13, 0, 14, 3, "LATENT"], [17, 14, 0, 15, 0, "LATENT"], [18, 15, 0, 16, 0, "IMAGE"] ], "groups": [ { "title": "Inputs", "bounding": [30, 0, 370, 740], "color": "#3f789e", "font_size": 24 }, { "title": "Flux + PuLID loaders", "bounding": [430, 0, 335, 640], "color": "#a1309b", "font_size": 24 }, { "title": "Apply + condition", "bounding": [790, 0, 335, 620], "color": "#629930", "font_size": 24 }, { "title": "Sample → decode → save", "bounding": [1510, 0, 335, 700], "color": "#b58b2a", "font_size": 24 } ], "config": {}, "extra": {}, "version": 0.4 }