Pequeña implementación de referencia de SD3.5 y SD3 solo para inferencia: todo lo que necesita para una inferencia simple usando SD3.5/SD3, excluyendo los archivos de pesos.
Contiene código para los codificadores de texto (OpenAI CLIP-L/14, OpenCLIP bigG, Google T5-XXL) (todos estos modelos son públicos), el decodificador VAE (similar a los modelos SD anteriores, pero con 16 canales y sin paso postquantconv), y el núcleo MM-DiT (completamente nuevo).
Nota: este repositorio es una biblioteca de referencia destinada a ayudar a las organizaciones asociadas a implementar SD3.5/SD3. Para inferencias alternativas, utilice Comfy.
Descargue los siguientes modelos de HuggingFace en el directorio models
:
Este código también funciona para Stability AI SD3 Medium.
# Note: on windows use "python" not "python3"
python3 -s -m venv .sd3.5
source .sd3.5/bin/activate
# or on windows: venv/scripts/activate
python3 -s -m pip install -r requirements.txt
# Generate a cat using SD3.5 Large model (at models/sd3.5_large.safetensors) with its default settings
python3 sd3_infer.py --prompt " cute wallpaper art of a cat "
# Or use a text file with a list of prompts, using SD3.5 Large
python3 sd3_infer.py --prompt path/to/my_prompts.txt --model models/sd3.5_large.safetensors
# Generate from prompt file using SD3.5 Large Turbo with its default settings
python3 sd3_infer.py --prompt path/to/my_prompts.txt --model models/sd3.5_large_turbo.safetensors
# Generate from prompt file using SD3.5 Medium with its default settings, at 2k resolution
python3 sd3_infer.py --prompt path/to/my_prompts.txt --model models/sd3.5_medium.safetensors --width 1920 --height 1080
# Generate from prompt file using SD3 Medium with its default settings
python3 sd3_infer.py --prompt path/to/my_prompts.txt --model models/sd3_medium.safetensors
Las imágenes se enviarán a outputs/<MODEL>/<PROMPT>_<DATETIME>_<POSTFIX>
de forma predeterminada. Para agregar un postfix al directorio de salida, agregue --postfix <my_postfix>
. Por ejemplo,
python3 sd3_infer.py --prompt path/to/my_prompts.txt --postfix " steps100 " --steps 100
Para cambiar la resolución de la imagen generada, agregue --width <WIDTH> --height <HEIGHT>
.
Opcionalmente, utilice la guía para omitir capas para obtener una coherencia potencialmente mejor de la estructura y la anatomía de SD3.5-Medium.
python3 sd3_infer.py --prompt path/to/my_prompts.txt --model models/sd3.5_medium.safetensors --skip_layer_cfg True
sd3_infer.py
: punto de entrada; revise esto para conocer el uso básico del modelo de difusiónsd3_impls.py
: contiene el contenedor alrededor de MMDiTX y VAEother_impls.py
: contiene los modelos CLIP, el modelo T5 y algunas utilidadesmmditx.py
: contiene el núcleo del propio MMDiT-Xmodels
con los siguientes archivos (descargar por separado):clip_l.safetensors
(OpenAI CLIP-L, igual que SDXL/SD3, puede obtener una copia pública)clip_g.safetensors
(openclip bigG, igual que SDXL/SD3, puede obtener una copia pública)t5xxl.safetensors
(google T5-v1.1-XXL, puede obtener una copia pública)sd3.5_large.safetensors
o sd3.5_large_turbo.safetensors
o sd3.5_medium.safetensors
(o sd3_medium.safetensors
)El código incluido aquí proviene de:
Verifique el archivo CÓDIGO DE LICENCIA.
Parte del código en other_impls
se origina en HuggingFace y está sujeto a la licencia HuggingFace Transformers Apache2.