Nodes/Emu35-Comfyui-Nodes/Emu 3.5 Sampler
ComfyUI Node

Emu 3.5 Sampler

The original, with a negative prompt and a fake 'steps' knob

By EricRollei·Created 9 months ago·Updated 9 months ago· 5
Emu 3.5 Sampler
  • model
  • tokenizer
  • vq_model
  • input_image
  • image
  • text
  • reasoning
prompt
negative_prompt
width1024
height1024
steps50
cfg_scale5.0
seed0

Emu 3.5 Sampler is the pack's original V1 generation node, and it's the one that looks most like a diffusion node - which is both its comfort and its trap. It gives you width, height, steps, CFG, and a negative prompt, all in the familiar ComfyUI layout. But Emu 3.5 isn't a diffusion model, and the sampler's job is to translate those familiar knobs into the model's actual language: a chat-style task template, a CFG logits processor, and a token-by-token autoregressive rollout where the image comes out as a visual token stream that the vision tokenizer turns back into pixels.

Here's the thing worth knowing before you start: the steps input (default 50) doesn't actually drive anything. There's no diffusion step loop in this code - generation runs until the model emits the end-of-image token. The field is vestigial, carried over for familiarity. Same with negative_prompt in a slightly different way: it's real, but it works by swapping what you type into the unconditional prompt used for CFG guidance, rather than the way SD negative prompts steer a noise prediction. Leave it blank and the pack uses the standard empty unconditional prompt, which is what the official configs do.

The inputs that matter

  • prompt - your description. Multiline, natural language.
  • negative_prompt - optional; feeds the CFG unconditional side. Blank is the safe default.
  • width / height - 256 to 2048, step 64. These map to the latent grid (pixels ÷ 16) that the logits processor enforces.
  • cfg_scale - guidance, default 5.0.
  • seed - fixed for reproducibility.
  • input_image - an optional IMAGE port. Treat it as aspirational: the V1 code comments admit image-editing support is stubbed ("For now, I'll implement basic T2I"). If you want actual image editing, use the V2 X2I node instead.

Outputs

  • image (IMAGE), text (STRING), reasoning (STRING) - same trio as the other samplers; text catches anything the model narrates, reasoning carries chain-of-thought if the model produces it.

Install

cd ComfyUI/custom_nodes
git clone --recursive https://github.com/EricRollei/Emu35-Comfyui-Nodes.git emu35
cd emu35
pip install -r requirements.txt

Weights in ComfyUI/models/emu35/ - BAAI/Emu3.5-Image (34B, BF16) plus the vision tokenizer, or the NF4 build for 24GB cards.

Verdict

It works, and if you're porting an old workflow or just want explicit resolution control, it's fine. But it's the least refined sampler in the pack: the input_image port is a mirage, steps is decoration, and the V2 T2I sampler gives you real resolution control through aspect ratios plus proper text/image sampling knobs and tiled decoding. If you're choosing fresh, pick V2. If you're here because a shared workflow won't run without it, the only genuinely useful extra this node has is the negative prompt - and even that, the V2 nodes handle internally.

CategoryEmu3.5

Inputs (11)

NameTypeDefaultDescription
modelEMU_MODEL
tokenizerEMU_TOKENIZER
vq_modelEMU_VQ
promptSTRING
negative_promptSTRING
widthINT1024256–2048
heightINT1024256–2048
stepsINT501–200
cfg_scaleFLOAT5.01–20
seedINT00–18446744073709550000
input_imageoptIMAGE

Outputs (3)

NameTypeDescription
imageIMAGE
textSTRING
reasoningSTRING