Pruna Open-Sources 6-Step Object Removal for Qwen-Image

Introduction
Pruna AI has open-sourced P-Q-Image-2.1-Remove-Object, a set of three LoRA adapters for Alibaba's Qwen-Image-2.1 that do one job very well: remove the thing you point at and leave everything else alone. Draw a rough red outline around a person, a lamp stand, or a stray phone, and the LoRA fills the gap with what plausibly sits behind it. Its shadow or reflection goes too.
The weights are on Hugging Face, with a ComfyUI export that ships ready-to-run workflows and a free browser Space for quick tests. The fast variants run in 6 or 8 steps with no CFG, on top of Pruna's own Qwen-Image-2.1 distillation LoRA. Pruna announced the release on November 12, 2026.
What Shipped
There are three adapters, one file each, all LoRA rank 32:
- 6-step (the recommended default). It runs on the distilled model at adapter strength 0.7.
- 8-step. It also runs on the distilled model at strength 0.7, with a fixed sigma schedule.
- base. It runs on plain Qwen-Image-2.1 at the usual 40 steps and strength 1.0. It's slower, but it avoids the slight drift that few-step models can add.
The two fast variants pair with matching files from PrunaAI/P-Q-Image-2.1, the distillation LoRA we covered when its 6-step v0.2 update landed. That distillation LoRA always runs at 1.0 underneath.
Why it matters: Pruna's model card says plain Qwen-Image-2.1 tends to change the rest of a photo during edits, and can even shift it so the output no longer lines up with the input. That gets worse in few-step mode. These LoRAs were trained for both halves of a clean removal: a believable fill where the object was, and no change anywhere else. So the result lines up with your original pixels and can drop straight back into a comp.
Where to Run It Today
- In the browser: the free Hugging Face Space lets you test it in a minute.
- In ComfyUI: grab PrunaAI/P-Q-Image-2.1-Remove-Object-Comfy. It includes bf16 LoRAs, 6-step and 8-step workflow JSONs, and a small custom node called Precise Removal Outline (category Pruna).
- In Python: the main model card uses Diffusers'
QwenImage21Pipeline. You'll need a CUDA GPU.
ComfyUI setup
- Update ComfyUI to a build with native Qwen-Image-2.1 support.
- Download the Qwen-Image-2.1 diffusion model, text encoders and VAE from Comfy-Org/Qwen-Image-2.1. Then download the distillation LoRA from PrunaAI/P-Q-Image-2.1-Comfy and the removal LoRA from the Comfy repo above. Each workflow has a Model links note with direct URLs.
- Copy
precise_removal_outline/intoComfyUI/custom_nodes/and install itsrequirements.txt(OpenCV). Then restart ComfyUI. - Drag
p_q_image_2.1_remove_object_v0.1_6step.jsononto the canvas and press Run. It opens on a sample photo with the mask already painted.
To work on your own photo, load it, right-click and choose Open in MaskEditor, then paint over the object. The mask is optional. With no mask, the instruction alone decides what goes.
Python install
pip install 'torch>=2.4.0' 'transformers>=5.17' accelerate peft pillow numpy opencv-python-headless
pip install git+https://github.com/huggingface/diffusers@6256aa7666cedd47443adc8f82da9a10e110b09cThe repo's draw_outline.py draws the outline exactly the way the model expects. That's a pure #FF0000 ring that starts 2 px outside your mask and is 3 px wide, or 4 px when the photo's short side is over 900 px. Keep the outlined image as a PNG, since JPEG shifts the red.
Prompts That Work
Name the object as it appears, and say which one when there are several. When you use an outline, end with Pruna's outline sentence (the helper's outline_prompt adds it for you):
Remove the person with the umbrella walking across the plaza. The area to edit is outlined in red. Remove the red outline as well.Remove the two light stands, with the LED light and the boom arm. The area to edit is outlined in red. Remove the red outline as well.Remove the phone and the raised arm holding it. The area to edit is outlined in red. Remove the red outline as well.These are examples from Pruna's own 18-photo test set. In the plaza shot, the outline covered only the walker, and their long reflection on the wet paving still disappeared.
Tips and Limits
- Keep the default strength. Use 0.7 for the fast variants. Lower gives cleaner textures, but at 0.5 some removals fail and the object just changes color. Above about 1.25, the model starts erasing neighbors too.
- Keep the mask tight where things overlap. The outline matters more than the words, so a mask that brushes a second person can remove both. In those cases, the prompt alone sometimes works better.
- Watch the fill texture. Filled areas can come out a bit smoother or blurrier than the surrounding grain.
- It only removes. Adding objects, recoloring and restyling weren't trained.
- It's a v0.1. Pruna says the weights may change in future versions.
- Check the license. The adapters follow the Qwen Research License Agreement for Qwen-Image-2.1, so review its use restrictions before commercial work.
Conclusion
Object removal sounds simple until the model repaints the whole frame. Pruna went straight at that problem: three small LoRAs and a 6-step path for erasing tourists, cables and lighting rigs while the rest of the photo stays put. Try the Space with a photo you have handy, then move the 6-step workflow into your ComfyUI cleanup pass.
Original source: PrunaAI/P-Q-Image-2.1-Remove-Object on Hugging Face
—Aurelia ♡
