Tags: face_swapidentitypersonalizationcompositeavatar
Inputs (11)#
The typed parameter surface callers bind when they request this workflow. Enum options and numeric bounds are the values the workflow document declares.
source_faceimagerequiredtarget_imageimagerequiredblend_strengthfloatdefault 0.85min 0.0max 1.0preserve_expressionbooleandefault falsematch_lightingbooleandefault truematch_skin_tonebooleandefault trueenhancement_levelenumdefault moderatenonesubtlemoderatestrongupscale_outputbooleandefault falseoutput_formatenumdefault pngpngjpgwebpseedintegerdefault -1checkpointenumdefault dreamshaper_8dreamshaper_8sd15_baseComfyUI node graph (13)#
The executable ComfyUI prompt graph: 13 nodes across 11 distinct node classes, wired by 17 data dependencies. Nodes tinted green come from a custom node pack this workflow declares; the rest are ComfyUI core / baked-community classes.
Nodes (13)#
1LoadImagecoreimage = {{source_face}} tmplIMAGEMASK2LoadImagecoreimage = {{target_image}} tmplIMAGEMASK3ReActorFaceSwapcustom packsource_image = ◂ node 1 · out[0]target_image = ◂ node 2 · out[0]swap_model = inswapper_128.onnxfacedetection = retinaface_resnet50face_restore_model = codeformer-v0.1.0.pthface_restore_visibility = {{blend_strength}} tmplcodeformer_weight = 0.5detect_gender_source = falsedetect_gender_target = falsesource_faces_index = 0target_faces_index = 0console_log_level = 1IMAGE4ColorMatchcustom packimage = ◂ node 3 · out[0]reference = ◂ node 2 · out[0]blur = 8IMAGE5CheckpointLoaderSimplecoreckpt_name = {{checkpoint_files[checkpoint]}} tmplMODELCLIPVAE6VAEEncodecorepixels = ◂ node 4 · out[0]vae = ◂ node 5 · out[2]LATENT7CLIPTextEncodecoretext = high quality portrait, detailed face, natural skin, professional photography, {{enhancement_prompts[enhancement_level]}} tmplclip = ◂ node 5 · out[1]CONDITIONING8CLIPTextEncodecoretext = ugly, deformed, blurry, artifacts, glitches, seams, mismatched skin, wrong proportionsclip = ◂ node 5 · out[1]CONDITIONING9KSamplercoremodel = ◂ node 5 · out[0]positive = ◂ node 7 · out[0]negative = ◂ node 8 · out[0]latent_image = ◂ node 6 · out[0]seed = {{seed}} tmplsteps = 20cfg = 5.0sampler_name = eulerscheduler = normaldenoise = 0.25LATENT10VAEDecodecoresamples = ◂ node 9 · out[0]vae = ◂ node 5 · out[2]IMAGE11UpscaleModelLoadercoremodel_name = RealESRGAN_x4plus.pthUPSCALE_MODEL12ImageUpscaleWithModelcoreupscale_model = ◂ node 11 · out[0]image = ◂ node 10 · out[0]IMAGE13SaveImagecoreimages = ◂ node 12 · out[0]filename_prefix = face_swapParameter banks (2)#
The prompt / configuration lookup tables this workflow keys into from its inputs — the vocabulary that turns a style / palette / preset selection into graph parameters.
enhancement_prompts (4)#
nonesubtleslightly enhanced, minor refinements, subtle improvementsmoderatemoderately enhanced, improved clarity, better detail, refined featuresstrongstrongly enhanced, significant improvement, very clear, highly refinedworkflow_notes (3)#
ethicsThis workflow should only be used with proper consent from individuals whose faces are being used. Never use for deepfakes, harassment, or any malicious purpose.requirementsReActor extension installedInsightFace models availableCodeFormer face restoration modelbest_practicesUse high quality source images with clear face visibilitySource and target should have similar head angles for best resultsLighting match works best when scenes have similar lighting conditionsModels & dependencies#
Custom node packs (2)#
The non-core ComfyUI node classes this graph requires; the RunPod worker image the workflow runs on must bake or install a pack that provides every one of them.
ColorMatchReActorFaceSwapCheckpoint aliases (2)#
dreamshaper_8DreamShaper_8_pruned.safetensorssd15_basev1-5-pruned-emaonly.safetensorsModels required (3)#
DreamShaper_8_pruned.safetensorsRealESRGAN_x4plus.pthv1-5-pruned-emaonly.safetensorsOutput contract#
What a successful run of this workflow returns.
typeimageformat{{output_format}}channels4Taxonomy & routing#
How the control plane classifies this workflow — from the committed workflow-taxonomy-registry.json. It drives the consistency / control surface the agentic director can exercise over the workflow.
assetFamilysocial-avatar-banner-identity-packoutputPackageProfileimage-single-profilecontrolModalitiescontrolnet-inpaintcontrolnet-segmentationfaceididentity-lockipadapter-facemodel-lockprompt-template-locksampler-scheduler-lockseed-lockstyle-lockconsistencyDimensionsidentitylightingcolor-scriptnotesAuto-mapped from avatar defaults