EAR: Erasing Concepts from Unified Autoregressive Models

Public release for the EAR project, including training scripts, inference pipelines, evaluation utilities, and fine-tuned checkpoints for unified autoregressive image generation models.

Repository Structure

  • train/: EAR, ESD, RACE, and STEREO training scripts.
  • infer/: inference scripts for Janus-Pro and Lumina-mGPT.
  • eval/: erasure-rate, FID, and CLIP-score evaluation scripts.
  • configs/: concept-specific experiment configs.
  • data/: training and test prompt files.
  • utils/: shared utilities.

Environment

git clone https://github.com/immc-lab/ear.git
cd ear
conda create -n ear python=3.12
conda activate ear
pip install -r requirements.txt

Install the official upstream runtimes in the same environment:

  • deepseek-ai/Janus
  • Alpha-VLLM/Lumina-mGPT

Training

python -m train.ear_train_janus_pro --config configs/janus_pro_church.yaml
python -m train.ear_train_janus_pro --config configs/janus_pro_nudity.yaml
python -m train.ear_train_janus_pro --config configs/janus_pro_van_gogh.yaml

python -m train.ear_train_lumina_mgpt --config configs/lumina_mgpt_church.yaml
python -m train.ear_train_lumina_mgpt --config configs/lumina_mgpt_nudity.yaml
python -m train.ear_train_lumina_mgpt --config configs/lumina_mgpt_van_gogh.yaml

Inference and Evaluation

python -m infer.ear_infer_janus_pro --config configs/janus_pro_church.yaml
python -m infer.ear_infer_lumina_mgpt --config configs/lumina_mgpt_church.yaml

python -m eval.eval_object --result_dir {result_dir} --output_dir {output_dir} --target_object church
python -m eval.eval_nudity --result_dir {result_dir} --output_dir {output_dir}
python -m eval.eval_style --result_dir {result_dir} --output_dir {output_dir} --classifier_path /path/to/style-classifier --target_style vincent-van-gogh
python -m eval.eval_fid --help
python -m eval.eval_clip_score --generated_imgs_dir /path/to/coco30k/generated_imgs/coco30k --csv_path data/coco_30k.csv