Guía de uso
Qwen Image 2.0 Pro 摄影 de producto para ecommerce: flujo de trabajo con la API de hiapi
TL;DR
- Qué es esto: un flujo de trabajo real de producción para ecommerce usando qwen-image-2.0-pro en la API de hiapi — una imagen principal de producto, un banner promocional con texto promocional renderizado y una cuadrícula de variantes, todos generados con los prompts y solicitudes exactos que se muestran en esta página.
- Por qué elegir el nivel Pro para trabajo de producto: detalles fotorrealistas más finos, renderizado de texto en imagen más fiable (texto promocional real, no letras ilegibles) y mejor adherencia semántica a prompts detallados — a $0.107/imagen, hasta 2048×2048, frente a $0.025/imagen del nivel básico qwen-image-2.0 (precios).
- Datos de la API verificados: el schema de entrada acepta
prompty una cadenasize("2048*2048","2688*1536","2368*1728","1728*2368"o"1536*2688") — no hay campoaspect_ratio, y solo admite texto a imagen (sinimage_input/ i2i). - Flujo de trabajo: envía en paralelo un solo task por asset vía
/v1/tasks, haz polling de cada uno hasta que termine, descarga inmediatamenteoutput[0].url(expira) y luego vuelve a revisar el texto renderizado antes de entregar cualquier contenido.
Por qué elegir qwen-image-2.0-pro para fotografía de producto
Un listado de producto suele necesitar tres assets distintos, y deben parecer de la misma sesión: una imagen principal limpia para la página de listado, un banner promocional con texto promocional real para campañas de marketing, y una cuadrícula de variantes para páginas de catálogo con múltiples SKU. Esto es una superficie de trabajo más amplia que una sola imagen principal, y es aquí donde el nivel Pro justifica su sobreprecio frente a la versión básica qwen-image-2.0:
- Detalles fotorrealistas más finos. Vidrio, metal cepillado, piedra — este tipo de detalles de reflejos especulares se leen como "foto real" y no como "render" al tamaño de miniatura de catálogo.
- Renderizado de texto más fiable. Los banners promocionales y el packaging necesitan que el texto exacto quede en la imagen, bien escrito y con un espaciado limpio entre letras. El nivel Pro está ajustado para esto; el banner que aparece más abajo en esta página es un ejemplo sin editar.
- Mejor adherencia semántica. Los tres prompts de esta página son largos y específicos en superficie, iluminación y composición — el nivel Pro siguió todos esos requisitos, incluidas las instrucciones de "sin texto" en dos de las imágenes.
El coste es el precio: $0.107/imagen frente a $0.025 del nivel básico (precios verificados en vivo, 2026-08). Para una sola imagen principal, es un error de redondeo. Para un catálogo de cientos de SKU, es dinero real — consulta la sección Pro frente a nivel básico más abajo para saber cómo repartir el trabajo entre ambos.
Configuración
Solo necesitas una API key de hiapi, nada más — sin SDK:
export HIAPI_API_KEY="sk-..."
qwen-image-2.0-pro se ejecuta a través del endpoint unificado de tareas asíncronas: POST https://api.hiapi.ai/v1/tasks devuelve inmediatamente un taskId, y luego haces polling de GET /v1/tasks/{taskId} hasta que se complete.
Los tres assets que necesita todo listado de producto
1. Imagen principal de producto
Imagen para la página de listado: un solo producto, centrado, fondo limpio, sin nada que compita por la atención. Prompt completo, exactamente como se envió:
Studio product photograph of a single amber glass skincare dropper bottle with a blank matte white label, standing centered on a round travertine stone pedestal, seamless warm off-white studio background, soft diffused key light from the upper left, a subtle soft shadow falling to the right, hyper-detailed macro texture on the glass and brushed-metal dropper cap, photorealistic, catalog-ready e-commerce hero shot, no text, no logos, no props

2. Banner promocional con texto renderizado
Aquí es donde brilla el renderizado de texto del nivel Pro. El prompt pide dos líneas de texto promocional concretas en una esquina específica — sin texto de relleno, sin "pon tu texto aquí":
Flat-lay e-commerce promo banner photograph: three amber glass skincare dropper bottles arranged diagonally on a warm terracotta backdrop with dried eucalyptus sprigs, soft overhead studio lighting with gentle shadows, in the upper right corner bold clean white sans-serif text reading SUMMER GLOW SALE, directly beneath it smaller white text reading SAVE 20% TODAY, no other text anywhere, photorealistic commercial photography, sharp focus

Según el manual de operaciones de contenido de hiapi, el texto renderizado nunca debe entregarse sin una lectura humana — el renderizado de texto por IA es fiable pero no infalible, y los ocasionales caracteres faltantes o fallos de espaciado solo se ven al revisar. Este banner se comprobó carácter por carácter contra el prompt antes de publicarse en esta página.
3. Cuadrícula de variantes
Para páginas de catálogo que listan cada formato o fragancia, una cuadrícula plana mantiene cada variante visualmente consistente:
Overhead flat-lay product grid photograph of six amber glass skincare dropper bottles with blank matte white labels, arranged in two neat rows of three on a light grey seamless studio background, even soft diffused lighting with minimal shadows, consistent spacing between bottles, photorealistic catalog variant-grid layout, no text, no logos

Fíjate en las etiquetas en blanco de las tres imágenes — las etiquetas por SKU (nombre de marca, fragancia, formato) son texto pequeño sobre una superficie pequeña, un objetivo de renderizado más difícil que el titular de un banner. El patrón práctico es: generar los frascos con etiquetas en blanco y luego componer el texto de la etiqueta en posproducción. Además, así se actualiza más rápido cuando cambian los precios promocionales.
Schema de entrada, verificado contra la API en vivo
El schema de /v1/tasks para qwen-image-2.0-pro es más estricto de lo que parece — sin aspect_ratio, sin n, y sin ningún campo de entrada de imagen:
| Campo | Tipo | Obligatorio | Valores |
|---|---|---|---|
prompt |
string | ✅ | Tu descripción de la escena |
size |
string | ✅ | 2048*2048, 2688*1536, 2368*1728, 1728*2368, 1536*2688 |
negative_prompt |
string | opcional | Lo que quieres excluir |
seed |
integer | opcional | Para reproducibilidad |
watermark |
boolean | opcional | |
prompt_extend |
boolean | opcional | Deja que el modelo amplíe prompts breves |
Dos cosas a tener en cuenta si vienes de portar solicitudes de otros modelos de imagen de hiapi: aquí no hay parámetro aspect_ratio (usa size directamente), y este modelo solo admite texto a imagen — no hay campo de imagen de referencia, así que no puedes darle una foto de tu producto real y pedirle variantes. El control mediante prompt es todo lo que hay. La estructura completa de solicitud/respuesta y ejemplos de errores están en el tutorial de la API; esta página se centra en el caso de uso de ecommerce.
Script por lotes: tres assets, un bucle de envío
Como /v1/tasks es asíncrono, generar la imagen principal, el banner y la cuadrícula es solo tres envíos más tres pollings — sin esperas en serie:
import time
import requests
API = "https://api.hiapi.ai/v1/tasks"
HEADERS = {"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"}
def submit(prompt: str, size: str) -> str:
r = requests.post(API, headers=HEADERS, json={
"model": "qwen-image-2.0-pro",
"input": {"prompt": prompt, "size": size},
}, timeout=60)
task_id = (r.json().get("data") or {}).get("taskId")
if not task_id:
raise RuntimeError(f"submit failed: {r.text}")
return task_id
def wait(task_id: str, timeout_s: int = 600) -> dict:
deadline = time.time() + timeout_s
while time.time() < deadline:
task = requests.get(f"{API}/{task_id}", headers=HEADERS, timeout=30).json()["data"]
if task["status"] == "success":
return task
if task["status"] == "fail":
raise RuntimeError(f"task failed: {task.get('error')}")
time.sleep(5)
raise TimeoutError(task_id)
jobs = [
("hero-packshot", "Studio product photograph of ...", "2048*2048"),
("promo-banner", "Flat-lay e-commerce promo banner ...", "2688*1536"),
("variant-grid", "Overhead flat-lay product grid ...", "2368*1728"),
]
task_ids = {name: submit(prompt, size) for name, prompt, size in jobs} # fan out
for name, task_id in task_ids.items(): # collect
result = wait(task_id)
url = result["output"][0]["url"] # expires — download immediately
open(f"{name}.png", "wb").write(requests.get(url, timeout=120).content)
En las pruebas, cada render de unos 2000px tardó alrededor de un minuto; con carga alta, reserva unos minutos por imagen antes de considerarlo un timeout.
Pro frente a nivel básico: cuál usar
Ambos niveles comparten el mismo schema prompt + size, así que cambiar entre ellos es solo cambiar una línea del campo model:
| qwen-image-2.0 (básico) | qwen-image-2.0-pro | |
|---|---|---|
| Precio | $0.025/imagen | $0.107/imagen |
| Tamaño máximo | 2048×2048 | 2048×2048 |
| Renderizado de texto | Bueno | Más fuerte — la opción por defecto para texto promocional |
| Detalle fotorrealista | Bueno | Más fino — la opción por defecto para imágenes principales |
| Mejor para | Exploración de prompts, borradores en gran volumen, mockups internos | Assets finales de imagen principal/banner, cualquier cosa con texto renderizado |
Reparto práctico para un catálogo real: borra composiciones en el nivel básico, donde una iteración cuesta poco, y luego vuelve a renderizar los ganadores en el nivel Pro para los assets que realmente entregas. El flujo de trabajo del nivel básico — la misma API de tareas, el mismo estilo de prompts — está en Generar imágenes de producto para ecommerce con qwen-image-2.0.
Consejos de prompts para fotos de producto
Lo que funcionó de forma consistente en estos tres renders:
- Especifica la superficie y la luz, no solo el sujeto. "Pedestal de travertino", "luz principal suave y difusa desde arriba a la izquierda" contribuyen más al fotorrealismo que adjetivos como "profesional" o "alta calidad".
- Declara "sin texto, sin logos" en imágenes donde no debería haber texto. Si no lo indicas, los prompts de fotos de producto a veces arrastran restos de etiquetas; una restricción negativa explícita mantiene limpia la imagen de producto.
- Escribe el texto exacto para banners entre comillas equivalentes. "texto blanco en negrita, limpio, sans-serif, que diga SUMMER GLOW SALE" se renderiza con precisión; algo más vago como "algo de texto promocional" deja la redacción al azar.
- Pide etiquetas en blanco en el packaging, no texto de marca diminuto. El texto pequeño sobre superficies pequeñas es el objetivo de renderizado más difícil en cualquier modelo de imagen — compónlo en posproducción.
FAQ
¿Puedo darle a qwen-image-2.0-pro una foto de mi producto real para generar variantes? No — este modelo solo admite texto a imagen y su schema no tiene campo de entrada de imagen. Para flujos de trabajo de imagen a imagen, necesitas otro modelo de hiapi que admita explícitamente i2i.
¿El texto renderizado es lo bastante fiable como para entregarlo sin revisarlo? No — es fiable, pero no perfecto. Léelo carácter por carácter contra el prompt antes de publicar y vuelve a generar si ves un fallo ocasional. Consulta la nota bajo el banner promocional de arriba.
¿Qué tamaños debo usar para la imagen principal del listado y el banner?
El cuadrado 2048*2048 cubre los requisitos de listado de la mayoría de marketplaces. Para banners promocionales anchos o carruseles principales, 2688*1536 o 2368*1728 (horizontal/vertical) se acercan más a las proporciones habituales de banners web, sin recorte posterior.
¿El nivel Pro ofrece descuentos por volumen? No — el precio es fijo de $0.107 por imagen, independientemente del volumen; la palanca de coste es cuántas imágenes generas, no una tarifa por volumen.
Resumen
Para catálogos de ecommerce, la ventaja de qwen-image-2.0-pro frente al nivel básico cae justo donde la fotografía de producto la necesita: detalles fotorrealistas más limpios en las imágenes principales, renderizado de texto fiable en los banners promocionales, y todo a un precio todavía moderado de $0.107/imagen. Envía en paralelo las solicitudes de imagen principal, banner y cuadrícula de variantes vía /v1/tasks, revisa cualquier contenido con texto renderizado antes de entregarlo, y cambia al nivel básico cuando estés iterando composiciones en lugar de entregar assets finales. La página del modelo qwen-image-2.0-pro tiene precios en vivo y referencia de parámetros para continuar desde aquí.
Artículos relacionados
Ver todos los artículos →-
Guía de uso
seedream-5.0-pro/image-to-image: guía de introducción — capacidades, precios y puntos clave de integración
Límites de capacidad, modelo de facturación y prácticas de integración técnica del modelo de edición de imágenes de ByteDance
-
Guía de uso
Guía de inicio de seedream-5.0-pro texto a imagen: límites de capacidad, integración de API y control de costes
Perspectiva práctica para desarrolladores: desde los puntos clave de los parámetros hasta la estimación de coste de $0.05 por imagen
-
Guía de uso
Guía de inicio de Hailuo 2.3 Fast de imagen a video: límites de capacidad, precios e integración práctica
Claves de selección e integración del modelo MiniMax de imagen a video para desarrolladores