Nodes/DARASK Nodes/DARASK Exif Apply (Auto-detect)
ComfyUI Node

DARASK Exif Apply (Auto-detect)

Auto-detect which model family an image came from, then rebuild it

By daraskme·Created 5 months ago·Updated 5 months ago· 1
DARASK Exif Apply (Auto-detect)
  • model_override
  • clip_override
  • vae_override
  • model
  • clip
  • vae
  • positive
  • negative
  • positive_text
  • negative_text
  • model_name
  • loras_applied
  • seed
  • cfg
  • sampler_name
  • scheduler
  • steps
  • denoise
  • width
  • height
◄filepath—►
◄fallback_ckpt►
◄positive_prefix►
◄positive_suffix►
◄negative_prefix►
◄negative_suffix►
◄lora_strength_multiplier1.00►
◄skip_loras►

Some folders are honest and some are a zoo. If you've got an input folder mixing old SDXL gens (one .safetensors checkpoint that contains model + CLIP + VAE) with Anima or Flux gens (three separate files in three separate folders), then trying to batch-upscale the lot with a fixed loader setup breaks on the first image that doesn't match. DARASK Exif Apply (Auto-detect) is the variant of the pack's EXIF-rebuild node that looks at each image's metadata, decides whether the source was a UNET stack or a single checkpoint, and loads it accordingly - per image. It's the one you point at a mixed folder and stop thinking about.

How it works

It's the same parse-and-rebuild engine as its siblings (A1111/Forge parameters text, ComfyUI's embedded workflow JSON, NovelAI comment blocks; model names, LoRAs, KSampler settings all recovered), but the loader chain is chosen at runtime. If the source image was generated with UNETLoader + CLIPLoader + VAELoader - the Qwen/Anima/Flux pattern - it rebuilds that three-point chain even if nothing in checkpoints/ matches. If it came from CheckpointLoaderSimple, it goes the single-file route. Same output schema either way, so you can treat the node as a black box that always hands you a usable pipeline.

The inputs that matter

Required input is filepath - feed it from a folder loader. The optional inputs worth knowing:

  • fallback_ckpt - a checkpoint name to use when the metadata has no usable model reference. Set it once, and images with thin metadata still render instead of failing.
  • positive_prefix / positive_suffix / negative_prefix / negative_suffix - wrap the recovered prompts. Ideal for appending an upscale pass like a fixed quality tag to everything.
  • lora_strength_multiplier - tone down recovered LoRA weights in bulk (handy when a folder was made with over-strong styles).
  • skip_loras - basenames or full paths of LoRAs to ignore; one per line.
  • model_override / clip_override / vae_override - wire a slot and it wins; unwired slots still auto-load from metadata.

Outputs: model, clip, vae, encoded positive and negative CONDITIONING, and the raw values: positive_text, negative_text, model_name, loras_applied, seed, cfg, sampler_name, scheduler, steps, denoise, width, height. The model/clip/vae go to a pipe (the README's recipe uses easy-use pipeIn), and seed/steps/cfg to a pre-sampler.

Install

The whole DARASK pack installs the same way: ComfyUI Manager → search DARASK, install, restart. piexif comes via the pack's requirements.txt. Nothing to download model-wise - it only reads what you already have.

When to use which variant

Auto-detect is for mixed folders. If you know everything is Anima/UNET-family, the Anima variant skips the detection step and adds the UNET-specific fallbacks and weight_dtype/clip_type widgets. If everything is SDXL-era, the SDXL variant is the lean option. And if the auto-detection ever misjudges a source (rare, but possible on weird metadata), the README's troubleshooting note is: just switch to the variant matching the actual source - all three share the same outputs, so the rewire is one node swap.

CategoryDARASK

Inputs (11)

NameTypeDefaultDescription
filepathSTRING—
model_overrideoptMODEL—
clip_overrideoptCLIP—
vae_overrideoptVAE—
fallback_ckptoptSTRING—
positive_prefixoptSTRING—
positive_suffixoptSTRING—
negative_prefixoptSTRING—
negative_suffixoptSTRING—
lora_strength_multiplieroptFLOAT1.000–4—
skip_lorasoptSTRING—

Outputs (17)

NameTypeDescription
modelMODEL—
clipCLIP—
vaeVAE—
positiveCONDITIONING—
negativeCONDITIONING—
positive_textSTRING—
negative_textSTRING—
model_nameSTRING—
loras_appliedSTRING—
seedINT—
cfgFLOAT—
sampler_nameSTRING—
schedulerSTRING—
stepsINT—
denoiseFLOAT—
widthINT—
heightINT—