Model reference · open weights
ETCHR-FLUX.2-klein is an open-weight image model from internlm. ETCHR-FLUX.2-klein-9B (BF16) weighs 34.7 GB; the smallest configuration that runs it is RTX 5090 32 GB.
Summary of the internlm/ETCHR-FLUX.2-klein-9B model card, 2026-10-01
What it is
| Released by | internlm |
|---|---|
| Released | 2026-05-21 |
| Parameters | 9.1B |
| VRAM | 34.7 GB for the weights |
What it runs on
| Card | One image | Memory |
|---|---|---|
| RTX 3060 12 GB … RTX 4090 24 GB | does not fit | |
| RTX 5090 32 GB | fits (encoders offloaded) | 31.0 GB |
| L40S 48 GB | tight | 44.0 GB |
| A100 80 GB | fits | 78.2 GB |
| H100 80 GB | fits | 78.1 GB |
| RTX PRO 6000 Blackwell 96 GB | fits | 93.8 GB |
| DGX Spark (GB10) 128 GB unified | fits | 107 GB |
| H200 141 GB | fits | 138 GB |
| B200 180 GB | fits | 176 GB |
From the model card
📖Paper | 🏠Homepage | 🤗ETCHR-FLUX.2-klein-9B Model | 🤗ETCHR SFT-400K Dataset | 🤗ETCHR GRPO-10K Dataset | 🤗DL3DV-2K Benchmark
ETCHR-FLUX.2-klein-9B is a novel question-conditioned, reasoning-aware image editor designed to serve as a decoupled visual reasoning assistant for Multimodal Large Language Models. By decoupling the specialized image editor from the downstream understanding model, ETCHR bridges the critical bottleneck where a purely textual chain of thought fails in fine-grained focus or complex spatial transformations.
We are thrilled to introduce ETCHR (Editing To Clarify and Harness Reasoning), a novel question-conditioned, reasoning-aware image editor built on FLUX.2-klein-base-9B designed to serve as a decoupled visual reasoning assistant for Multimodal Large Language Models (MLLMs). By decoupling the specialized image editor from the downstream understanding model, ETCHR bridges the critical bottleneck where a purely textual chain of thought fails in fine-grained focus or complex spatial transformations.
We evaluate ETCHR across five distinct task families spanning fine-grained perception, chart understanding, logic reasoning, jigsaw restoration, and 3D understanding. Across all evaluated backbones, ETCHR consistently yields major improvements in Pass@1 accuracy:
Prepare your environment:
git clone https://github.com/InternLM/ETCHR.git
conda create -n ETCHR python==3.11
conda activate ETCHR
cd RL/Pref-GRPO
bash env_setup.sh fastvideo
pip install "vllm>=0.11.0"
pip install qwen-vl-utils==0.0.14
We Provide an example code running ETCHR on DL3DV-2K Benchmark in Evaluation/inference_dl3dv.py, you can start the evaluation with the following two steps:
Step 1: start a VLLM server for an understanding model (eg. Qwen3-VL-8B, Kimi K2.5, ...).
cd Evaluation
bash launch_vllm.sh
Step 2: Run ETCHR atop any understanding model
python inference_dl3dv.py
ETCHR can assist with a broad spectrum of understanding tasks, including fine-grained perception, chart reasoning, maze navigation, jigsaw puzzles, and 3D spatial understanding.
Our work is based on FLUX.2-klein-base-9B, so please follow FLUX Non-Commercial License.
If you find this project useful, please kindly cite:
@article{zhang2026etchr,
title={ETCHR: Editing To Clarify and Harness Reasoning},
author={Beichen Zhang, Yuhong Liu, Jinsong Li, Yuhang Zang, Jiaqi Wang, Dahua Lin},
journal={arXiv preprint arXiv:2605.23897},
year={2026}
}
The base model is FLUX.2-klein-base-9B, a powerful image-to-image model.
The work is built upon DiffSynth-Studio and Pref-GRPO, two excellent codebases for Diffusion models training!
Quoted from the model card on Hugging Face. The full card is behind the Hugging Face link above.
Running it yourself
Rent a machine by the hour. Runs as it is with diffusers, on the machine, in Python.
# on your rented machine: pip install diffusers transformers accelerate
import torch
from diffusers import DiffusionPipeline
from diffusers.utils import load_image
pipe = DiffusionPipeline.from_pretrained("internlm/ETCHR-FLUX.2-klein-9B", torch_dtype=torch.bfloat16).to("cuda")
start = load_image("/workspace/in.png")
image = pipe(prompt="the same scene at golden hour", image=start).images[0]
image.save("/workspace/out.png")