Alibaba
Qwen Image 2.1
qwen-image-2.1-turbo
Modelo de imagem que unifica texto para imagem e edição de imagem, com suporte nativo a resolução 2K e saída RGBA com canal alpha real, permitindo especificar várias regiões de edição com círculos, anotações à mão livre ou máscaras
Preços
qwen-image-2.1-turbo per image
| Preço unitário | $0.020 |
|---|
Visão geral do posicionamento
qwen-image-2.1-turbo é o modelo da série Qwen Image 2.1 voltado para geração e edição de imagens em chamadas de alta frequência. Ele suporta dois tipos de tarefa: texto para imagem e imagem para imagem — gerar uma cena diretamente a partir de um prompt, ou passar até 10 imagens de referência e fazer modificações locais em imagens específicas referenciadas por número. A saída é uma imagem estática, com proporções como 1:1 e 16:9, e suporta seed fixa para reproduzir resultados. Indicado para desenvolvedores que precisam produzir materiais visuais em lote, iterar prompts rapidamente e validar protótipos.
Destaques principais
- Geração e edição usam o mesmo conjunto de parâmetros de chamada — texto para imagem não envia imagens de referência; edição de imagem envia URLs de 1 a 10 imagens; o restante da estrutura de prompt e parâmetros é idêntico, com baixo custo de integração.
- Referência a múltiplas imagens por número — várias imagens de entrada são numeradas na ordem do array, e o prompt pode usar “imagem 1”, “imagem 2” para especificar com precisão o objeto da edição, reduzindo ambiguidades.
- Aletoriedade controlável — a seed cobre de 0 a 2147483647; uma vez fixada, o resultado fica relativamente estável, facilitando testes de regressão e reprodução de tarefas em lote.
Descrição das capacidades
Chamada unificada para texto para imagem e imagem para imagem: prompt é obrigatório; se image_urls não for enviado, é geração puramente por texto; se forem enviadas de 1 a 10 imagens públicas, a tarefa passa a ser de edição, cobrindo os dois tipos de necessidade com a mesma interface.
Múltiplas imagens de referência e edição por referência: aceita até 10 imagens de referência por vez, numeradas automaticamente, e o prompt pode fazer alterações locais em uma imagem especificada, ideal para combinar vários materiais ou editar por regiões.
Formato e dimensões controlados: aspect_ratio oferece cinco opções — 1:1, 16:9, 9:16, 4:3 e 3:4 — correspondendo a dimensões fixas em pixels, de 2048×2048 a 2688×1536; se não for enviado, o modelo escolhe automaticamente conforme o prompt e as imagens de referência.
Chave de expansão de prompt: prompt_extend vem ativado por padrão e pode otimizar automaticamente prompts curtos, ao custo de alguns segundos extras; quando for necessário seguir rigorosamente o layout original ou renderizar textos específicos, pode ser desativado para garantir controlabilidade.
Prompts longos e renderização de texto: o prompt aceita até 4500 caracteres, em chinês ou inglês; textos que devem aparecer na imagem podem ser escritos literalmente no prompt, e fundo transparente também pode ser declarado no prompt.
Cenários de aplicação
- Produção em lote de rascunhos visuais iniciais por equipes de design — gerar imagens finais a partir de uma descrição textual, escolhendo o formato conforme a necessidade, para produzir rapidamente rascunhos de materiais de campanha, imagens para redes sociais e afins.
- Alteração de cor local em imagens de produto por operações de e-commerce — enviar a imagem original do produto e indicar a região a alterar, obtendo uma versão modificada que mantém a mesma composição, pronta para substituição em páginas de detalhes e exibição de SKUs em várias cores.
- Composição de múltiplos materiais e edição com imagens de referência — enviar várias imagens de referência ao mesmo tempo e referenciá-las por número, obtendo uma única imagem combinada ou substituída, para cenários de composição e integração de materiais.
- Pipeline de processamento em lote com resultados reproduzíveis — repetir chamadas com seed e prompt fixos para obter saídas relativamente estáveis, facilitando a integração em testes automatizados e fluxos de reversão de materiais.
Limitações e recomendações de escolha
Este modelo gera apenas imagens estáticas e não suporta vídeo ou conteúdo dinâmico. As imagens de referência devem ser URLs acessíveis publicamente, com no máximo 10 MB por imagem, largura e altura entre 1 e 8000 pixels e proporção entre o lado maior e o menor não superior a 10:1; valores fora desse intervalo precisam ser tratados previamente. O formato só pode ser escolhido entre as cinco opções fixas, sem possibilidade de especificar resolução arbitrária. Ativar a expansão de prompt adiciona alguns segundos de tempo extra; para necessidades de renderização de texto com layout rigoroso, recomenda-se desativá-la e conferir manualmente. Indicado para tarefas de geração e edição de porte médio, com prioridade em velocidade e custo; se for necessária qualidade de imagem superior ou mais cota de chamadas, pode-se escolher a versão pro da mesma série.
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: qwen-image-2.1-turbo
routestringOpcionalValor fixo atual: default
inputobjectObrigatório
Objeto de parâmetros de negócio para qwen-image-2.1-turbo e a rota default — veja a tabela de parâmetros abaixo.
seedintegerOpcionalmin 0max 2147483647Semente aleatória, um número inteiro de 0 a 2147483647; fixar a semente torna o resultado da geração relativamente estável; se não for informado, será aleatória.
promptstringObrigatóriominLength 1maxLength 4500Descreva a imagem a ser gerada, ou explique quais modificações devem ser feitas na imagem de referência; pode ser em chinês ou inglês. Os textos a serem renderizados devem ser escritos literalmente no prompt; se precisar de fundo transparente, escreva «fundo transparente» no prompt.
image_urlsarrayOpcionalminItems 1maxItems 10Array de URLs públicas das imagens de referência ou das imagens a serem editadas, de 1 a 10 imagens; se não for informado, será geração de imagem a partir de texto. As várias imagens são numeradas pela ordem do array e podem ser referidas no prompt como «imagem 1», «imagem 2»; suporta JPG, JPEG, PNG, BMP, TIFF, WEBP, GIF, com no máximo 10 MB por imagem, largura e altura entre 1 e 8000 pixels (recomenda-se 384–2048), e proporção entre o lado maior e o lado menor não superior a 10:1.
Array [ string ]
aspect_ratiostringOpcionalProporção da imagem de saída, correspondente a 2048×2048, 2688×1536, 1536×2688, 2368×1728, 1728×2368; se não for informado, o modelo escolhe automaticamente o tamanho com base no prompt e na imagem de referência.
1:116:99:164:33:4prompt_extendbooleanOpcionalPadrão: trueSe deve otimizar automaticamente o prompt, padrão true. Quando ativado, melhora notavelmente prompts curtos, mas aumenta alguns segundos no tempo de processamento; pode ser desativado quando for necessário seguir estritamente o layout do texto original.
callbackobjectOpcional
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": "qwen-image-2.1-turbo",
"input": {
"prompt": "…",
"prompt_extend": true
}
}' 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: "qwen-image-2.1-turbo",
input: {
"prompt": "…",
"prompt_extend": true
}
}),
});
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": "qwen-image-2.1-turbo",
"input": {
"prompt": "…",
"prompt_extend": True
}
},
)
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 →-
Avaliação comparativa
Alternativa ao Replicate: comparação entre hiapi e Replicate para geração de imagem e vídeo (2026)
O que precisa mudar nas chamadas de previsão, nos webhooks e na cobrança ao migrar do Replicate para o hiapi, com uma lista de migração em 10 passos.
-
Tutorial
Chave de API da OpenAI inválida: diagnóstico de 401, variáveis de ambiente e configuração de projeto
Diferencie 401, 403 e 429 da OpenAI, verifique variáveis de ambiente e configurações de organização e projeto, e valide as credenciais com uma requisição somente leitura.
-
Guia de uso
Ray 3.2 图生视频:converta imagens estáticas em clipes curtos verticais
Transforme suas imagens de produto e retratos existentes em clipes de vídeo 9:16, além de um truque de loop sem emendas com end_image_url validado na prática
-
Avaliação comparativa
OmniHuman 1.5 vs HeyGen Avatar IV:como escolher para locução conduzida por áudio?
Escolha pelos quatro critérios: material de entrada, limite de duração, preço e cenas com várias pessoas.
-
Notícias
Três sinais antes do lançamento de um novo modelo e como usá-lo no primeiro dia
A comunidade está falando do GPT-6.2 e um codinome nunca visto surgiu na Arena. Como distinguir o peso desses sinais e como garantir que você consiga chamar o novo modelo no mesmo dia em que ele for realmente lançado.
-
Guia de uso
Quanto custa a API do Qwen Image 2.1? Pro a $0.05 por imagem
Os preços por imagem do Pro e do Turbo, o orçamento para diferentes volumes de uso, a comparação com outros modelos de imagem do site e como escolher entre os dois níveis.
-
Notícias
Todos perguntam se Lovable e Bolt são intermediários, e se a camada de agregação de API conta como um
Um post no X com 1166 curtidas pergunta: já que dá para usar Claude Code, por que ainda pagar por Lovable e Bolt. A resposta a essa pergunta também determina como você vê as plataformas de agregação de API.
-
Guia de uso
Preço da API OmniHuman 1.5: $0,193 por segundo, $1,54 por 8 segundos de vídeo falado
Como funciona a cobrança por segundo, quanto custa um vídeo de 8 segundos, quantos vídeos $10 permitem gerar e a regra da reserva de 20 segundos.
-
Guia de uso
Receitas de prompts em chinês para o Qwen Image 2.1 Pro: 7 menus, rótulos e pôsteres testados
Modelos relacionados
Ver todos os modelos →Mesmo tipo
-
Grok Imagine xAI $0.011 /segundo -
Ideogram V4 Ideogram $0.050 /imagem -
FASHN Tryon v1.6 FASHN $0.107 /imagem -
FIBO 1.5 Bria $0.058 /imagem -
GPT Image 2.5 OpenAI $0.017 /imagem -
GPT Image 2 OpenAI $0.007 /imagem -
FLUX 3 Image Black Forest Labs $0.041 /imagem -
Recraft Creative Upscale Recraft $0.357 /imagem -
Grok Imagine Image 2.0 xAI $0.052 /imagem -
Nano Banana Google $0.011 /imagem -
Wan 2.7 Image Alibaba $0.035 /imagem -
Seedream 4.5 ByteDance $0.045 /imagem
Mesmo provedor
-
HappyHorse 1.0 Alibaba $0.168 /segundo -
HappyHorse 1.1 Alibaba $0.160 /segundo -
Wan 2.7 Image Alibaba $0.035 /imagem -
Wan 3.0 Video Alibaba $0.040 /segundo -
Wan 2.7 Video Alibaba $0.100 /segundo -
Qwen Image 2.1 Alibaba $0.020 /imagem -
Wan 2.6 Flash Alibaba $0.043 /segundo -
Z-Image Alibaba $0.008 /imagem -
Qwen Image 2.0 Alibaba $0.042 /imagem -
Qwen Image 3.0 Alibaba $0.036 /imagem -
Qwen Audio 3.0 TTS Alibaba $0.030 /1.000 caracteres