Nodes/ComfyUI Assistant Node/PVL FLUX General (fal.ai)
ComfyUI Node

PVL FLUX General (fal.ai)

NAG guidance, shifts, and reference images

By pvlprk·Created about a year ago·Updated 8 months ago· 1
PVL FLUX General (fal.ai)
  • reference_image
  • IMAGE
prompt
width1392
height752
steps28
CFG3.5
num_images1
enable_safety_checkerfalse
output_formatpng
sync_modefalse
seed-1
negative_prompt
schedulereuler
use_beta_schedulefalse
base_shift0.50
max_shift1.15
nag_scale3.0
nag_tau2.5
nag_alpha0.25
nag_end0.25
reference_strength0.65
reference_start0.00
reference_end1.00
lora1_name
lora1_scale1.0
lora2_name
lora2_scale1.0
lora3_name
lora3_scale1.0

Most fal-node wrappers expose ten sensible settings and let the API do the rest. PVL FLUX General is not that. It wraps fal's flux-general endpoint - the one that hands you the sampler internals - with a control panel for scheduler, beta schedule, shift parameters, and NAG guidance, plus optional reference-image conditioning and up to three LoRAs. If you've ever wanted to tune a Flux generation below the level of "change the CFG," this is the node where the pack stops being a wrapper and starts being a lab bench.

It's part of the ComfyUI Assistant Node pack from pvlprk, in the fal family. The idea: same family of models as the rest, but with the dials most wrappers hide.

How it works

Under the hood it's the same pattern - build a payload, POST to fal-ai/flux-general, download the image. The difference is what goes in the payload. Besides the standard prompt, steps, CFG, num_images, and size (256–1440, defaulting to the 1392×752 landscape pair), you get:

  • scheduler - euler or dpmpp_2m.
  • use_beta_schedule and base_shift / max_shift - the Flux-family training-time shift knobs. For most people these should stay at defaults (off, 0.5, 1.15). They change the noise schedule, and "changed the noise schedule" is rarely the fix you needed.
  • NAG parameters - nag_scale, nag_tau, nag_alpha, nag_end. NAG (negative-aware guidance) is the flux-general-specific guidance variant; these four control its strength and shape. This is deep-end stuff. Start with nag_scale and leave the rest.
  • negative_prompt - yes, a real negative prompt, which regular Flux endpoints often lack.
  • reference_image with reference_strength / reference_start / reference_end - image-conditioned generation: send a photo and a prompt, and the output follows both, with the strength sliders controlling how hard the reference pulls. The image goes out as a base64 data URI.
  • lora1_namelora3_name with scales - fal-hosted LoRAs, same as the pack's other LoRA nodes.

The inputs that matter for a beginner

Honestly: prompt, width/height, and if you want to experiment, reference_image plus reference_strength. Everything else has a default that's fine to leave alone. The shift and NAG parameters are for when you've read up on what they do and have a specific hypothesis - they're not tuning knobs you're supposed to wiggle blindly.

Output: one IMAGE.

Installing it

Part of pvlprk/comfyui-pvl-api-nodes. Install via ComfyUI Manager (search "ComfyUI Assistant Node") or:

cd ComfyUI/custom_nodes
git clone https://github.com/pvlprk/comfyui-pvl-api-nodes

Set your fal.ai key as FAL_KEY (or FAL_API_KEY / FAL_CLIENT_KEY), restart, add credits.

Where people get burned

The trap here is over-tuning. The NAG and shift parameters interact - change three at once and you won't know which one moved the result. Change one, keep notes. And this node's enable_safety_checker defaults to off, unlike the plain Flux Dev node, so if you're getting results you didn't expect from fal's side, check that toggle. Standard FAL_KEY and blank-placeholder-image gotchas apply as always.

CategoryPVL_tools_FAL

Inputs (29)

NameTypeDefaultDescription
promptSTRING
widthINT1392256–1440
heightINT752256–1440
stepsINT281–100
CFGFLOAT3.51–20
num_imagesINT11–4
enable_safety_checkerBOOLEANfalse
output_formatCOMBOpng2 options: jpeg, png
sync_modeBOOLEANfalse
seedoptINT-1-1–4294967295
negative_promptoptSTRING
scheduleroptCOMBOeuler2 options: euler, dpmpp_2m
use_beta_scheduleoptBOOLEANfalse
base_shiftoptFLOAT0.500–1
max_shiftoptFLOAT1.150–2
nag_scaleoptFLOAT3.00–10
nag_tauoptFLOAT2.50–5
nag_alphaoptFLOAT0.250–1
nag_endoptFLOAT0.250–1
reference_imageoptIMAGE
reference_strengthoptFLOAT0.650–1
reference_startoptFLOAT0.000–1
reference_endoptFLOAT1.000–1
lora1_nameoptSTRING
lora1_scaleoptFLOAT1.0-2–2
lora2_nameoptSTRING
lora2_scaleoptFLOAT1.0-2–2
lora3_nameoptSTRING
lora3_scaleoptFLOAT1.0-2–2

Outputs (1)

NameTypeDescription
IMAGEIMAGE