# seedream-v5.0-lite

> Seedream 5.0 Lite by is a state-of-the-art text-to-image model with enhanced typography, clear text rendering for posters and brand visuals, superior prompt adherence, and up to 4K resolution. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

- **Provider:** ByteDance
- **Category:** text-to-image
- **Price:** $0.0400 per run

## Key Features

- High-fidelity image generation from natural language prompts with photorealistic or stylized outputs.
- Advanced prompt comprehension — accurately interprets complex scenes, spatial relationships and artistic styles.
- Multiple aspect ratio support — generate in landscape, portrait, square or custom dimensions.
- Fine-grained style control through detailed prompt engineering and parameter tuning.
- Fast inference with production-ready API — low latency, no cold starts.
- Consistent quality across diverse subjects: people, landscapes, objects, abstract art and more.

## Parameters

| Parameter | Required | Description |
| --- | --- | --- |
| `prompt` | Yes | Text description of the image to generate. |
| `aspect_ratio` | No | Aspect ratio: 1:1, 16:9, 9:16, 4:3, 3:4 (default: 1:1). |
| `resolution` | No | Output resolution tier (default varies by model). |
| `seed` | No | Seed for reproducible results. |

## How to Use

1. Open the Playground and write a detailed description of the image you want to create.
2. Select your desired aspect ratio and resolution.
3. Click Generate and wait for results.
4. Download or iterate — refine your prompt for better results.

## Code Examples

### Python

```python
import os
import requests

response = requests.post(
    "https://aircube.ai/api/v3/seedream-v5.0-lite",
    headers={
        "Authorization": "Bearer " + os.environ["AIRCUBE_API_KEY"],
        "Content-Type": "application/json",
    },
    json={
    "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
},
    timeout=300,
)
data = response.json()

if data["success"]:
    print("ID:", data["data"]["id"], "Status:", data["data"]["status"])
else:
    print("Error:", data["error"]["message"])
```

### Node.js

```javascript
const response = await fetch("https://aircube.ai/api/v3/seedream-v5.0-lite", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.AIRCUBE_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
}),
});

const data = await response.json();

if (data.success) {
  console.log("ID:", data.data.id, "Status:", data.data.status);
} else {
  console.error("Error:", data.error.message);
}
```

### cURL

```curl
curl -X POST "https://aircube.ai/api/v3/seedream-v5.0-lite" \
  -H "Authorization: Bearer $AIRCUBE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
}'
```

### Python (Async)

```python
import os
import time
import requests

# 1. Submit
response = requests.post(
    "https://aircube.ai/api/v3/seedream-v5.0-lite",
    headers={
        "Authorization": "Bearer " + os.environ["AIRCUBE_API_KEY"],
        "Content-Type": "application/json",
    },
    json={
    "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
},
    timeout=300,
)
data = response.json()

if not data["success"]:
    print("Error:", data["error"]["message"])
    exit(1)

generation_id = data["data"]["id"]
print(f"Submitted: {generation_id}")

# 2. Poll until completed
while True:
    time.sleep(5)
    r = requests.get(
        f"https://aircube.ai/api/v3/status/{generation_id}",
        headers={"Authorization": "Bearer " + os.environ["AIRCUBE_API_KEY"]},
    )
    result = r.json()["data"]

    if result["status"] == "completed":
        print(result["output_url"])
        break
    elif result["status"] == "failed":
        print("Generation failed")
        break
```

### Node.js (Async)

```javascript
// 1. Submit
const response = await fetch("https://aircube.ai/api/v3/seedream-v5.0-lite", {
  method: "POST",
  headers: {
    "Authorization": "Bearer " + process.env.AIRCUBE_API_KEY,
    "Content-Type": "application/json",
  },
  body: JSON.stringify({
  "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
}),
});
const data = await response.json();

if (!data.success) {
  console.error("Error:", data.error.message);
  process.exit(1);
}

const generationId = data.data.id;
console.log("Submitted:", generationId);

// 2. Poll until completed
while (true) {
  await new Promise((r) => setTimeout(r, 5000));
  const res = await fetch(
    `https://aircube.ai/api/v3/status/${generationId}`,
    { headers: { "Authorization": "Bearer " + process.env.AIRCUBE_API_KEY } },
  );
  const result = (await res.json()).data;

  if (result.status === "completed") {
    console.log(result.output_url);
    break;
  } else if (result.status === "failed") {
    console.error("Generation failed");
    break;
  }
}
```

### cURL (Async)

```curl
# 1. Submit
RESPONSE=$(curl -s -X POST "https://aircube.ai/api/v3/seedream-v5.0-lite" \
  -H "Authorization: Bearer $AIRCUBE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "prompt": "A serene mountain landscape at sunset, golden light on snow-capped peaks"
}')

ID=$(echo "$RESPONSE" | jq -r '.data.id')
echo "Submitted: $ID"

# 2. Poll until completed
while true; do
  sleep 5
  STATUS_RES=$(curl -s "https://aircube.ai/api/v3/status/$ID" \
    -H "Authorization: Bearer $AIRCUBE_API_KEY")
  STATUS=$(echo "$STATUS_RES" | jq -r '.data.status')

  if [ "$STATUS" = "completed" ]; then
    echo "$STATUS_RES" | jq -r '.data.output_url'
    break
  elif [ "$STATUS" = "failed" ]; then
    echo "Generation failed"; break
  fi
done
```

## Pricing

| Resolution | Duration | Cost |
| --- | --- | --- |
| 2k | per image | $0.04 |
| 3k | per image | $0.04 |

### Billing Rules

- Per image: 2k: $0.04, 3k: $0.04.
- Failed generations are not charged.

## Best Use Cases

- Marketing assets — generate hero images, social media visuals and ad creatives.
- Product mockups — quickly visualize product concepts and packaging designs.
- Art and illustration — create custom artwork, book covers and editorial illustrations.
- Storyboarding — generate scene compositions for video and animation planning.

## Pro Tips

- Be specific about composition, lighting, and style in your prompts for more predictable results.
- Include art medium keywords (oil painting, watercolor, 3D render, photography) to guide the style.
- Use negative descriptors to avoid unwanted elements — describe what you DO want, not what you don't.
- Start with a lower resolution for fast iterations, then upscale your favorite result.

## Notes

- Outputs are saved to your generation history for 7 days.
- Maximum prompt length varies by model — keep prompts under 500 words for best results.
- Content policy applies — harmful or prohibited content will be filtered.

## FAQ

**Q: What is the seedream-v5.0-lite API?**

Seedream 5.0 Lite by is a state-of-the-art text-to-image model with enhanced typography, clear text rendering for posters and brand visuals, superior prompt adherence, and up to 4K resolution. Ready-to-use REST inference API, best performance, no coldstarts, affordable pricing.

**Q: What image formats does seedream-v5.0-lite output?**

Generated images are returned as PNG or JPEG URLs. You can download them directly or use the URL in your application.

**Q: How do I improve the quality of seedream-v5.0-lite outputs?**

Write detailed prompts that include subject, composition, lighting, style and mood. Use higher resolutions for final production images.

**Q: Can I use seedream-v5.0-lite outputs commercially?**

Yes — images you generate are yours to use commercially. Review the Pricing page for any plan-specific limits.
