> ## Documentation Index
> Fetch the complete documentation index at: https://docs.comfy.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Flux.3 Image Klein in ComfyUI: Text-to-Image and Edit

> Run FLUX.3 [klein] locally in ComfyUI: open-weights text-to-image and instruction-driven image editing, with a distilled checkpoint for fast 4–16 step runs.

## About FLUX.3 \[klein]

FLUX.3 \[klein] is Black Forest Labs' open-weights FLUX.3 image model for local ComfyUI: text-to-image and instruction-driven image editing in one family, with a full checkpoint and a step-distilled variant for faster 4–16 step runs. Weights ship on Hugging Face under the FLUX Kommunity License — download once, run on your own GPU, no API key and no per-image credits.

Need the hosted path instead? FLUX.3 also runs as a Partner Node through [FLUX 3 Image](/tutorials/partner-nodes/black-forest-labs/flux-3-image) (billed per image). Use local klein weights on your GPU; use the Partner Node when you want the hosted model with no download.

**Model highlights:**

* Text-to-image and image editing from the same weights; edits take an instruction prompt plus reference images
* Two checkpoints: full Flux.3 Image Klein, and Distilled for guidance-free sampling in 4–16 steps
* Multi-reference prompting via `<ref_image_0>`, `<ref_image_1>`, and so on
* Optional Qwen3.5 9B prompt upsampler that expands short requests into full captions before generation
* Single-file checkpoints in bf16, int8 (convrot), and nvfp4, with a Qwen3-VL-4B text encoder and the Flux 2 VAE

**License**: [FLUX Kommunity License](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy/blob/main/LICENSE.md)

**Version requirement**: Flux.3 Klein templates need ComfyUI 0.41.0 or later (shipped in the 0.41.1 backport, ComfyUI#17070).

<Tip>
  <Tabs>
    <Tab title="Local users">
      Make sure your ComfyUI is updated.

      * [Download ComfyUI](https://www.comfy.org/download)
      * [Update Guide](/installation/update_comfyui)

      Workflows in this guide can be found in the [Workflow Templates](/interface/features/template).
      If you can't find them in the template, your ComfyUI may be outdated.

      If nodes are missing when loading a workflow, possible reasons:

      1. You are not using the latest ComfyUI version (Nightly version)
      2. Some nodes failed to import at startup
    </Tab>

    <Tab title="Cloud users">
      * [Cloud](https://cloud.comfy.org) will update after ComfyUI stable release.

      So, if you find any core node missing in this document, it might be because the new core nodes have not yet been released in the latest stable version. Please wait for the next stable release.
    </Tab>
  </Tabs>
</Tip>

## Flux.3 Image Klein Workflows

<h3 id="image_flux3_klein_t2i">
  Flux.3 Image Klein: Text to Image
</h3>

Generate an image from a prompt alone, with no input files. The workflow is a subgraph: open it to reach the loaders, the sampler, and the canvas size.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_flux3_klein_t2i-1.webp" alt="Flux.3 Image Klein text to image workflow preview" />

<CardGroup cols={2}>
  <Card title="Run on Comfy Cloud" icon="cloud" href="https://cloud.comfy.org/?template=image_flux3_klein_t2i&utm_source=docs&utm_medium=referral&utm_campaign=flux-3-klein">
    Open in Comfy Cloud
  </Card>

  <Card title="Download Workflow" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_flux3_klein_t2i.json">
    Download JSON or search "Flux.3 Image Klein: Text to Image" in Template Library
  </Card>
</CardGroup>

1. Enter your prompt in the subgraph's positive prompt widget
2. Set `width` and `height`, or pick a frame from `ResolutionSelector` (1:1 square by default)
3. Adjust `steps` (25 by default) and `cfg` (3.5 by default). The template carries a note to try 50 steps for better quality
4. Leave `enable_prompt_upsampler` off to generate from your own words, or turn it on to expand the prompt with the Qwen3.5 9B upsampler first
5. Click **Queue**. The image is saved by the `SaveImage` node to `ComfyUI/output/`

<h3 id="image_flux3_klein_distilled_t2i">
  Flux.3 Image Klein Distilled: Text to Image
</h3>

Generate an image from a prompt with the step-distilled checkpoint, which runs in 15 steps with no guidance. Prompt upsampling is on by default here, so a short prompt is expanded into a full caption before sampling.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_flux3_klein_distilled_t2i-1.webp" alt="Flux.3 Image Klein Distilled text to image workflow preview" />

<CardGroup cols={2}>
  <Card title="Run on Comfy Cloud" icon="cloud" href="https://cloud.comfy.org/?template=image_flux3_klein_distilled_t2i&utm_source=docs&utm_medium=referral&utm_campaign=flux-3-klein">
    Open in Comfy Cloud
  </Card>

  <Card title="Download Workflow" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_flux3_klein_distilled_t2i.json">
    Download JSON or search "Flux.3 Image Klein Distilled: Text to Image" in Template Library
  </Card>
</CardGroup>

1. Enter your prompt. The template upsamples it first, so a short description is enough
2. Set `steps` between 4 and 16 (15 by default). The distilled checkpoint runs with `cfg` 1, so raising `cfg` does not help
3. Pick a frame from `ResolutionSelector`
4. Click **Queue** to generate

**Example output**

![Flux.3 Image Klein Distilled text to image example](https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/output/image_flux3_klein_distilled_t2i.png)

<h3 id="image_flux3_klein_image_edit">
  Flux.3 Image Klein: Image Edit
</h3>

Edit a photo from an instruction prompt, with the original image connected as a reference. The instruction replaces the reference content: here the prompt changes the dress color to red while everything else stays in place.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_flux3_klein_image_edit-1.webp" alt="Flux.3 Image Klein image edit workflow preview" />

<CardGroup cols={2}>
  <Card title="Run on Comfy Cloud" icon="cloud" href="https://cloud.comfy.org/?template=image_flux3_klein_image_edit&utm_source=docs&utm_medium=referral&utm_campaign=flux-3-klein">
    Open in Comfy Cloud
  </Card>

  <Card title="Download Workflow" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_flux3_klein_image_edit.json">
    Download JSON or search "Flux.3 Image Klein: Image Edit" in Template Library
  </Card>
</CardGroup>

**Input materials**

Upload this file to the matching `LoadImage` node:

<CardGroup cols={2}>
  <Card title="fashion_portrait_blue_silk_gown_vis.png" icon="image" href="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/input/fashion_portrait_blue_silk_gown_vis.png">
    `LoadImage` node 11 · `fashion_portrait_blue_silk_gown_vis.png`
  </Card>
</CardGroup>

<div style={{display: 'grid', gridTemplateColumns: 'repeat(2, minmax(0, 1fr))', gap: '1rem', alignItems: 'start'}}>
  <img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/input/fashion_portrait_blue_silk_gown_vis.png" alt="fashion_portrait_blue_silk_gown_vis.png" style={{width: '100%', height: 'auto', objectFit: 'contain'}} />
</div>

1. Load your source image in the `LoadImage` node
2. Connect it to `Set Reference Multi Latent`. The first reference is `<ref_image_0>` in the prompt, the next is `<ref_image_1>`, and so on
3. Write the edit as a full description of the result. In the shipped example the positive prompt is `change the dress color to red`
4. Adjust the canvas with `Empty Flux 2 Latent` (1024 x 1024 in the template) if you want a different output size
5. Click **Queue**. `ImageCompare` shows the input and the result side by side

**Example output**

<div style={{display: 'grid', gridTemplateColumns: 'repeat(2, minmax(0, 1fr))', gap: '1rem', alignItems: 'start'}}>
  <img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/input/fashion_portrait_blue_silk_gown_vis.png" alt="Input image" style={{width: '100%', height: 'auto', objectFit: 'contain'}} />

  <img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/output/image_flux3_klein_image_edit.png" alt="Flux.3 Image Klein image edit example output" style={{width: '100%', height: 'auto', objectFit: 'contain'}} />
</div>

<h3 id="image_flux3_klein_distilled_image_edit">
  Flux.3 Image Klein Distilled: Image Edit
</h3>

Edit an image with the step-distilled checkpoint: one reference image, one instruction prompt, 16 steps, and no guidance.

<img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/templates/image_flux3_klein_distilled_image_edit-1.webp" alt="Flux.3 Image Klein Distilled image edit workflow preview" />

<CardGroup cols={2}>
  <Card title="Run on Comfy Cloud" icon="cloud" href="https://cloud.comfy.org/?template=image_flux3_klein_distilled_image_edit&utm_source=docs&utm_medium=referral&utm_campaign=flux-3-klein">
    Open in Comfy Cloud
  </Card>

  <Card title="Download Workflow" icon="download" href="https://github.com/Comfy-Org/workflow_templates/blob/main/templates/image_flux3_klein_distilled_image_edit.json">
    Download JSON or search "Flux.3 Image Klein Distilled: Image Edit" in Template Library
  </Card>
</CardGroup>

**Input materials**

Upload this file to the matching `LoadImage` node:

<CardGroup cols={2}>
  <Card title="woman_gold_earring_teal_top_portrait.png" icon="image" href="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/input/woman_gold_earring_teal_top_portrait.png">
    `LoadImage` node 11 · `woman_gold_earring_teal_top_portrait.png`
  </Card>
</CardGroup>

<div style={{display: 'grid', gridTemplateColumns: 'repeat(2, minmax(0, 1fr))', gap: '1rem', alignItems: 'start'}}>
  <img src="https://raw.githubusercontent.com/Comfy-Org/workflow_templates/main/input/woman_gold_earring_teal_top_portrait.png" alt="woman_gold_earring_teal_top_portrait.png" style={{width: '100%', height: 'auto', objectFit: 'contain'}} />
</div>

1. Load the image you want to edit and connect it to `Set Reference Multi Latent`
2. Write the edit prompt. The shipped example replaces an earring and describes the new one in detail, including what must not appear
3. Keep `steps` in the 4 to 16 range and leave `cfg` at 1
4. Click **Queue** and compare the input with the result in `ImageCompare`

## Flux.3 Image Klein Model Downloads

<Note>
  The Flux.3 Klein weights live in the gated repository [black-forest-labs/flux-3-image-klein-comfy](https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy). Open it, accept the license agreement, and then download the files. The templates use the int8 (convrot) single-file checkpoints; bf16 and nvfp4 versions of the same checkpoints are in the same repository.
</Note>

<CardGroup cols={2}>
  <Card title="flux3_image_klein_int8_convrot.safetensors" icon="download" href="https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy">
    Diffusion model, full Flux.3 Image Klein checkpoint.
  </Card>

  <Card title="flux3_image_klein_sd_int8_convrot.safetensors" icon="download" href="https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy">
    Diffusion model, step-distilled checkpoint for 4 to 16 steps.
  </Card>

  <Card title="qwen3vl_4b_int8_convrot.safetensors" icon="download" href="https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy">
    Text encoder for both checkpoints. Load it with `CLIPLoader` type `flux3`.
  </Card>

  <Card title="qwen3.5_9b_flux3_prompt_upsampler_int8_convrot.safetensors" icon="download" href="https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy">
    Prompt upsampler used by the text to image templates.
  </Card>

  <Card title="flux2-vae.safetensors" icon="download" href="https://huggingface.co/black-forest-labs/flux-3-image-klein-comfy">
    VAE for Flux.3 Klein. The Flux 2 VAE.
  </Card>
</CardGroup>

**Model storage location**

```
📂 ComfyUI/
├── 📂 models/
│   ├── 📂 diffusion_models/
│   │      ├── flux3_image_klein_int8_convrot.safetensors
│   │      └── flux3_image_klein_sd_int8_convrot.safetensors
│   ├── 📂 text_encoders/
│   │      ├── qwen3vl_4b_int8_convrot.safetensors
│   │      └── qwen3.5_9b_flux3_prompt_upsampler_int8_convrot.safetensors
│   └── 📂 vae/
│          └── flux2-vae.safetensors
```

## Prompting and reference tips

* **Write the result, not the change.** The image editing templates expect a full caption of the finished image with the edit folded in, which is why the examples describe the new object in detail instead of saying "change this".
* **References are added to both conditionings.** Connect extra images to `Set Reference Multi Latent` in order, address them as `<ref_image_0>`, `<ref_image_1>`, and so on, and add each one to both the positive and the negative prompt, the way the reference pipeline does.
* **Reference size is a cost dial.** The templates resize each reference to roughly 1 megapixel and the output latent takes that size. Keeping references at their native size, which Black Forest Labs' own pipeline does up to about 16 megapixels, keeps more detail in the edit at a higher cost.
* **Step count depends on the checkpoint.** The full checkpoint runs at 25 steps and guidance 3.5 in the templates, with a note to try 50 steps for better quality. The step-distilled checkpoint runs at 15 or 16 steps with guidance fixed at 1, and it is the one to use when you want a fast pass.
* **The templates ship a `Create Bounding Boxes` node.** It draws boxes over the source image for planning regional edits, and its list of boxes is shown in the `Preview Any` node so you can fold the regions into the prompt.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.