logo
0
0
WeChat Login
Qi Cai<cai-qi@users.noreply.huggingface.co>
Update README.md

HiDream-E1 Demo

HiDream-E1 is an image editing model built on HiDream-I1.

For more features and to experience the full capabilities of our product, please visit https://vivago.ai/.

Project Updates

Quick Start

Please make sure you have installed Flash Attention and latest Diffusers. We recommend CUDA versions 12.4 for the manual installation.

pip install -r requirements.txt pip install -U flash-attn --no-build-isolation pip install -U git+https://github.com/huggingface/diffusers.git

Then you can run the inference scripts to generate images:

python ./inference.py

Alternatively, you can use the model in your own code:

import torch from transformers import PreTrainedTokenizerFast, LlamaForCausalLM from pipeline_hidream_image_editing import HiDreamImageEditingPipeline from PIL import Image # Load the tokenizer and text encoder tokenizer_4 = PreTrainedTokenizerFast.from_pretrained("meta-llama/Llama-3.1-8B-Instruct") text_encoder_4 = LlamaForCausalLM.from_pretrained( "meta-llama/Llama-3.1-8B-Instruct", output_hidden_states=True, output_attentions=True, torch_dtype=torch.bfloat16, ) # Load the HiDream pipeline pipe = HiDreamImageEditingPipeline.from_pretrained( "HiDream-ai/HiDream-E1-Full", tokenizer_4=tokenizer_4, text_encoder_4=text_encoder_4, torch_dtype=torch.bfloat16, ) # Load and prepare input image test_image = Image.open("your_image.jpg") test_image = test_image.resize((768, 768)) # Move pipeline to GPU pipe = pipe.to("cuda", torch.bfloat16) # Generate edited image image = pipe( prompt = 'Editing Instruction: Convert the image into a Ghibli style. Target Image Description: A person in a light pink t-shirt with short dark hair, depicted in a Ghibli style against a plain background.', negative_prompt = "low resolution, blur", image = test_image, guidance_scale=5.0, image_guidance_scale=4.0, num_inference_steps=28, generator=torch.Generator("cuda").manual_seed(3), ).images[0] # Save output image image.save("output.jpg")

NOTE

The inference script will try to automatically download meta-llama/Llama-3.1-8B-Instruct model files. You need to agree to the license of the Llama model on your HuggingFace account and login using huggingface-cli login in order to use the automatic downloader.

NOTE

The model accepts instructions in the following format:

Editing Instruction: {instruction}. Target Image Description: {description}

Example:

Editing Instruction: Convert the image into a Ghibli style. Target Image Description: A person in a light pink t-shirt with short dark hair, depicted in a Ghibli style against a plain background.

To refine your instructions, use the provided script:

python ./instruction_refinement.py --src_image ./test.jpeg --src_instruction "convert the image into a Ghibli style"

The instruction refinement script requires a VLM API key - you can either run vllm locally or use OpenAI's API.

Gradio Demo

We also provide a Gradio demo for interactive image editing. You can run the demo with:

python gradio_demo.py

Evaluation Metrics

Evaluation results on EmuEdit and ReasonEdit Benchmarks. Higher is better.

ModelEmuEdit GlobalEmuEdit AddEmuEdit TextEmuEdit BGEmuEdit ColorEmuEdit StyleEmuEdit RemoveEmuEdit LocalEmuEdit AverageReasonEdit
OmniGen1.372.092.310.664.262.364.732.102.677.36
MagicBrush4.063.540.553.263.832.072.703.282.811.75
UltraEdit5.315.191.504.334.505.712.634.584.072.89
Gemini-2.0-Flash4.877.716.305.107.303.335.946.295.996.95
HiDream-E15.326.986.455.017.576.495.996.356.407.54

License Agreement

The Transformer models in this repository are licensed under the MIT License. The VAE is from FLUX.1 [schnell], and the text encoders from google/t5-v1_1-xxl and meta-llama/Meta-Llama-3.1-8B-Instruct. Please follow the license terms specified for these components. You own all content you create with this model. You can use your generated content freely, but you must comply with this license agreement. You are responsible for how you use the models. Do not create illegal content, harmful material, personal information that could harm others, false information, or content targeting vulnerable groups.

Acknowledgements

  • The VAE component is from FLUX.1 [schnell], licensed under Apache 2.0.
  • The text encoders are from google/t5-v1_1-xxl (licensed under Apache 2.0) and meta-llama/Meta-Llama-3.1-8B-Instruct (licensed under the Llama 3.1 Community License Agreement).

Citation

@article{hidreami1technicalreport, title={HiDream-I1: A High-Efficient Image Generative Foundation Model with Sparse Diffusion Transformer}, author={Cai, Qi and Chen, Jingwen and Chen, Yang and Li, Yehao and Long, Fuchen and Pan, Yingwei and Qiu, Zhaofan and Zhang, Yiheng and Gao, Fengbin and Xu, Peihan and others}, journal={arXiv preprint arXiv:2505.22705}, year={2025} }