Bria
BRIA Product Shot
bria-product-shot
Modelo de edição de imagens voltado para fotos de produtos de e-commerce, capaz de inserir o produto naturalmente em cenários de fundo gerados a partir de texto ou de imagens de referência, preservando texturas e detalhes da marca
Preços
bria-product-shot per image
| Preço unitário | $0.0575 |
|---|
Posicionamento e visão geral
bria-product-shot é um modelo de edição de imagens voltado à visão de produtos para e-commerce: recebe uma imagem de produto e uma descrição de cena ou imagem de referência de cena, insere automaticamente o produto em um novo fundo, preservando texturas, logos e detalhes da marca, e entrega imagens de produto prontas para exibição comercial. É indicado para desenvolvedores e equipes de e-commerce que precisam gerar em lote imagens de produto em cena e reduzir fotografia física e composição manual.
Destaques principais
- Treinado especificamente para inserção de produtos, com iluminação e sombras naturais — otimizado para consistência de iluminação, sombras e escala entre produto e cena, com resultados mais próximos de fotos reais.
- Preserva detalhes do produto e elementos da marca — mantém, durante a composição da cena, detalhes essenciais como texturas do produto, logos e identidade da marca.
- Duas formas de orientar a cena: texto ou imagem de referência — é possível especificar o novo fundo por meio de uma descrição de cena em inglês ou de uma imagem de referência de cena, escolhendo uma das opções para controlar a saída com flexibilidade.
- Posição predefinida e tamanho original opcionais — permite especificar manualmente uma posição predefinida do produto no quadro ou manter o tamanho e a posição originais na saída.
Descrição das capacidades
Gerar cena a partir de descrição textual: forneça uma descrição de cena em inglês (até 1000 caracteres); o modelo gera automaticamente o fundo e insere o produto, com suporte a expansão automática da descrição para enriquecer os detalhes da cena.
Estilo de cena guiado por imagem de referência: envie uma imagem de referência de cena e o modelo compõe a imagem do produto seguindo o estilo de fundo dela, ideal para produção em lote com estilo visual uniforme.
Controle de posição e tamanho do produto: o modo de posicionamento manual permite escolher o ponto de inserção do produto entre dez posições predefinidas; o modo original mantém as dimensões e a posição da entrada e permite optar por não redimensionar para cerca de 1MP.
Alternância de modo rápido: o modo rápido vem ativado por padrão para acelerar a geração; ao desativá-lo, usa-se o modelo padrão, permitindo equilibrar velocidade e qualidade conforme a necessidade.
Cenários de aplicação
- Operação de e-commerce: cenas em lote para imagens principais de produto — insira a imagem do produto e a descrição da cena para gerar em lote imagens de produto com diversos fundos, usadas em páginas de detalhes do produto e materiais publicitários.
- Equipes de marketing: criação de variantes em múltiplos estilos — use imagens de referência para orientar diferentes estilos de fundo e produzir rapidamente imagens de marketing do mesmo produto em vários estilos, para redes sociais e páginas de campanhas.
- Marcas: composição rápida de visuais de lançamento — no fluxo de lançamento de novos produtos, insira imagens do produto em cenários cotidianos, reduzindo etapas de fotografia física e acelerando a publicação de materiais visuais.
- Desenvolvedores: integração em fluxos automatizados — por meio da interface unificada do HiAPI.ai, incorpore a composição de cenas de produtos ao pipeline de produção de conteúdo e realize processamento automatizado em escala.
Limitações e recomendações de escolha
O modelo oferece capacidade de edição imagem-para-imagem: é obrigatório fornecer uma imagem de produto como entrada e não há suporte a geração de imagens apenas por texto; a saída é uma imagem estática, sem vídeo ou conteúdo 3D. Seu posicionamento é focado na composição de cenas de produtos de e-commerce, e a geração criativa genérica de imagens não é seu propósito. O uso comercial deve seguir os termos de licenciamento e conformidade aplicáveis. Caso seja necessário gerar imagens criativas do zero ou realizar edições que não envolvam produtos, deve-se escolher um modelo de geração de imagens de uso geral.
Novidades
Ver o changelog →- Novo modelo Novo modelo bria-product-shot para imagens de produtos em cenários
Perguntas frequentes
Ver todas as perguntas →-
O cenário descrito e a imagem de referência de cenário podem ser usados juntos?
Não, escolha um dos dois. Ao escrever a descrição de cenário (prompt) em inglês, não envie a imagem de referência; ao gerar com base na imagem de referência, não escreva a descrição. No Playground, a forma de alternância limpa automaticamente o conteúdo do outro.
-
A descrição do cenário deve ser em inglês?
Sim. Descreva o novo cenário ou contexto no prompt em inglês, com no máximo 1000 caracteres; se o Playground detectar chinês, ele solicitará que você reescreva.
-
O que é a descrição otimizada?
Quando ativada, sua descrição de cena será expandida automaticamente; ativada por padrão; só entra em vigor no modo de descrição de cena, não sendo enviada no modo de imagem de referência.
-
Quais são as formas de posicionar o produto?
A posição predefinida (manual_placement, padrão; descrição de cena ou imagem de referência) coloca o produto em uma posição especificada na tela, por padrão centralizado na parte inferior, com saída real de 1024×1024 para entrada quadrada; manter a posição original (original) usa a posição e a proporção do produto na imagem original.
Criar uma tarefa de geração
https://api.hiapi.ai/v1/tasks Cabeçalhos
AuthorizationstringObrigatórioChave de API da conta. Obrigatória em toda requisição. Exemplo: Bearer YOUR_HIAPI_API_KEY. Obter chave de API
Content-TypestringOpcionalO corpo da requisição é sempre interpretado como JSON; se enviado, apenas application/json (charset opcional) é aceito — qualquer outro valor retorna 415. Exemplo: application/json.
Idempotency-KeystringOpcionalChave de idempotência, até 255 bytes. Retries com a mesma chave da mesma conta criam a tarefa apenas uma vez; replays retornam o taskId original.
Em timeouts de rede ou retries automáticos do cliente, a mesma chave cria a tarefa apenas uma vez, sem cobrança duplicada (escopo = a conta da chave de API). Use um identificador de negócio exclusivo (ex.: "order-42"); replays retornam o taskId original e as chaves expiram 24 h após a primeira requisição. A matriz completa de cenários está na introdução da API assíncrona unificada.
Corpo
modelstringObrigatórioValor fixo atual: bria-product-shot
routestringOpcionalValor fixo atual: default
inputobjectObrigatório
Objeto de parâmetros de negócio para bria-product-shot e a rota default — veja a tabela de parâmetros abaixo.
fastbooleanOpcionalPadrão: 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_urlstringObrigatóriominLength 1pattern ^https?://Public URL of the product photo (JPEG, PNG or WEBP, up to 12 MB).
placement_typestringOpcionalPadrão: "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_qualitybooleanOpcionalPadrão: 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_descriptionbooleanOpcionalPadrão: trueExpand the scene description automatically. Applies to prompt only.
manual_placement_selectionstringOpcionalPadrão: "bottom_center"Preset product position. Applies to manual_placement only.
bottom_centerupper_leftupper_rightbottom_leftbottom_rightright_centerleft_centerupper_centerMostrar tudo (2)
center_verticalcenter_horizontalcallbackobjectOpcional
Configuração de notificação de estado terminal. Se omitida, sem callback: consulte a tarefa por conta própria.
Informe callback.url na criação e o HiAPI fará POST no seu serviço no estado terminal, sem polling. O corpo do callback replica a estrutura do detalhe da tarefa; assinatura, retries e idempotência estão descritos na introdução da API assíncrona unificada.
urlstringObrigatórioObrigatória se callback estiver presente. No estado terminal é enviado um POST para esta URL; deve ser uma URL http(s) válida.
whenstringOpcionalPadrão: "final"Atualmente só há suporte a final — notifica tanto em success quanto em fail.
finalstoragestringOpcionalPadrão: "temp"Nível de armazenamento de artefatos: temp (padrão, ~7 dias) ou persistent (longo prazo, cobrado por tamanho). Saldo insuficiente ou limite excedido ⇒ rebaixamento silencioso para temp; o nível efetivo aparece na resposta de detalhes.
temppersistentExemplos de requisição
# Envia uma tarefa assíncrona; retorna um taskId imediatamente (sem esperar a geração)
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"
} Obter detalhes da tarefa
https://api.hiapi.ai/v1/tasks/:id Campos da resposta
taskIdstringObrigatórioID da tarefa, sempre com prefixo tk-hiapi-.
modelstringObrigatórioNome completo resolvido do modelo. Tarefas enviadas com o parâmetro route retornam base@route (ex.: gpt-image-2/text-to-image@ext); caso contrário, igual ao nome enviado.
routestringOpcionalPresente apenas se o parâmetro route explícito foi usado; ecoa o valor enviado.
statusstringObrigatórioEstado da tarefa.
queued Na fila, ainda não iniciada.
handling Em processamento.
archiving Processamento concluído, preparando artefatos.
success Terminal: concluído, artefatos disponíveis (retorna output).
fail Terminal: falha (retorna error).
Após o envio, acompanhe status: success e fail são terminais, os demais não. Faça polling a cada 1–3 s até o estado terminal. Em caso de sucesso, baixe os artefatos em output[].url e transfira antes de expireAt; para retenção longa, use storage: "persistent" na criação.
creatednumberObrigatórioMomento de criação da tarefa (segundos Unix).
completednumberObrigatórioSegundos Unix do estado terminal; 0 enquanto não terminal.
outputarrayOpcional
Presente apenas com status == success. Lista de artefatos — sempre um array; uma tarefa pode retornar vários types ao mesmo tempo (ex.: video + first_frame).
Array [ object ]
Itens do array
urlstringObrigatórioURL do artefato, baixável diretamente.
typestringObrigatórioValores possíveis no momento: video, image, audio, first_frame, last_frame, thumbnail; poderão ser ampliados.
expireAtnumberObrigatórioSegundos Unix de disponibilidade do artefato; baixe ou transfira antes da expiração.
errorobjectOpcional
Presente apenas com status == fail.
codestringObrigatórioCódigo de erro de negócio.
messagestringObrigatórioDescrição do erro.
Exemplos de resposta
Sucesso
{
"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
}
]
}
} Em processamento (não final)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Falhou
{
"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"
}
}
} Artigos
Ver todos os artigos →-
Tutorial
recraft-v4.1-flash geração de imagens por texto na prática: 5 cenários de negócio de alto valor e pontos de integração
Partindo de um custo de US$ 0,01 por imagem, planeje como aplicar a geração de imagens em negócios reais
-
Tutorial
Usar Kandinsky 6.0 Pro text-to-video na HiAPI: tutorial de curl e Python
Demonstração prática com foco na requisição: montar a chamada de prompt para clipe de vídeo, enviar a requisição, consultar o status de conclusão e baixar o resultado
-
Tutorial
Como chamar hailuo-2.3/text-to-video pela API HiAPI: curl, Python e exemplos de requisição executáveis
-
Avaliação comparativa
hailuo-2.3-fast/image-to-video comparação lado a lado: como escolher modelos de imagem para vídeo e pontos de migração
-
Tutorial
Tutorial de kandinsky-6.0-pro/image-to-video na HiAPI: curl + Python
Faça uma requisição de imagem para vídeo funcional na HiAPI: do upload do primeiro quadro ao polling assíncrono e ao download final
-
Tutorial
Como chamar kling-4.0/image-to-video na HiAPI: curl, Python e polling
-
Tutorial
Como usar kling-4.0/text-to-video através da API HiAPI: curl, Python e um exemplo de requisição executável
Guia prático para desenvolvedores: prompts cinematográficos, áudio sincronizado, polling assíncrono e download da saída
-
Tutorial
Como chamar hailuo-2.3-fast/image-to-video pela API HiAPI: curl e Python na prática
A primeira requisição executável do nível rápido e econômico de geração de vídeo a partir de imagem — do ID do modelo ao download do MP4
-
Avaliação comparativa
Comparação lado a lado do Recraft v4.1 Flash em text-to-image: guia de seleção e migração para desenvolvedores
Com um custo de $0.01 por imagem e capacidade de text-to-image pura, avalie se ele é adequado para seu pipeline de geração de imagens
Modelos relacionados
Ver todos os modelos →Mesmo tipo
-
Nano Banana Pro Google $0.057 /imagem -
Grok Imagine Quality xAI $0.070 /imagem -
Muse Image 1.0 Meta $0.015 per task -
FLUX.2 Klein 4B Black Forest Labs $0.0004 /imagem -
Wan 2.7 Image Alibaba $0.035 /imagem -
Imagen 4 Google $0.030 /imagem -
FLUX.1 Schnell Black Forest Labs $0.005 /imagem -
Seedream 5.0 ByteDance $0.025 /imagem -
Z-Image Alibaba $0.008 /imagem -
Krea 2 Medium Turbo Krea $0.021 /imagem -
Ideogram V3 Character Ideogram $0.090 /imagem -
Qwen Image 2.0 Alibaba $0.042 /imagem