ComfyUI Node

SeedEdit 3.0 (ByteDance)

SeedEdit 3.0 from ComfyUI — check the model ID before you rely on this one

By charlyad142·Created 10 months ago·Updated 10 months ago· 0
SeedEdit 3.0 (ByteDance)
  • image
  • image
  • output_url
prompt
api_token
seed-1
guidance_scale5.50

Let's be straight with you up front: this node wraps ByteDance's SeedEdit 3.0, the instruction-based image editor that lives on the closed, API-only side of ByteDance's lineup - and the model ID it calls, bytedance/seededit-3.0, no longer resolves on Replicate's site as of this writing. The page existed through late 2025 and now returns a 404. The model may have been renamed or pulled, so before you build a workflow around this node, check whether the ID is still current. If it isn't, every run dies on the API call. That's the story behind the "0 impressions" this page gets, and it's not the node's fault so much as its model's.

When it does work, what you get is ByteDance's take on instruction editing: drop in an image, describe the change, and SeedEdit edits it. Its distinctive knob is guidance_scale, which controls how literal the result is - crank it toward 10 for strict prompt adherence, dial it down toward 1 for looser, more creative interpretations. SeedEdit has never shipped open weights, so like the Seedream node in this same pack, an API wrapper is the only ComfyUI path in at all.

How it works

Same skeleton as every node in the pack: your image becomes a base64 PNG data URL, it's sent to replicate.Client.run("bytedance/seededit-3.0", ...) alongside the prompt, and the returned URL is downloaded and converted back into a tensor. SeedEdit's response is a single image URL, which the node handles as a string rather than a list - that part of the code is fine.

The inputs that matter

  • image - the image to edit, as a ComfyUI IMAGE tensor.
  • prompt - the edit instruction. Plain language, the way you'd describe the change to a human editor.
  • api_token - your Replicate token, or leave blank if REPLICATE_API_TOKEN is set.

The optional pair is small: seed (-1 for random, a fixed number for reproducibility) and guidance_scale (1.0–10.0, default 5.5). That second one is the whole personality of the model, and 5.5 is a reasonable middle ground - go up when the model wanders off your instruction, down when it's being too literal and killing the artistry.

Outputs

image - the edited result as a standard IMAGE tensor, ready for a Save Image or downstream nodes. output_url - the direct URL of the result as a STRING. Both behave exactly like the rest of the pack.

Installing it

It ships in the comfyUI_charly_replicate_api pack alongside the two Qwen edit nodes and Seedream 4. ComfyUI Manager, search "ComfyUI Replicate Image Generation & Edit", or:

cd ComfyUI/custom_nodes
git clone https://github.com/charlyad142/comfyUI_charly_replicate_api

Restart ComfyUI. Dependencies are the replicate client plus requests and Pillow - no model downloads, since everything runs on Replicate's cloud. You need a token from replicate.com/account/api-tokens, and every edit is a paid call.

Where people get burned

The pack's universal trap first: a failure returns a red 512×512 placeholder image with "Error: ..." written into the output_url output. When the preview goes red, read that string - it's usually the only clue you'll get.

And then the big one, which is specific to this node: verify bytedance/seededit-3.0 still exists on Replicate before you wire this into anything important. It's a hardcoded string in the pack's replicate_nodes.py. If the model moved, the fix is either editing that string to the current ID or switching to a node whose model is actually live. Given how heavily the community relies on Qwen-Edit for instruction editing anyway, the honest advice is: if SeedEdit gives you grief, the single-image Qwen node in the same pack is a working, actively-hosted alternative with the same input/output shape.

CategoryReplicate/SeedEdit

Inputs (5)

NameTypeDefaultDescription
imageIMAGE
promptSTRING
api_tokenSTRING
seedoptINT-1
guidance_scaleoptFLOAT5.501–10

Outputs (2)

NameTypeDescription
imageIMAGE
output_urlSTRING