Keyer (SAM, not shipped)
This SAM keyer ships empty — here's what to use instead
- image
- sam_model
- mask
- masked_image
Blunt version: Keyer (SAM, not shipped) doesn't do anything. Radiance 3.5.0 bundles no SAM runtime. The node is hidden from the node menu (it's flagged deprecated in the pack), it still loads inside saved graphs so nothing breaks, and if you actually execute it you get a clear error rather than an image. The display name - with "not shipped" right there in it - is the author being honest rather than quietly letting you click a button that lies to you.
The history explains why it lingers. It used to return discs drawn around your click points, which is to say it made a shape that looked like a mask and had nothing to do with segmentation. That's a bad thing for a node called a keyer, and rather than maintain the illusion the pack disabled it. A real SAM2 backend is listed as a "planned fix", with removal in 4.0 as the alternative.
The plumbing that's still there
If you're reading this because an old graph has the node in it, here's what the schema carries so you can see what was intended. image was the plate, sam_model was a SAM_MODEL typed input (from the loader node), points was a JSON array of coordinates like [[256, 256]], and point_labels was the matching array of 0/1 flags - 1 being "this point is on the object". Optional text_prompt and bbox were there for text- and box-driven selection. The outputs were a mask and a masked_image.
None of that runs. There is no SAM_MODEL producer either - the loader beside it is just as empty. Expect an error whose text names the retirement, not a crash.
What to actually use
The KB's SAM panel has the current state of the lineage, and it's moved a long way past the original: SAM and SAM 2 are Apache-2.0 and still in wide use, and SAM 3 added promptable concept segmentation, where a short noun phrase (or an example image) returns masks for every matching instance - which folded the old GroundingDINO-plus-SAM text-to-mask pipeline into one model and is why SAM 3 shows up everywhere in 2026 mask editors. ComfyUI's own SAM node family, plus the mainstream segmentation packs, give you point, box and text prompting today.
If what you actually want is a matte of the foreground rather than a mask of a specific object, you don't want SAM at all - background removal is a different job with different models, covered in background-removal.md. SAM is the right tool when you need that object, zero-shot, which is why it's a targeted-editing front end rather than a chroma-key replacement.
Install (for the rest of the pack, since that's what ships)
Radiance is still worth installing for the EXR/colour/review side even without this node:
ComfyUI Manager → search Radiance → install → restart → refresh. Or:
cd ComfyUI/custom_nodes
git clone https://github.com/fxtd-studios/radiance.git
cd radiance
python -m pip install -r requirements.txt
Note the licence split if you land on SAM 3 later: SAM and SAM 2 are Apache 2.0, SAM 3 ships under Meta's own SAM Licence with its own acceptable-use terms. That's a real consideration if the mask is going into something you ship.
The takeaway
Don't spend an evening debugging this node. It's a placeholder kept alive so old workflows open cleanly, and the honest label is a feature, not a bug - plenty of packs would have left a fake result in place for years. Use a maintained SAM node, or a background-removal model if your actual goal is a foreground matte.
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| image | IMAGE | — | |
| sam_model | SAM_MODEL | — | |
| points | STRING | [[256, 256]] | — |
| point_labels | STRING | [1] | — |
| text_promptopt | STRING | — | |
| bboxopt | STRING | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| mask | MASK | — |
| masked_image | IMAGE | — |