Generate an image

یک یا چند تصویر از روی متن توصیفی (و اختیاری تصویر مرجع) با مدل انتخابی تولید می‌کند.

نقطهٔ پایانی POST /images/generations به‌ازای هر درخواست، تصویر را به‌صورت بیس‌۶۴ (Base64) برمی‌گرداند. خروجی و پارامترها مطابق فرمت استاندارد OpenAI است، با گزینه‌های پیشرفتهٔ آشا برای نسبت تصویر، کیفیت و فرمت.

Endpoint

POST /images/generations
https://app.asha-ai.ir/v1/images/generations

احراز هویت

با کلید API آشا از طریق هدر Authorization: Bearer <ASHA_API_KEY> احراز هویت کنید.

پارامترهای بدنهٔ درخواست

پارامترنوعپیش‌فرضتوضیح
model string — الزامی. شناسهٔ مدل تولید تصویر، مانند openai/gpt-image-1.
prompt string — الزامی. متن توصیفی که تصویر بر اساس آن ساخته می‌شود.
id string — خطای اختیاری برای ردیابی و جلوگیری از درخواست‌های تکراری.
seed integer تصادفی دانهٔ تولید برای بازتولید همان تصویر.
n integer 1 تعداد تصاویر خروجی (بین ۱ تا ۱۰).
size string طبق مدل اندازهٔ تصویر؛ یا رستهٔ مدل مانند "2K" یا ابعاد پیکسلی مانند "2048x2048".
aspect_ratio enum auto نسبت تصویر؛ auto، 1:1، 16:9، 9:16، 4:3، 3:4 و موارد دیگر.
quality enum auto کیفیت؛ auto، low، medium، high.
resolution enum طبق مدل رزولوشن؛ 512، 1K، 2K، 4K.
output_format enum png فرمت خروجی؛ png، jpeg، webp، svg.
output_compression integer — میزان فشرده‌سازی خروجی بین ۰ تا ۱۰۰.
background enum auto پس‌زمینه؛ auto، transparent، opaque.
input_references array — لیست تصاویر مرجع برای ویرایش یا الهام؛ حداکثر ۱۶ مورد.
provider object — ترجیحات مسیریابی (پروایدر و درجهٔ حذف) مطابق سیاست آشا.

مثال درخواست

curl https://app.asha-ai.ir/v1/images/generations 
  -H "Authorization: Bearer $ASHA_API_KEY" 
  -H "Content-Type: application/json" 
  -d '{
    "model": "openai/gpt-image-1",
    "prompt": "a cute baby sea otter",
    "n": 1,
    "quality": "high"
  }'
import requests

response = requests.post(
    'https://app.asha-ai.ir/v1/images/generations',
    headers={'Authorization': 'Bearer <ASHA_API_KEY>'},
    json={
        'model': 'openai/gpt-image-1',
        'prompt': 'a cute baby sea otter',
        'n': 1,
        'quality': 'high',
    },
)

data = response.json()
for image in data['data']:
    print(f"created={data['created']} bytes={len(image['b64_json'])}")
const response = await fetch('https://app.asha-ai.ir/v1/images/generations', {
  method: 'POST',
  headers: {
    'Authorization': 'Bearer <ASHA_API_KEY>',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'openai/gpt-image-1',
    prompt: 'a cute baby sea otter',
    n: 1,
    quality: 'high',
  }),
});

const data = await response.json();
for (const image of data.data) {
  console.log(`created=${data.created} bytes=${image.b64_json.length}`);
}

دانلود تصویر با پایتون

اسکریپت زیر درخواست را می‌فرستد، پاسخ را می‌گیرد و تصویر تولیدشده را در همان پوشه ذخیره می‌کند. فقط کلید API خود را در ابتدای اسکریپت قرار دهید:

Python download_image.py
# Paste your Asha API key here
ASHA_API_KEY = "YOUR_API_KEY"

import base64

import requests

response = requests.post(
    "https://app.asha-ai.ir/v1/images/generations",
    headers={
        "Authorization": f"Bearer {ASHA_API_KEY}",
        "Content-Type": "application/json",
    },
    json={
        "model": "openai/gpt-image-1",
        "prompt": "a cute baby sea otter",
        "quality": "high",
    },
)
response.raise_for_status()

image = response.json()["data"][0]
media_type = image.get("media_type", "image/png")
extension = media_type.split("/")[1].split("+")[0].replace("jpeg", "jpg")
output_path = f"generated_image.{extension}"

with open(output_path, "wb") as file:
    file.write(base64.b64decode(image["b64_json"]))

print(f"Image saved to {output_path} ({media_type})")

پاسخ موفق