Bria
BRIA Product Shot
bria-product-shot
Modelo de edición de imágenes orientado a fotos de productos de comercio electrónico, capaz de integrar el producto de forma natural en fondos de escena generados a partir de texto o imágenes de referencia, conservando la textura y los detalles de la marca
Precios
bria-product-shot per image
| Precio unitario | $0.0575 |
|---|
Descripción general
bria-product-shot es un modelo de edición de imágenes orientado a la comunicación visual de productos de comercio electrónico: recibe una imagen de producto y una descripción de escena o una imagen de referencia de escena, coloca automáticamente el producto en un nuevo fondo, conserva la textura, el logotipo y los detalles de marca, y genera una imagen de producto apta para presentación comercial. Es adecuado para desarrolladores y equipos de comercio electrónico que necesitan generar imágenes de producto en escena de forma masiva y reducir la fotografía física y la composición manual.
Puntos clave
- Entrenado específicamente para colocar productos, con luz y sombra naturales: optimizado para la coherencia de iluminación, sombras y escala entre el producto y la escena, de modo que el resultado compuesto se acerque más a una fotografía real.
- Conserva los detalles del producto y los elementos de marca: durante la composición de la escena mantiene detalles clave como la textura del producto, el logotipo y la identidad de marca.
- Dos formas de guiar la escena: texto o imagen de referencia: permite especificar el nuevo fondo mediante una descripción de escena en inglés o una imagen de referencia de escena, eligiendo una de las dos opciones para controlar la salida con flexibilidad.
- Posición predefinida y tamaño original opcionales: permite indicar manualmente una posición predefinida del producto en la imagen o conservar el tamaño y la posición originales en la salida.
Capacidades
Generación de escenas a partir de una descripción de texto: se proporciona una descripción de escena en inglés (máximo 1000 caracteres), el modelo genera automáticamente el fondo y coloca el producto, y admite ampliar automáticamente la descripción para enriquecer los detalles de la escena.
Estilo de escena guiado por imagen de referencia: se sube una imagen de referencia de escena y el modelo compone la imagen del producto siguiendo el estilo de su fondo, lo que resulta adecuado para producir de forma masiva con un estilo visual uniforme.
Control de posición y tamaño del producto: el modo de colocación manual permite elegir el punto de colocación del producto entre diez posiciones predefinidas; el modo original conserva el tamaño y la posición de entrada y permite optar por no escalar a aproximadamente 1MP.
Cambio rápido de modo: el modo rápido está activado por defecto para acelerar la generación; al desactivarlo se usa el modelo estándar, lo que permite elegir según las necesidades entre velocidad y calidad.
Casos de uso
- Operaciones de comercio electrónico: escenificación masiva de imágenes principales de producto: se introducen la imagen del producto y una descripción de escena para generar por lotes imágenes de producto con múltiples fondos, destinadas a páginas de detalle de producto y materiales publicitarios.
- Equipos de marketing: creación de variantes con múltiples estilos: se usan imágenes de referencia para guiar distintos estilos de fondo y producir rápidamente imágenes de marketing del mismo producto con varios estilos, para redes sociales y páginas de campaña.
- Marcas: composición visual rápida para lanzamientos: en el proceso de lanzamiento de nuevos productos, se colocan las imágenes del producto en escenas cotidianas, lo que reduce la fase de fotografía física y acelera la publicación de materiales visuales.
- Desarrolladores: integración en flujos de trabajo automatizados: mediante la interfaz unificada de HiAPI.ai, la composición de imágenes de producto en escenas se integra en la cadena de producción de contenido para lograr un procesamiento automático a escala.
Limitaciones y recomendaciones de selección
Este modelo ofrece una capacidad de edición de imagen a imagen: es obligatorio proporcionar una imagen de producto como entrada y no admite la generación de imágenes solo a partir de texto; la salida es una imagen estática y no abarca vídeo ni contenido 3D. Su enfoque se centra en la composición de escenas para productos de comercio electrónico, y la generación de imágenes creativas de propósito general no es su uso previsto. El uso comercial debe cumplir las condiciones de licencia y cumplimiento correspondientes. Si se necesita generar imágenes creativas desde cero o realizar ediciones que no sean de productos, conviene elegir un modelo de generación de imágenes de propósito general.
Novedades
Ver el registro de cambios →- Nuevo modelo Nuevo modelo bria-product-shot para imágenes de productos en escena
Preguntas frecuentes
Ver todas las preguntas →-
¿Se pueden usar juntos la descripción de escena y la imagen de referencia de escena?
No, elige una de las dos. Al escribir una descripción de escena en inglés (prompt), no pases una imagen de referencia; al generar a partir de una imagen de referencia, no escribas una descripción. En Playground, al cambiar de método se borra automáticamente el contenido del otro.
-
¿La descripción de la escena debe estar en inglés?
Sí. Describe el nuevo escenario o contexto del prompt en inglés, con un máximo de 1000 caracteres; si Playground detecta chino, te pedirá que lo reescribas.
-
¿Qué es la descripción optimizada?
Al activarla, se ampliará automáticamente la descripción de tu escenario; está activada por defecto y solo surte efecto en el modo de descripción de escenario; en el modo de imagen de referencia no se enviará.
-
¿Cuáles son las formas de colocar el producto?
La posición predefinida (manual_placement, predeterminada; válida tanto con descripción de escena como con imagen de referencia) coloca el producto en una posición específica del lienzo, por defecto en la parte inferior centrada; con entrada cuadrada, la salida medida es de 1024×1024. Mantener la posición original (original) conserva la posición y la proporción del producto en la imagen original.
Crear una tarea de generación
https://api.hiapi.ai/v1/tasks Encabezados
AuthorizationstringObligatorioClave API de la cuenta. Obligatoria en cada solicitud. Ejemplo: Bearer YOUR_HIAPI_API_KEY. Obtener clave API
Content-TypestringOpcionalEl cuerpo de la solicitud siempre se analiza como JSON; si se envía, solo se acepta application/json (charset opcional) — cualquier otro valor devuelve 415. Ejemplo: application/json.
Idempotency-KeystringOpcionalClave de idempotencia, hasta 255 bytes. Los reintentos con la misma clave de la misma cuenta crean la tarea una sola vez; las repeticiones devuelven el taskId original.
Ante timeouts de red o reintentos automáticos del cliente, la misma clave crea la tarea una sola vez, sin doble cobro (alcance = la cuenta de la clave API). Usa un identificador de negocio único (p. ej. "order-42"); las repeticiones devuelven el taskId original y las claves caducan 24 h después de la primera solicitud. La matriz completa de escenarios está en la introducción de la API asíncrona unificada.
Cuerpo
modelstringObligatorioValor fijo actual: bria-product-shot
routestringOpcionalValor fijo actual: default
inputobjectObligatorio
Objeto de parámetros de negocio para bria-product-shot y la ruta default; consulta la tabla de parámetros a continuación.
fastbooleanOpcionalPredeterminado: trueFaster generation; turn off for the standard model.
promptstringOpcionalminLength 1maxLength 1000English description of the new scene or background. Use either prompt or reference_image_url, not both.
image_urlstringObligatoriominLength 1pattern ^https?://Public URL of the product photo (JPEG, PNG or WEBP, up to 12 MB).
placement_typestringOpcionalPredeterminado: "manual_placement"manual_placement puts the product at a preset position (with a scene description or a scene reference; measured 1024×1024 for square input); original keeps its position and the input size.
manual_placementoriginaloriginal_qualitybooleanOpcionalPredeterminado: falseKeep the input size instead of scaling to about 1 MP. Applies to original only.
reference_image_urlstringOpcionalminLength 1pattern ^https?://Image whose scene or background style to follow. Use either prompt or reference_image_url, not both.
optimize_descriptionbooleanOpcionalPredeterminado: trueExpand the scene description automatically. Applies to prompt only.
manual_placement_selectionstringOpcionalPredeterminado: "bottom_center"Preset product position. Applies to manual_placement only.
bottom_centerupper_leftupper_rightbottom_leftbottom_rightright_centerleft_centerupper_centerMostrar todo (2)
center_verticalcenter_horizontalcallbackobjectOpcional
Configuración de notificación de estado terminal. Si se omite, no hay callback: consulta la tarea por tu cuenta.
Indica callback.url al crear y HiAPI hará POST a tu servicio en el estado terminal, sin necesidad de sondeo. El cuerpo del callback replica la estructura del detalle de la tarea; firma, reintentos e idempotencia se detallan en la introducción de la API asíncrona unificada.
urlstringObligatorioObligatorio si se incluye callback. Al estado terminal se envía un POST a esta URL; debe ser una URL http(s) válida.
whenstringOpcionalPredeterminado: "final"Actualmente solo se admite final: notifica tanto en success como en fail.
finalstoragestringOpcionalPredeterminado: "temp"Nivel de almacenamiento de artefactos: temp (por defecto, ~7 días) o persistent (largo plazo, facturado por tamaño). Saldo insuficiente o exceso de límite ⇒ degradación silenciosa a temp; el nivel efectivo se muestra en la respuesta del detalle.
temppersistentEjemplos de solicitud
# Envía una tarea asíncrona; devuelve un taskId de inmediato (sin esperar la generación)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "bria-product-shot",
"input": {
"fast": true,
"image_url": "…",
"placement_type": "manual_placement",
"original_quality": false,
"optimize_description": true,
"manual_placement_selection": "bottom_center"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "bria-product-shot",
input: {
"fast": true,
"image_url": "…",
"placement_type": "manual_placement",
"original_quality": false,
"optimize_description": true,
"manual_placement_selection": "bottom_center"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "bria-product-shot",
"input": {
"fast": True,
"image_url": "…",
"placement_type": "manual_placement",
"original_quality": False,
"optimize_description": True,
"manual_placement_selection": "bottom_center"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Obtener el detalle de la tarea
https://api.hiapi.ai/v1/tasks/:id Campos de respuesta
taskIdstringObligatorioID de tarea, siempre con prefijo tk-hiapi-.
modelstringObligatorioNombre completo resuelto del modelo. Las tareas enviadas con el parámetro route devuelven base@route (p. ej. gpt-image-2/text-to-image@ext); si no, coincide con el nombre enviado.
routestringOpcionalSolo aparece si se usó el parámetro route explícito; repite el valor enviado.
statusstringObligatorioEstado de la tarea.
queued En cola, sin iniciar.
handling Procesando.
archiving Proceso terminado, preparando artefactos.
success Terminal: completado, artefactos disponibles (se devuelve output).
fail Terminal: error (se devuelve error).
Tras el envío, guíate por status: success y fail son terminales; el resto, no. Sondea cada 1–3 s hasta el estado terminal. Con éxito, descarga los artefactos desde output[].url y transfiérelos antes de expireAt; para retención larga usa storage: "persistent" al crear.
creatednumberObligatorioHora de creación de la tarea (segundos Unix).
completednumberObligatorioSegundos Unix al alcanzar estado terminal; 0 mientras no sea terminal.
outputarrayOpcional
Solo con status == success. Lista de artefactos — siempre un array; una tarea puede devolver varios types a la vez (p. ej. video + first_frame).
Array [ object ]
Elementos del array
urlstringObligatorioURL del artefacto, descargable directamente.
typestringObligatorioValores posibles actuales: video, image, audio, first_frame, last_frame, thumbnail; podrían ampliarse más adelante.
expireAtnumberObligatorioSegundos Unix hasta los que el artefacto es accesible; descárgalo o transfiérelo antes.
errorobjectOpcional
Solo con status == fail.
codestringObligatorioCódigo de error de negocio.
messagestringObligatorioDescripción del error.
Ejemplos de respuesta
Éxito
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} En proceso (no terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Fallido
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Artículos
Ver todos los artículos →-
Tutorial
Tutorial de kandinsky-6.0-pro/image-to-video en HiAPI: curl + Python
Realiza una solicitud de imagen a video funcional en HiAPI: desde la carga del primer fotograma hasta el sondeo asíncrono y la descarga final
-
Tutorial
Cómo usar kling-4.0/text-to-video a través de la API de HiAPI: curl, Python y un ejemplo de solicitud ejecutable
Guía práctica para desarrolladores: prompts cinematográficos, audio sincronizado, sondeo asíncrono y descarga de resultados
-
Comparativa
Recraft v4.1 Flash comparativa horizontal de texto a imagen: guía de selección y migración para desarrolladores
Con un coste de $0.01 por imagen y capacidad pura de texto a imagen, evalúa si encaja en tu pipeline de generación de imágenes
-
Tutorial
Cómo llamar a kling-4.0/image-to-video en HiAPI: curl, Python y sondeo
-
Tutorial
Cómo llamar a hailuo-2.3/text-to-video mediante la API de HiAPI: curl, Python y ejemplos de solicitud ejecutables
-
Tutorial
Uso de Kandinsky 6.0 Pro texto a video en HiAPI: tutorial con curl y Python
Demostración práctica centrada en la solicitud: construir la llamada de prompt a clip de video, enviar la solicitud, sondear el estado de finalización y descargar el resultado
-
Tutorial
Cómo llamar a hailuo-2.3-fast/image-to-video a través de la API de HiAPI: práctica con curl y Python
La primera solicitud ejecutable del nivel rápido y de bajo coste de imagen a vídeo: del ID del modelo a la descarga del MP4
-
Comparativa
hailuo-2.3-fast/image-to-video comparativa horizontal: cómo elegir un modelo de imagen a video y puntos clave para migrar
Modelos relacionados
Ver todos los modelos →Mismo tipo
-
Imagen 4 Google $0.030 /imagen -
Wan 2.7 Image Alibaba $0.035 /imagen -
GPT Image 2 OpenAI $0.007 /imagen -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /imagen -
Qwen Image 2.1 Alibaba $0.020 /imagen -
Z-Image Alibaba $0.008 /imagen -
851 Labs Background Remover 851 Labs $0.002 /imagen -
Recraft Creative Upscale Recraft $0.357 /imagen -
Grok Imagine Quality xAI $0.070 /imagen -
FLUX.1 Fill Pro Black Forest Labs $0.071 /imagen -
BRIA Eraser Bria $0.058 /imagen -
Ideogram V4 Ideogram $0.050 /imagen