Qwen Image 2.0 Text-to-image
text-to-image

Qwen Image 2.0 Text-to-Image API by Alibaba

qwen/qwen-image-2.0/text-to-image
Text-to-image

Qwen Image 2.0 is an advanced text-to-image model with enhanced image quality and improved prompt understanding. Up to 2k. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

INPUT

Loading parameter configuration...

OUTPUT

Idle
Your generated images will appear here
Configure your settings and click Run to get started

Your request will cost $0.028 per run. For $10 you can run this model approximately 357 times.

Here's what you can do next:

Parameters

Code Example

import requests
import time

# Step 1: Start image generation
generate_url = "https://api.atlascloud.ai/api/v1/model/generateImage"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
    "model": "qwen/qwen-image-2.0/text-to-image",
    "prompt": "A beautiful landscape with mountains and lake",
    "width": 512,
    "height": 512,
    "steps": 20,
    "guidance_scale": 7.5,
}

generate_response = requests.post(generate_url, headers=headers, json=data)
generate_result = generate_response.json()
prediction_id = generate_result["data"]["id"]

# Step 2: Poll for result
poll_url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"

def check_status():
    while True:
        response = requests.get(poll_url, headers={"Authorization": "Bearer $ATLASCLOUD_API_KEY"})
        result = response.json()

        if result["data"]["status"] == "completed":
            print("Generated image:", result["data"]["outputs"][0])
            return result["data"]["outputs"][0]
        elif result["data"]["status"] == "failed":
            raise Exception(result["data"]["error"] or "Generation failed")
        else:
            # Still processing, wait 2 seconds
            time.sleep(2)

image_url = check_status()

Install

Install the required package for your language.

bash
pip install requests

Authentication

All API requests require authentication via an API key. You can get your API key from the Atlas Cloud dashboard.

bash
export ATLASCLOUD_API_KEY="your-api-key-here"

HTTP Headers

python
import os

API_KEY = os.environ.get("ATLASCLOUD_API_KEY")
headers = {
    "Content-Type": "application/json",
    "Authorization": f"Bearer {API_KEY}"
}
Keep your API key secure

Never expose your API key in client-side code or public repositories. Use environment variables or a backend proxy instead.

Submit a request

import requests

url = "https://api.atlascloud.ai/api/v1/model/generateImage"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer $ATLASCLOUD_API_KEY"
}
data = {
    "model": "your-model",
    "prompt": "A beautiful landscape"
}

response = requests.post(url, headers=headers, json=data)
print(response.json())

Submit a Request

Submit an asynchronous generation request. The API returns a prediction ID that you can use to check the status and retrieve the result.

POST/api/v1/model/generateImage

Request Body

import requests

url = "https://api.atlascloud.ai/api/v1/model/generateImage"
headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer $ATLASCLOUD_API_KEY"
}

data = {
    "model": "qwen/qwen-image-2.0/text-to-image",
    "input": {
        "prompt": "A beautiful landscape with mountains and lake"
    }
}

response = requests.post(url, headers=headers, json=data)
result = response.json()

print(f"Prediction ID: {result['id']}")
print(f"Status: {result['status']}")

Response

{
  "id": "pred_abc123",
  "status": "processing",
  "model": "model-name",
  "created_at": "2025-01-01T00:00:00Z"
}

Check Status

Poll the prediction endpoint to check the current status of your request.

GET/api/v1/model/prediction/{prediction_id}

Polling Example

import requests
import time

prediction_id = "pred_abc123"
url = f"https://api.atlascloud.ai/api/v1/model/prediction/{prediction_id}"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }

while True:
    response = requests.get(url, headers=headers)
    result = response.json()
    status = result["data"]["status"]
    print(f"Status: {status}")

    if status in ["completed", "succeeded"]:
        output_url = result["data"]["outputs"][0]
        print(f"Output URL: {output_url}")
        break
    elif status == "failed":
        print(f"Error: {result['data'].get('error', 'Unknown')}")
        break

    time.sleep(3)

Status Values

processingThe request is still being processed.
completedGeneration is complete. Outputs are available.
succeededGeneration succeeded. Outputs are available.
failedGeneration failed. Check the error field.

Completed Response

{
  "data": {
    "id": "pred_abc123",
    "status": "completed",
    "outputs": [
      "https://storage.atlascloud.ai/outputs/result.png"
    ],
    "metrics": {
      "predict_time": 8.3
    },
    "created_at": "2025-01-01T00:00:00Z",
    "completed_at": "2025-01-01T00:00:10Z"
  }
}

Upload Files

Upload files to Atlas Cloud storage and get a URL you can use in your API requests. Use multipart/form-data to upload.

POST/api/v1/model/uploadMedia

Upload Example

import requests

url = "https://api.atlascloud.ai/api/v1/model/uploadMedia"
headers = { "Authorization": "Bearer $ATLASCLOUD_API_KEY" }

with open("image.png", "rb") as f:
    files = {"file": ("image.png", f, "image/png")}
    response = requests.post(url, headers=headers, files=files)

result = response.json()
download_url = result["data"]["download_url"]
print(f"File URL: {download_url}")

Response

{
  "data": {
    "download_url": "https://storage.atlascloud.ai/uploads/abc123/image.png",
    "file_name": "image.png",
    "content_type": "image/png",
    "size": 1024000
  }
}

Input Schema

The following parameters are accepted in the request body.

Total: 0Required: 0Optional: 0

No parameters available.

Example Request Body

json
{
  "model": "qwen/qwen-image-2.0/text-to-image"
}

Output Schema

The API returns a prediction response with the generated output URLs.

idstringrequired
Unique identifier for the prediction.
statusstringrequired
Current status of the prediction.
processingcompletedsucceededfailed
modelstringrequired
The model used for generation.
outputsarray[string]
Array of output URLs. Available when status is "completed".
errorstring
Error message if status is "failed".
metricsobject
Performance metrics.
predict_timenumber
Time taken for image generation in seconds.
created_atstringrequired
ISO 8601 timestamp when the prediction was created.
Format: date-time
completed_atstring
ISO 8601 timestamp when the prediction was completed.
Format: date-time

Example Response

json
{
  "id": "pred_abc123",
  "status": "completed",
  "model": "model-name",
  "outputs": [
    "https://storage.atlascloud.ai/outputs/result.png"
  ],
  "metrics": {
    "predict_time": 8.3
  },
  "created_at": "2025-01-01T00:00:00Z",
  "completed_at": "2025-01-01T00:00:10Z"
}

Atlas Cloud Skills

Atlas Cloud Skills integrates 300+ AI models directly into your AI coding assistant. One command to install, then use natural language to generate images, videos, and chat with LLMs.

Supported Clients

Claude Code
OpenAI Codex
Gemini CLI
Cursor
Windsurf
VS Code
Trae
GitHub Copilot
Cline
Roo Code
Amp
Goose
Replit
40+ supported clients

Install

bash
npx skills add AtlasCloudAI/atlas-cloud-skills

Setup API Key

Get your API key from the Atlas Cloud dashboard and set it as an environment variable.

bash
export ATLASCLOUD_API_KEY="your-api-key-here"

Capabilities

Once installed, you can use natural language in your AI assistant to access all Atlas Cloud models.

Image GenerationGenerate images with models like Nano Banana 2, Z-Image, and more.
Video CreationCreate videos from text or images with Kling, Vidu, Veo, etc.
LLM ChatChat with Qwen, DeepSeek, and other large language models.
Media UploadUpload local files for image editing and image-to-video workflows.

MCP Server

Atlas Cloud MCP Server connects your IDE with 300+ AI models via the Model Context Protocol. Works with any MCP-compatible client.

Supported Clients

Cursor
VS Code
Windsurf
Claude Code
OpenAI Codex
Gemini CLI
Cline
Roo Code
100+ supported clients

Install

bash
npx -y atlascloud-mcp

Configuration

Add the following configuration to your IDE's MCP settings file.

json
{
  "mcpServers": {
    "atlascloud": {
      "command": "npx",
      "args": [
        "-y",
        "atlascloud-mcp"
      ],
      "env": {
        "ATLASCLOUD_API_KEY": "your-api-key-here"
      }
    }
  }
}

Available Tools

atlas_generate_imageGenerate images from text prompts.
atlas_generate_videoCreate videos from text or images.
atlas_chatChat with large language models.
atlas_list_modelsBrowse 300+ available AI models.
atlas_quick_generateOne-step content creation with auto model selection.
atlas_upload_mediaUpload local files for API workflows.

API Schema

Schema not available

No examples available

Please log in to view request history

You need to be logged in to access your model request history.

Log In

Qwen Image 2.0 Text-to-Image

Qwen Image 2.0 is Alibaba's advanced text-to-image model that generates high-quality images from detailed text descriptions. With exceptional prompt following, flexible aspect ratios, and custom resolution support, it excels at rendering complex scenes with fine details like hair, accessories, and textures.


Why Choose This?

  • Strong prompt adherence
    Excels at following detailed, complex prompts with multiple elements and attributes.

  • Fine detail rendering
    Excellent at rendering intricate details like hair textures, jewelry, and clothing accessories.

  • Flexible aspect ratios
    Multiple presets including 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, and 2:3.

  • Custom resolution
    Adjustable width and height from 512 to 2048 pixels.

  • Prompt Enhancer
    Built-in tool to automatically improve your descriptions.


Parameters

ParameterRequiredDescription
promptYesText description of the desired image
sizeNoAspect ratio preset: 1:1, 16:9, 9:16, 4:3, 3:4, 3:2, 2:3
widthNoCustom width in pixels (range: 512–2048)
heightNoCustom height in pixels (range: 512–2048)
seedNoRandom seed for reproducibility (-1 for random)

How to Use

  1. Write your prompt
    Describe the image in detail, including specific attributes, styles, and elements.

  2. Choose size
    Select a preset aspect ratio or customize width/height.

  3. Use Prompt Enhancer (optional)
    Click to automatically refine your description.

  4. Set seed (optional)
    Use a seed for reproducible results.

  5. Run
    Submit and download your generated image.


Best Use Cases

  • Detailed Character Art — Generate characters with specific attributes like hair styles, clothing, and accessories
  • Portrait Photography — Create photorealistic portraits with fine details
  • Fashion & Style — Visualize outfits, hairstyles, and jewelry with precision
  • Concept Art — Render complex scenes with multiple elements
  • Cultural & Artistic — Generate images with specific cultural elements and decorations

Pro Tips

  • Use highly detailed prompts — the model excels at following complex descriptions with multiple attributes
  • Describe specific details like "waist-length loc'd hair," "gold thread," "cowrie shells," or "blue beads" for precise rendering
  • Include motion and pose descriptions for dynamic images (e.g., "caught mid-spin in a dance")
  • Match aspect ratio to your content:
    • 1:1 for portraits
    • 16:9 for landscapes
    • 9:16 for full-body shots
  • Use the same seed to reproduce or iterate on specific results

Notes

  • prompt is the only required field
  • Resolution range: 512–2048 pixels for both width and height
  • Default size is 1:1
  • Ensure your prompts comply with content guidelines

  • Qwen Image 2.0 Pro Text-to-Image — Pro tier with enhanced quality
  • Qwen Image Edit Plus — Image editing with text instructions
  • Seedream V5.0 Lite — ByteDance's lightweight text-to-image model

Start From 300+ Models,

Explore all models

Join our Discord community

Join the Discord community for the latest model updates, prompts, and support.