RORem discriminator β safetensors mirror
The RORem discriminator: a classifier over the SDXL-Inpainting UNet (a rank-4 LoRA
plus a cls_pred_branch head on the down/mid blocks) that scores whether an object has
been removed from an image. Released by the RORem authors as a by-product of their
human-in-the-loop training; upstream it is distributed from a Google Drive folder linked
in the project README, with no Hugging Face mirror of its own. Hosted here so that
sayvoy-look can pull it through a pickle-free, digest-pinned path.
| Field | Value |
|---|---|
| Paper | RORem: Training a Robust Object Remover with Human-in-the-Loop β Ruibin Li, Tao Yang, Song Guo, Lei Zhang. CVPR 2025. |
| Upstream | https://github.com/leeruibin/RORem (weights: the "RORem-Discriminator" Google Drive folder linked from its README) |
| Base model | diffusers/stable-diffusion-xl-1.0-inpainting-0.1 |
| License | Apache-2.0, as declared in the upstream README ("This project is released under the Apache 2.0 license"). See the note below. |
Files
| File | Bytes | SHA-256 | Origin |
|---|---|---|---|
pytorch_lora_weights.safetensors |
11,483,632 | a3ae1c8f3d0a446fe403998f5c732a6c0d51939c92e5d5c47195875e3b4b8967 |
the authors' own safetensors, unchanged |
cls_pred_branch.safetensors |
157,313,466 | 3d9d52b12bdbed0cc8eb287d5d43c7b5d1ab6f3eb647194257463cf930408842 |
converted from the authors' cls_pred_branch.pt (see below) |
empty_prompt_embeds.safetensors |
636,080 | 2446465d79e9456d3f27b8f0073614a9dece0588dbd7d1971e64c10d83f3373e |
derived: the empty prompt encoded by SDXL-Inpainting 0.1's two CLIP text encoders |
cls_pred_branch.pt upstream is a PyTorch zip whose payload is a pickle. It was
scanned statically with pickletools (nothing executed; the only globals are
collections.OrderedDict, torch.HalfStorage, torch._utils._rebuild_tensor_v2 β
a plain dict of 14 fp16 tensors), loaded once under the restricted unpickler, written
out as safetensors, read back and compared bit for bit, then pinned.
empty_prompt_embeds.safetensors is not an upstream file: the discriminator is run
with an empty prompt, and these are that prompt's prompt_embeds /
pooled_prompt_embeds from the base model's text encoders, cached so the judge runs
without loading them.
How it is used
The discriminator runs at its training resolution (512) over the SDXL-Inpainting 0.1
UNet with the LoRA applied and the head on the down/mid-block features. It measures
removal, not fill quality: in our evaluation its score separates "object gone"
from "object still there" well (AUC β 0.98) and is uncorrelated with the fidelity
of the fill. The model definition (unet_sdxl_discriminator.py, itself a derivative
of diffusers' UNet2DConditionModel) lives in the consumer, not in this repo.
License note
The upstream README declares Apache-2.0 and links a LICENSE file that does not
exist in the repository. This mirror relies on the README's declaration and ships
the standard Apache-2.0 text as LICENSE. Credit belongs to the RORem
authors; please cite the paper.
@inproceedings{li2025rorem,
title = {RORem: Training a Robust Object Remover with Human-in-the-Loop},
author = {Li, Ruibin and Yang, Tao and Guo, Song and Zhang, Lei},
booktitle = {IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR)},
year = {2025}
}
Model tree for eerie-road/rorem-discriminator
Base model
stabilityai/stable-diffusion-xl-base-1.0