Diffusers documentation

ERNIE-Image

You are viewing main version, which requires installation from source. If you'd like regular pip install, checkout the latest stable version (v0.43.0).
Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Ernie-Image

LoRA

[ERNIE-Image] é um modelo de geração de imagens poderoso e altamente eficiente, com 8B de parâmetros. Atualmente, há apenas dois modelos a serem lançados:

ModelHugging Face
ERNIE-Imagehttps://huggingface.co/baidu/ERNIE-Image
ERNIE-Image-Turbohttps://huggingface.co/baidu/ERNIE-Image-Turbo

ERNIE-Image

ERNIE-Image foi projetado com uma arquitetura relativamente compacta e uma sólida capacidade de seguir instruções, enfatizando a eficiência de parâmetros. Baseado em um backbone DiT de 8B, ele oferece desempenho comparável, em alguns cenários, ao de modelos maiores (20B+), mantendo uma eficiência de parâmetros razoável. Ele apresenta um nível de desempenho relativamente estável na compreensão e execução de instruções, na geração de texto (por exemplo, inglês / chinês / japonês) e na estabilidade geral.

ERNIE-Image-Turbo

ERNIE-Image-Turbo é uma variante destilada do ERNIE-Image, exigindo apenas 8 NFEs (Number of Function Evaluations) e oferecendo uma alternativa mais eficiente com desempenho relativamente comparável ao do modelo completo em certos casos.

ErnieImagePipeline

Use [ErnieImagePipeline] para gerar imagens a partir de prompts de texto. O pipeline suporta Prompt Enhancer (PE) por padrão, que aprimora o prompt bruto do usuário para melhorar a qualidade da saída, embora possa reduzir a precisão no seguimento de instruções.

Fornecemos um modelo PE pré-treinado com 3B parâmetros; no entanto, o uso de modelos de linguagem maiores (por exemplo, Gemini ou ChatGPT) para aprimoramento de prompts pode resultar em melhores resultados. O modelo de prompt de sistema está disponível em: https://huggingface.co/baidu/ERNIE-Image/blob/main/pe/chat_template.jinja.

Se você preferir não usar PE, defina use_pe=False.

import torch
from diffusers import ErnieImagePipeline
from diffusers.utils import load_image

pipe = ErnieImagePipeline.from_pretrained("baidu/ERNIE-Image", dtype=torch.bfloat16)
pipe.to("cuda")  # or "mps", "xpu", "cpu"
# If you are running low on GPU VRAM, you can enable offloading
pipe.enable_model_cpu_offload()

prompt = "一只黑白相间的中华田园犬"
images = pipe(
    prompt=prompt,
    height=1024,
    width=1024,
    num_inference_steps=50,
    guidance_scale=4.0,
    generator=torch.Generator("cuda").manual_seed(42),
    use_pe=True,
).images
images[0].save("ernie-image-output.png")
import torch
from diffusers import ErnieImagePipeline
from diffusers.utils import load_image

pipe = ErnieImagePipeline.from_pretrained("baidu/ERNIE-Image-Turbo", dtype=torch.bfloat16)
pipe.to("cuda")  # or "mps", "xpu", "cpu"
# If you are running low on GPU VRAM, you can enable offloading
pipe.enable_model_cpu_offload()

prompt = "一只黑白相间的中华田园犬"
images = pipe(
    prompt=prompt,
    height=1024,
    width=1024,
    num_inference_steps=8,
    guidance_scale=1.0,
    generator=torch.Generator("cuda").manual_seed(42),
    use_pe=True,
).images
images[0].save("ernie-image-turbo-output.png")
Update on GitHub