Introdução
O Qwen Image 2.1 Edição de Imagem revisa de uma a dez imagens de origem a partir de uma instrução escrita e devolve um único quadro novo. A equipe Qwen, da Alibaba, abriu os pesos do modelo em 21 de setembro de 2026; este endpoint entrou no ar aqui no mesmo dia.
Ele roda sem filtro de conteúdo e sem flag de maturidade. Nos nossos testes de aceitação, levou um quadro de origem sem censura pelas nossas instruções sem voltar a vestir a pessoa, sem borrar nada e sem recuar para uma composição mais segura — o modo de falha que torna a maioria dos endpoints de edição inútil para trabalho sem censura.
Escolha o modo do Qwen Image 2.1 pelo material de partida
| Material de partida | Modo |
|---|---|
| De uma a dez imagens de origem para trabalhar | Qwen Image 2.1 Edição de imagem |
| Só um briefing escrito | Qwen Image 2.1 Texto para imagem |
| Imagens de origem mais os seus próprios pesos LoRA | Qwen Image 2.1 LoRA Edição de imagem |
Recursos e destaques
Dez referências em uma única requisição
A maioria dos endpoints de edição aceita uma imagem de origem, ou três. Este lê até dez, e é isso que torna viável uma série consistente: segure o quadro que estabeleceu a personagem, acrescente a referência que carrega a roupa, acrescente a que carrega a locação e mude uma única variável por rodada.
Origens continuam como você enviou
Um endpoint de edição que veste de novo a pessoa sem avisar é pior do que um que recusa, porque cobra de você pela imagem errada. Demos a este endpoint uma origem sem censura, com instruções de mantê-la como estava e acrescentar elementos novos; ele devolveu exatamente isso, com todos os elementos citados presentes.
Cada referência tem preço, então o orçamento acompanha a requisição
Acrescentar fontes aumenta o custo em linha reta, e a estimativa exibida antes do envio é o que será liquidado. Uma requisição com dez fontes custa várias vezes uma requisição com uma fonte no mesmo nível — motivo de sobra para mandar as referências que estão trabalhando e deixar o resto de fora.
Parâmetros da requisição
| Parâmetro | Obrigatório | Descrição |
|---|---|---|
prompt | Sim | Até 5.000 caracteres. Esta família não tem prompt negativo, então as exclusões também moram aqui — diga o que está no quadro e depois diga com todas as letras o que não pode estar. pelo menos 1 caracteres · no máximo 5000 caracteres |
image_urls | Sim | De uma a dez imagens de referência. pelo menos 1 itens · no máximo 10 itens |
mask_url | Não | Imagem opcional em preto e branco que coloca a edição em modo local: o branco marca a área a ser repintada, o preto é mantido como está e alguns pixels de borda suave ajudam na… |
aspect_ratio | Não | Compõe o quadro antes da geração, em vez de recortar depois, então escolha o formato em que você vai publicar. São quinze opções, das faixas 3:1 e 21:9 às colunas 1:3 e 9:21. |
resolution | Não | O nível que define o tamanho da saída e o preço: 1k é o padrão e o mais barato, 1.5k fica no meio, 2k é onde a textura da pele, o cabelo e a trama do tecido se sustentam. |
enable_prompt_expansion | Não | Ligado por padrão: antes de gerar, o prompt é reescrito como uma descrição de cena mais completa. Desligue para usar o seu texto exatamente como está. Valor padrão: |
background | Não | opaque por padrão. |
output_format | Não | JPEG por padrão. PNG quando o quadro entra em uma etapa de composição, WebP quando ele vai direto para uma página. |
seed | Não | Estabiliza o sorteio para que uma série fique na mesma vizinhança. |
Preços
| Especificação | Preço |
|---|---|
| $0.036 / imagem |
| $0.048 / imagem |
| $0.072 / imagem |
Casos de uso
Consistência de personagem ao longo de um conjunto
Mantenha um quadro aprovado como referência de identidade e rode de novo com uma instrução nova por imagem. Bem mais estável do que torcer para que um seed reproduza um rosto.
Composição de cena adulta a partir de uma figura existente
Comece de uma figura que você já tem e acrescente a segunda pessoa, a contenção, o cenário ou as marcas. Instruções são cumpridas como foram escritas.
Trocas de figurino e de cenário
Duas referências — uma para a pessoa, outra para a roupa ou o ambiente — e um prompt que diz qual é qual.
Subir a resolução de um quadro escolhido sem tirá-lo do contexto
Rode de novo um quadro de 1k como edição em 2k, com uma instrução que preserve a composição, quando você quiser o detalhe sem sortear a cena inteira outra vez.
Guia de prompt e dicas práticas
Diga o que cada referência entrega
O modelo não deduz papéis. "A primeira imagem é a mulher, a segunda é o cômodo em que ela está" é a diferença entre uma edição e uma mistura.
Diga o que não pode mudar
Aqui não há prompt negativo, então as proteções vão na instrução principal. "Mantenha-a exatamente como na origem, sem acrescentar nada ao figurino" é a frase que impede um modelo de edição de cobrir uma pessoa que ele acha que deveria estar coberta.
Mande menos referências, e melhores
A identidade se mantém bem a partir de uma única origem limpa e vai se perdendo conforme as fontes se acumulam. Como cada referência também soma ao preço, menos costuma sair ao mesmo tempo mais barato e mais nítido.
Confira o orçamento, não só o nível
Neste endpoint, a quantidade de referências move o preço tanto quanto o nível de resolução. A estimativa anterior ao envio é o que vale — leia-a antes de mandar uma requisição com dez fontes.
Início rápido da API
# Generate the idempotency key once; reuse it when retrying after a lost response.
export SPICY_IDEMPOTENCY_KEY="${SPICY_IDEMPOTENCY_KEY:-$(uuidgen)}"
curl -X POST https://api.spicyapi.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $SPICY_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $SPICY_IDEMPOTENCY_KEY" \
-d '{
"model": "alibaba/qwen-image-2.1/edit",
"input": {
"aspect_ratio": "1:1",
"background": "opaque",
"image_urls": [
"https://example.com/reference.png"
],
"output_format": "jpeg",
"prompt": "A ceramic teapot on a linen cloth, soft window light, muted palette",
"resolution": "1k"
}
}'
# Copy data.taskId from the response into TASK_ID, then poll the status.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.spicyapi.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $SPICY_API_KEY"
Consulte a referência da API para autenticação, esquema completo, polling e tratamento de erros.

















