# Qwen | Image Edit Plus Qwen Image Editing Plus Qwen-Image-Edit-2509 delivers powerful visual editing with exceptional text precision and support for multi-image compositions perfect for detailed creative control. ## API Information - **Model Slug:** qwen-image-edit-plus - **Branded URL:** https://www.eachlabs.ai/alibaba/qwen/qwen-image-edit-plus - **Provider:** Alibaba - **Category:** Image to Image - **Output Type:** array - **Status:** active - **Version:** 0.0.1 - **Base Cost:** $0.03 per image (input.num_images, default 1) - **Estimated Processing Time:** 15 seconds - **Last Updated:** 2026-06-22 - **Interactive Demo:** https://www.eachlabs.ai/ai-models/qwen-image-edit-plus ## Pricing - **Charge Type:** dynamic - **Estimated Price (default example):** $0.0300 - **Pricing Details:** $0.03 per image (input.num_images, default 1) ### Pricing Rules | Condition | Pricing | | --- | --- | | Rule 1 | $0.03 per image (input.num_images, default 1) | ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | The prompt to generate the image with | | image_urls | array | Yes | - | 1–10 | The URLs of the images to edit. | | image_size | string | No | square_hd | square_hd, square, portrait_4_3, portrait_16_9, landscape_4_3, landscape_16_9 | The size of the generated image. | | num_inference_steps | integer | No | 50 | 2–100 | The number of inference steps to perform. | | num_images | integer | No | 1 | 1–4 | The number of images to generate. | | seed | integer | No | - | - | The same seed and the same prompt given to the same version of the model will output the same image every time. | | guidance_scale | number | No | 4 | 0–20 | The CFG (Classifier Free Guidance) scale is a measure of how close you want the model to stick to your prompt when looking for a related image to show you. | | enable_safety_checker | boolean | No | true | - | If set to true, the safety checker will be enabled. | | output_format | string | No | png | jpeg,png | The format of the generated image. | | negative_prompt | string | No | - | - | The negative prompt for the generation | | acceleration | string | No | regular | none, regular | Acceleration level for image generation. Options: 'none', 'regular'. Higher acceleration increases speed. 'regular' balances speed and quality. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "X-API-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "qwen-image-edit-plus", "input": { "prompt": "A woman stands in front of a painting in a museum.", "image_urls": [ "https://storage.googleapis.com/magicpoint/qwen/Qwen-image-edit-plus_input1.webp", "https://storage.googleapis.com/magicpoint/qwen/Qwen-image-edit-plus_input2.webp", "https://storage.googleapis.com/magicpoint/qwen/Qwen-image-edit-plus_input3.webp" ] } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "array", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "X-API-Key: YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `X-API-Key` | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Overview **qwen-image-edit-plus — Image Editing AI Model** Qwen-Image-Edit-Plus (Qwen-Image-Edit-2509) is a powerful image editing model from Alibaba's Qwen team that transforms how creators and developers approach visual content modification. Built on a robust 20-billion parameter MMDiT (Multimodal Diffusion Transformer) architecture, this model solves a critical problem in creative workflows: delivering precise, identity-preserving edits while maintaining exceptional text rendering accuracy—capabilities that most image editing models struggle to combine. Whether you're refining product photography, compositing multiple images, or performing complex semantic edits, qwen-image-edit-plus delivers professional-grade results through natural language prompts. The model excels at understanding detailed editing instructions and maintaining visual consistency across transformations, making it an essential tool for teams building AI image editor APIs and creative automation platforms. ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `X-API-Key: YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.