
Unified image generation and editing model with class-leading complex Chinese/English text rendering, realistic textures, and multi-image fusion.
Unified image generation and editing model with class-leading complex Chinese/English text rendering, realistic textures, and multi-image fusion.
Also known as Qwen Image, Alibaba Cloud Qwen Image 2.0, Qwen-Image-2.0, qwen-image-2-0
qwen-image-2-0POST /v1/images/generationsLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Qwen Image 2.0 runs through POST /v1/images/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Or add "sync": true to skip polling: the request stays open and returns the finished OpenAI-style image response directly, so OpenAI SDKs work as-is. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/images/generations \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-image-2-0",
"prompt": "Describe what you want Qwen Image 2.0 to generate."
}'curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"import requests
response = requests.post(
"https://api.empiriolabs.ai/v1/images/generations",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
json={
"model": "qwen-image-2-0",
"prompt": "Describe what you want Qwen Image 2.0 to generate.",
},
)
job = response.json()
# Generation runs as an async job. Poll until it completes.
import time
while True:
status = requests.get(
f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
).json()
if status.get("status") in ("completed", "failed"):
print(status)
break
time.sleep(5)Request parameters supported by the Qwen Image 2.0 API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| prompt | string | - | - | Text prompt. With input images attached, becomes an editing instruction. |
| model_variant | enum | qwen-image-2.0-pro-2026-04-22 | qwen-image-2.0-pro-2026-04-22, qwen-image-2.0-pro-2026-03-03,... | Pro variants offer higher quality. Dated snapshots pin a specific weights revision for reproducibility; the undated "qwen-image-2.0-pro" tracks the latest pro release. |
| aspect_ratio | enum | - | 16:9, 9:16, 1:1, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5 | Optional. If omitted, text-to-image defaults to 16:9; image-edit matches the last input image's native ratio. |
| use_custom_size | boolean | false | - | Override aspect_ratio with explicit pixel dimensions. |
| custom_width | number | - | 512 to 2048 | Pixels (512–2048). Total pixel area must be in [512×512, 2048×2048]. Only when use_custom_size=true. |
| custom_height | number | - | 512 to 2048 | Pixels (512–2048). Total pixel area must be in [512×512, 2048×2048]. Only when use_custom_size=true. |
| image | array | - | - | Up to 3 input image URLs. Triggers image-edit mode. |
| num_images | number | 1 | 1 to 6 | Number of images to generate. Each is billed separately. |
| negative_prompt | string | - | - | What to avoid in the output. |
| prompt_extend | boolean | true | - | Automatically expand and refine the prompt for better results. |
| watermark | boolean | false | - | When true, a small Qwen provenance watermark is stamped on each generated image. EmpirioLabs does not add any watermark of its own. |
| seed | number | - | 0 to 2147483647 | Reproducibility seed. Leave empty for random. |
| response_format | enum | url | url, b64_json | url (default) returns a signed URL; b64_json returns inline base64. |
On EmpirioLabs, Qwen Image 2.0 is billed pay as you go: Standard $0.0322 (was $0.035) per image; Pro $0.069 (was $0.075) per image. The live rate card on this page always matches what the API charges.
Qwen Image 2.0 is served through POST /v1/images/generations on api.empiriolabs.ai with standard bearer-token authentication.
Yes. The EmpirioLabs playground runs Qwen Image 2.0 in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Check out our pricing or reach out if you want your own model deployed on our stack.