tencent/HunyuanImage-3.0
Modelo multimodal nativo de Tencent para generación de imágenes que unifica comprensión y generación dentro de un marco autorregresivo. Está orientado principalmente a texto a imagen, con una variante Instruct para edición, razonamiento visual y fusión de múltiples imágenes. Destaca por su arquitectura MoE de gran escala, alta fidelidad visual y fuerte adherencia a prompts complejos.
Como usar
Requiere Python 3.12+ y CUDA 12.8. El flujo principal consiste en descargar los pesos localmente, evitar usar directamente el identificador con punto en Transformers, y cargar el modelo con trust_remote_code=True.
Instalación base:
# 1. Instalar PyTorch para CUDA 12.8
pip install torch==2.8.0 torchvision==0.23.0 torchaudio==2.8.0 --index-url https://download.pytorch.org/whl/cu128
# 2. SDK de Tencent Cloud para Prompt Enhancement
pip install -i https://mirrors.tencent.com/pypi/simple/ --upgrade tencentcloud-sdk-python
# 3. Resto de dependencias
pip install -r requirements.txt
# 4. Optimización opcional para inferencia MoE
pip install flashinfer-python==0.5.0
Descarga de pesos:
hf download tencent/HunyuanImage-3.0 --local-dir ./HunyuanImage-3
Uso con Transformers para texto a imagen:
from transformers import AutoModelForCausalLM
model_id = "./HunyuanImage-3"
kwargs = dict(
attn_implementation="sdpa",
trust_remote_code=True,
torch_dtype="auto",
device_map="auto",
moe_impl="eager",
)
model = AutoModelForCausalLM.from_pretrained(model_id, **kwargs)
model.load_tokenizer(model_id)
prompt = "A brown and white dog is running on the grass"
image = model.generate_image(prompt=prompt, stream=True)
image.save("image.png")
Uso local por CLI:
export MODEL_PATH="./HunyuanImage-3"
python3 run_image_gen.py \
--model-id $MODEL_PATH \
--verbose 1 \
--prompt "A brown and white dog is running on the grass" \
--bot-task image \
--image-size "1024x1024" \
--save ./image.png \
--moe-impl flashinfer
Demo web con Gradio:
pip install gradio>=4.21.0
export MODEL_ID="path/to/your/model"
export HOST="0.0.0.0"
export PORT="443"
sh run_app.sh --moe-impl flashinfer --attn-impl flash_attention_2
Parámetros recomendados en texto a imagen: --attn-impl sdpa, --moe-impl flashinfer, --diff-infer-steps 50, --image-size auto, --rewrite 1.
La variante HunyuanImage-3.0-Instruct permite edición y fusión visual con razonamiento:
from transformers import AutoModelForCausalLM
model_id = "./HunyuanImage-3-Instruct"
kwargs = dict(
attn_implementation="sdpa",
trust_remote_code=True,
torch_dtype="auto",
device_map="auto",
moe_impl="eager",
moe_drop_tokens=True,
)
model = AutoModelForCausalLM.from_pretrained(model_id, **kwargs)
model.load_tokenizer(model_id)
prompt = "Basado en la imagen 1 y el material de la imagen 2, crea un nuevo imán de nevera"
imgs_input = ["./assets/demo_instruct_imgs/input_1_0.png", "./assets/demo_instruct_imgs/input_1_1.png"]
cot_text, samples = model.generate_image(
prompt=prompt,
image=imgs_input,
seed=42,
image_size="auto",
use_system_prompt="en_unified",
bot_task="think_recaption",
infer_align_image_size=True,
diff_infer_steps=50,
verbose=2
)
samples[0].save("image_edit.png")
Funcionalidades
- Arquitectura multimodal unificada autorregresiva para modelar texto e imagen de forma integrada.
- Modelo MoE de generación de imágenes de código abierto con 64 expertos, 80 mil millones de parámetros totales y 13 mil millones activados por token.
- Generación de imágenes fotorrealistas con buen equilibrio entre precisión semántica, estética visual y detalle fino.
- Alta adherencia a instrucciones complejas en tareas de texto a imagen.
- La variante HunyuanImage-3.0-Instruct añade razonamiento sobre imágenes, reescritura inteligente de prompts, edición de imágenes y fusión de hasta 3 imágenes de referencia.
- Compatible con Transformers, ejecución local, CLI y demo interactiva con Gradio.
- Soporta optimizaciones de inferencia con FlashInfer, FlashAttention 2 y aceleración con vLLM.
Casos de uso
- Generación de imágenes fotorrealistas a partir de prompts complejos y detallados.
- Creación de imágenes creativas con fuerte seguimiento de instrucciones semánticas.
- Edición de imágenes guiada por instrucciones usando la variante Instruct.
- Fusión de múltiples imágenes de referencia para producir composiciones coherentes.
- Transformación de estilo, sustitución de fondos y modificación de elementos preservando partes clave de la imagen.
- Flujos de prototipado visual y generación asistida con mejora automática de prompts.