HyperAI

DreamO: a Unified Image Customization Framework

1. Tutorial Introduction

Build

DreamO is a unified image customization framework launched by ByteDance and the School of Electronic and Computer Engineering of Peking University Shenzhen Graduate School on May 12, 2025. The project is based on the DiT (Diffusion Transformer) architecture, integrates multiple image generation tasks, supports complex functions such as costume change (IP), face change (ID), style transfer (Style), multi-subject combination, etc., and realizes multi-condition control through a single model. The related paper results are "DreamO: A Unified Framework for Image Customization".

This tutorial uses resources for a single card A6000.

2. Project Examples

3. Operation steps

1. After starting the container, click the API address to enter the Web interface

If "Bad Gateway" is displayed, it means the model is initializing. Since the model is large, please wait about 1-2 minutes and refresh the page.

2. After entering the webpage, you can start a conversation with the model

Parameter Description:

  • task:
    1. ip:  Automatically remove the background of the input image and retain the main body of the object/character. Suitable for scenes such as clothing and objects.
    2. id:  Accurately extract facial feature areas and support identity feature migration. Based on the optimized facial recognition algorithm, it can adapt to portraits of different angles and lighting conditions.
    3. style:  You need to add the "Generate an image of the same style" command before the prompt. The system will inherit the original background and visual style, and achieve creative extension of the composition elements.
  • Width:  Used to control the width of the generated image.
  • Height:  Used to control the height of the generated image.
  • Guidance:  It is used to control the influence of conditional input (such as text or image) on the generated results in the generative model. A higher guidance value will make the generated results closer to the input conditions, while a lower value will retain more randomness.
  • Number of Steps:  Indicates the number of iterations of the model or the number of steps in the inference process, representing the number of optimization steps the model uses to produce the result. A higher number of steps generally produces more refined results, but may increase the computation time.
  • Seed:  The random number seed is used to control the randomness of the generation process. The same Seed value can generate the same results (provided that other parameters are the same), which is very important in reproducing the results.

How to use

4. Discussion

🖌️ If you see a high-quality project, please leave a message in the background to recommend it! In addition, we have also established a tutorial exchange group. Welcome friends to scan the QR code and remark [SD Tutorial] to join the group to discuss various technical issues and share application effects↓