<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: AI-KSK</title>
    <description>The latest articles on DEV Community by AI-KSK (@ai-ksk).</description>
    <link>https://dev.to/ai-ksk</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4145687%2Fb1efe52a-9c7c-4abc-9138-8d425fcf96e6.png</url>
      <title>DEV Community: AI-KSK</title>
      <link>https://dev.to/ai-ksk</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/ai-ksk"/>
    <language>en</language>
    <item>
      <title>FLUX 3 Klein Tested: 5.6B Open Weights, Native 4K, and Seven ComfyUI Workflows</title>
      <dc:creator>AI-KSK</dc:creator>
      <pubDate>Mon, 19 Oct 2026 11:54:34 +0000</pubDate>
      <link>https://dev.to/ai-ksk/flux-3-klein-tested-56b-open-weights-native-4k-and-seven-comfyui-workflows-jj0</link>
      <guid>https://dev.to/ai-ksk/flux-3-klein-tested-56b-open-weights-native-4k-and-seven-comfyui-workflows-jj0</guid>
      <description>&lt;p&gt;&lt;em&gt;A hands-on look at Black Forest Labs' newest open image model — where it wins, where it loses, and which of the seven workflows you should actually start with.&lt;/em&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The short version
&lt;/h2&gt;

&lt;p&gt;Black Forest Labs released &lt;strong&gt;FLUX 3 Image Klein&lt;/strong&gt; on October 15, 2026, and it is genuinely open weights under the FLUX Kommunity License. That means free commercial use for individuals and companies under $5M annual revenue — not an API key, not a waitlist.&lt;/p&gt;

&lt;p&gt;On paper it reads like a spec sheet:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;5.6B parameters&lt;/strong&gt; — the smallest model in its comparison class&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Native 4K&lt;/strong&gt;, up to ~16 megapixels&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Text-to-image, image editing, and multi-reference generation&lt;/strong&gt; (up to 10 reference images)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounding boxes&lt;/strong&gt; for layout control&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;11.2 GB in BF16, 5.6 GB in FP8&lt;/strong&gt; — and INT8 builds run on 8 GB of VRAM&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In a 100-image composite benchmark run for this test, FLUX 3 Klein scored &lt;strong&gt;84.68&lt;/strong&gt; against Qwen Image 2.1's &lt;strong&gt;85.72&lt;/strong&gt;. A 1.04-point gap. That is not "catching up" territory anymore; it is a coin flip depending on the task.&lt;/p&gt;

&lt;p&gt;My conclusion after running 28 comparison tests and seven workflows: &lt;strong&gt;use the distilled model as your default&lt;/strong&gt;. The quality difference against the base model is smaller than the speed difference, and in a few task types the distilled path actually wins.&lt;/p&gt;




&lt;h2&gt;
  
  
  Base or distilled? The 28-test answer
&lt;/h2&gt;

&lt;p&gt;BFL shipped two checkpoints:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Checkpoint&lt;/th&gt;
&lt;th&gt;Steps&lt;/th&gt;
&lt;th&gt;CFG&lt;/th&gt;
&lt;th&gt;Best for&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;flux3_image_klein_base&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;50&lt;/td&gt;
&lt;td&gt;3.5&lt;/td&gt;
&lt;td&gt;Fine-tuning, maximum fidelity, A/B reference&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;code&gt;flux3_image_klein_sd&lt;/code&gt; (step-distilled)&lt;/td&gt;
&lt;td&gt;16&lt;/td&gt;
&lt;td&gt;1.0&lt;/td&gt;
&lt;td&gt;Everything else&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The distilled model is trained to run &lt;strong&gt;without classifier-free guidance&lt;/strong&gt; — CFG stays at 1.0. That alone cuts sampling cost roughly in half before you even count the step reduction.&lt;/p&gt;

&lt;p&gt;Where the base model still earns its keep:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Portraits&lt;/strong&gt; — the base checkpoint renders slightly heavier facial texture, which reads as more photographic&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Final deliveries&lt;/strong&gt; where you can afford 50 steps and want maximum literal fidelity&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Where the distilled model wins or matches:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Product text&lt;/strong&gt; — subjectively cleaner rendering, fewer artifacts on typography&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pose editing&lt;/strong&gt; — more stable across seeds&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Iteration speed&lt;/strong&gt; — 16 steps means you can explore 3x more seeds in the same wall time&lt;/li&gt;
&lt;/ul&gt;

&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Practical rule:&lt;/strong&gt; start every task on the distilled checkpoint. Reach for base only when a specific output needs more literal detail, and use workflow 7 (below) to compare on identical seeds.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  The seven workflows, and when to use each
&lt;/h2&gt;

&lt;p&gt;The package covers the four official graphs plus three derived ones. They are numbered in a suggested learning order.&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Text-to-Image (official, base model)
&lt;/h3&gt;

&lt;p&gt;The canonical graph: text encode → latent → sample → decode → save.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 50 steps, CFG 3.5, &lt;code&gt;euler&lt;/code&gt; / &lt;code&gt;simple&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Resolution:&lt;/strong&gt; set on &lt;code&gt;EmptyFlux2LatentImage&lt;/code&gt;, or through a ResolutionSelector node&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Includes&lt;/strong&gt; &lt;code&gt;CreateBoundingBoxes&lt;/code&gt; and &lt;code&gt;Flux3LayoutPrompt&lt;/code&gt; stubs, so you can switch from plain prompting to layout-guided prompting without rebuilding the graph&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Use this when you need the reference-quality output, or when you are comparing against the distilled graph.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Image Editing (official, base model)
&lt;/h3&gt;

&lt;p&gt;The other official graph, and the one that shows what Klein can actually do.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 50 steps, CFG 1&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bounding-box editing&lt;/strong&gt; via &lt;code&gt;CreateBoundingBoxes&lt;/code&gt; + &lt;code&gt;Flux3LayoutPrompt&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-image input&lt;/strong&gt; through &lt;code&gt;ReferenceMultiLatent&lt;/code&gt; and &lt;code&gt;BatchImagesNode&lt;/code&gt; — up to 10 references, addressed in the prompt as &lt;code&gt;ref_image_0&lt;/code&gt; through &lt;code&gt;ref_image_9&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;ComfySwitchNode&lt;/code&gt;&lt;/strong&gt; toggles edit variants without duplicating the graph&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompt upsampler included&lt;/strong&gt; (&lt;code&gt;qwen3.5_9b_flux3_prompt_upsampler_w4a8&lt;/code&gt;) — bypass it when you already have a polished caption&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The prompt rule that matters: describe the &lt;strong&gt;final frame&lt;/strong&gt;, not the change. "Swap the earring" degrades badly. "The woman from ref_image_0, now wearing a silver hoop earring, same pose, same lighting" works.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Distilled Text-to-Image
&lt;/h3&gt;

&lt;p&gt;The 9-node fast path. Same latent space and VAE as the base graph, so &lt;strong&gt;seeds and resolutions are interchangeable&lt;/strong&gt; between the two — which is what makes fair comparison possible.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 16 steps, no CFG guidance&lt;/li&gt;
&lt;li&gt;Prompt upsampler optional&lt;/li&gt;
&lt;li&gt;Nothing to configure beyond prompt and resolution&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you only learn one workflow, learn this one.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Distilled Image Editing
&lt;/h3&gt;

&lt;p&gt;Same editing capability as graph 2, on the distilled checkpoint. This is the iteration workhorse: run five seeds here, pick the best, then optionally re-run it on the base graph for the final.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 16 steps, no CFG guidance&lt;/li&gt;
&lt;li&gt;Full bounding-box + multi-reference support&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;PrimitiveStringMultiline&lt;/code&gt; keeps long captions manageable&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  5. Multi-Reference 1 → 10
&lt;/h3&gt;

&lt;p&gt;Feed one to ten reference images and assign each a job in the prompt.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 16 steps, no CFG guidance&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ReferenceMultiLatent&lt;/code&gt; packs references into a single conditioning tensor&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ConditioningZeroOut&lt;/code&gt; lets you disable a slot without deleting its image — fast A/B of reference sets&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The honest limitation:&lt;/strong&gt; 1–2 references is the sweet spot. Accuracy degrades noticeably past 4 references. If you are stacking ten images, expect to fight for consistency.&lt;/p&gt;

&lt;h3&gt;
  
  
  6. Bounding-Box Layout Edit
&lt;/h3&gt;

&lt;p&gt;The workflow that makes boxes do real work.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Sampler:&lt;/strong&gt; 16 steps, no CFG guidance&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;CreateBoundingBoxes&lt;/code&gt; defines &lt;code&gt;src_bbox&lt;/code&gt; / &lt;code&gt;tgt_bbox&lt;/code&gt; pairs on a &lt;strong&gt;0–1000 normalised grid&lt;/strong&gt;, so the same box works at any output resolution&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;Flux3LayoutPrompt&lt;/code&gt; converts boxes into the caption syntax the model expects&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The technique worth knowing: &lt;strong&gt;pin everything you do not want to move&lt;/strong&gt; by giving it an identical source and target box. An unmoved box is a "keep this exactly here" instruction, and it is far more reliable than asking the model politely in prose.&lt;/p&gt;

&lt;p&gt;One expectation to set: bounding boxes bias placement strongly but they are &lt;strong&gt;not a hard mask&lt;/strong&gt;. Expect small drift, especially on organic shapes.&lt;/p&gt;

&lt;h3&gt;
  
  
  7. Base vs Distilled A/B
&lt;/h3&gt;

&lt;p&gt;Two checkpoints in one graph, one shared text encoder, one shared VAE, identical seed and caption.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Base path: 25 steps, CFG 3.5&lt;/li&gt;
&lt;li&gt;Distilled path: 16 steps, no CFG guidance&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ImageCompare&lt;/code&gt; renders both next to the source&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the graph that settles arguments. Before you commit a client deliverable to one checkpoint, run it here.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Note: the A/B graph ships with a 25-step base path rather than 50 — a deliberate time-saving default. Raise it if you want the full-fidelity comparison.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  What Klein is actually good at (and what it is not)
&lt;/h2&gt;

&lt;p&gt;Across the test runs, the strongest areas were:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Detail fidelity on complex subjects.&lt;/strong&gt; Full-body figures, hands, shoes, handbags — pass rates were solid. Multi-element relationships (two people, a bicycle, a coffee cup) mostly held together.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Local edits.&lt;/strong&gt; Earring swaps, cup-to-vase replacement, clothing recolours, standing-to-sitting pose changes — the majority landed cleanly on the tested subjects.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Multi-reference fusion.&lt;/strong&gt; Character, outfit, and scene blending performed well within the 1–2 reference range.&lt;/p&gt;

&lt;p&gt;The problems are real too:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Consistency drift&lt;/strong&gt; on multi-reference work — the community reports it and I reproduced it&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Occasional limb failures&lt;/strong&gt; on complex poses&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Bounding boxes are a strong hint, not a guarantee&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;None of these are unique to Klein. Qwen Image 2.1 shows the same failure modes. The difference is that Klein's floor is now high enough that these read as normal open-model limitations rather than dealbreakers.&lt;/p&gt;




&lt;h2&gt;
  
  
  Hardware notes
&lt;/h2&gt;

&lt;p&gt;The distilled model on the INT8 build runs on 8 GB of VRAM, which is the headline number. In practice:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;FP8 (5.6 GB)&lt;/strong&gt; is the sensible default for consumer cards&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;BF16 (11.2 GB of weights)&lt;/strong&gt; for quality-critical work on 24 GB+ cards&lt;/li&gt;
&lt;li&gt;BFL reports roughly &lt;strong&gt;4 seconds for a 1-megapixel image on an RTX 5090&lt;/strong&gt;, and under 9 seconds on an RTX 4070 through ComfyUI (vendor figures, not re-measured here)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For local deployment, Diffusers added day-one support through &lt;code&gt;ModularPipeline&lt;/code&gt;. One caveat worth knowing: the prompt-upsampler component can be popped out of the block graph if you are running a newer &lt;code&gt;transformers&lt;/code&gt;, and for cover art or product shots with detailed prompts you will not miss it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Getting the workflows
&lt;/h2&gt;

&lt;p&gt;All seven graphs are published together, each with its own model entry, cover, and dependency list:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://civitai.com/models/3008251" rel="noopener noreferrer"&gt;Civitai — FLUX 3 Klein workflow collection&lt;/a&gt;&lt;/strong&gt; — seven separate workflow entries, one per graph&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;a href="https://www.bilibili.com/video/BV1btJb6LEGS/" rel="noopener noreferrer"&gt;Bilibili — full Chinese walkthrough&lt;/a&gt;&lt;/strong&gt; — 28 comparison tests, parameter settings, and the failure cases&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&lt;a href="https://youtu.be/P2bt83Op9bY" rel="noopener noreferrer"&gt;YouTube — same walkthrough&lt;/a&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you want to run these without a local GPU, the workflows are also set up on RunningHub:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;International:&lt;/strong&gt; &lt;a href="https://www.runninghub.ai/zh-cn/user-center/1846601088051884033/webapp?inviteCode=rh-v1111" rel="noopener noreferrer"&gt;RunningHub&lt;/a&gt; — invite code &lt;code&gt;rh-v1111&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;China mainland:&lt;/strong&gt; &lt;a href="https://www.runninghub.cn/user-center/1892566146468511746/webapp?inviteCode=rh-v1111" rel="noopener noreferrer"&gt;RunningHub CN&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Cloud GPU / ComfyUI images:&lt;/strong&gt; &lt;a href="https://passport.compshare.cn/register?referral_code=A7fTQUYY9lCDFJwA6MMvoq" rel="noopener noreferrer"&gt;Youyun&lt;/a&gt; &lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Verdict
&lt;/h2&gt;

&lt;p&gt;FLUX 3 Klein is not the model that beats everything. It is the model that makes "open weights, native 4K, editing, and multi-reference" a reasonable default instead of a compromise.&lt;/p&gt;

&lt;p&gt;The distilled checkpoint is the one to use. The seven workflows cover the realistic use cases without demanding you understand the whole graph taxonomy first. And at 1.04 points behind Qwen Image 2.1 on a 100-image benchmark, the choice between them comes down to workflow preference rather than capability.&lt;/p&gt;

&lt;p&gt;If your work involves local generation, 4K output, or editing that has to hold up on a deadline — this is worth testing this week.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Written after 28 comparison runs and seven workflow tests on locally deployed FLUX 3 Image Klein. Weights: &lt;a href="https://huggingface.co/black-forest-labs/flux-3-image-klein" rel="noopener noreferrer"&gt;black-forest-labs/flux-3-image-klein&lt;/a&gt;. Weights licensed under the FLUX Kommunity License.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>ai</category>
      <category>opensource</category>
      <category>comfyui</category>
      <category>tutorial</category>
    </item>
  </channel>
</rss>
