پرش به مطلب اصلی

Image Variation

Image Variation از یک تصویر مرجع، نسخه‌های نزدیک یا خلاقانه می‌سازد. این API برای زمانی مناسب است که تصویر پایه دارید و می‌خواهید چند گزینه مشابه، با تنوع کنترل‌شده، تولید کنید.

POST /v1/images/variations
اطلاع

Variation یعنی ساخت نسخه‌های تازه از تصویر مرجع. اگر هدف شما تغییر مشخص یک بخش تصویر است، Image Edit دقیق‌تر است.

هشدار

در OpenAI، مسیر POST /v1/images/variations فقط با dall-e-2 پشتیبانی می‌شود. برای مدل‌های GPT Image مثل gpt-image-1 یا gpt-image-1.5، از Image Edit یا تولید تصویر با تصویر مرجع استفاده کنید.

چه زمانی استفاده کنیم؟

از Image Variation استفاده کنید وقتی می‌خواهید:

  • چند نسخه نزدیک از یک طرح اولیه بسازید.
  • برای یک تصویر محصول، گزینه‌های بصری متفاوت بگیرید.
  • ایده‌های طراحی را بدون نوشتن پرامپت از صفر گسترش دهید.
  • خروجی‌های مشابه اما نه کاملاً یکسان برای انتخاب انسانی بسازید.

برای ساخت تصویر کاملاً تازه از متن، Image Generation مسیر مناسب‌تری است.

شروع سریع

import requests

with open("reference.png", "rb") as image:
response = requests.post(
"https://YOUR_WORKSPACE.godarai.ir/v1/images/variations",
headers={"Authorization": "Bearer YOUR_GODARAI_TOKEN"},
data={
"model": "openai:default:dall-e-2",
"n": "2",
"size": "1024x1024",
"response_format": "url",
},
files={"image": ("reference.png", image, "image/png")},
timeout=180,
)

response.raise_for_status()
for item in response.json()["data"]:
print(item["url"])

در بیشتر سناریوها، ارسال فایل با multipart/form-data برای Variation طبیعی‌تر از ارسال JSON است.

برای OpenAI، تصویر مرجع باید فایل PNG معتبر، مربع و کمتر از ۴MB باشد. اگر تصویر شما JPEG، مستطیلی یا بزرگ‌تر است، پیش از ارسال آن را آماده کنید.

نکته

برای انتخاب خروجی بهتر، n را در مرحله آزمایش کمی بالاتر بگیرید و بعد از رسیدن به سبک مناسب، در محیط عملیاتی تعداد خروجی را کاهش دهید تا هزینه کنترل شود.

ساختار درخواست

فیلدهای رایج:

فیلدکاربرد
modelشناسه مدل تصویری مجاز.
imageتصویر مرجع برای ساخت نسخه‌های جدید.
nتعداد نسخه‌های خروجی.
sizeاندازه خروجی، اگر مدل پشتیبانی کند.
response_formatفرمت پاسخ در مدل‌هایی که پشتیبانی می‌کنند؛ برای dall-e-2 می‌تواند url یا b64_json باشد.
هشدار

OpenAI برای Variation تصویر مرجع را به‌صورت فایل در multipart/form-data می‌پذیرد. شکل JSON برای تصویر مرجع به ارائه‌دهنده و مدل بستگی دارد و نباید برای مسیر OpenAI فرض شود.

خروجی

{
"created": 1720000000,
"data": [
{
"url": "https://YOUR_WORKSPACE.godarai.ir/assets/variation-1.png"
},
{
"url": "https://YOUR_WORKSPACE.godarai.ir/assets/variation-2.png"
}
]
}

اگر response_format را b64_json بفرستید، خروجی می‌تواند داده base64 باشد. اگر URL می‌گیرید، آن را برای نگهداری بلندمدت به storage خود منتقل کنید؛ URLهای ارائه‌دهنده معمولاً برای دسترسی دائمی طراحی نشده‌اند.

تفاوت Variation با Edit

موضوعImage VariationImage Edit
هدفساخت نسخه‌های مشابه یا خلاقانهتغییر هدفمند تصویر
ورودی اصلیتصویر مرجعتصویر ورودی و پرامپت تغییر
کنترل ناحیهمعمولاً کمتربا mask می‌تواند دقیق‌تر باشد
خروجیچند گزینه نزدیک به تصویر پایهنسخه ویرایش‌شده طبق دستور

اگر کاربر نهایی انتظار تغییر دقیق دارد، Variation انتخاب مناسبی نیست.

کیفیت تصویر مرجع

کیفیت خروجی به تصویر مرجع وابسته است. برای نتیجه بهتر:

  • تصویر مرجع واضح و بدون فشرده‌سازی شدید باشد.
  • سوژه اصلی در تصویر قابل تشخیص باشد.
  • اگر تصویر شامل متن است، انتظار بازتولید دقیق متن نداشته باشید.
  • برای داده حساس، نسخه پاک‌سازی‌شده تصویر را ارسال کنید.

هزینه و پایش

هر مقدار بالاتر n معمولاً یعنی خروجی بیشتر، زمان بیشتر و هزینه بیشتر. گدارAI در تخمین اولیه تعداد خروجی و تصویر ورودی را لحاظ می‌کند و اگر ارائه‌دهنده در پاسخ usage یا هزینه دقیق برگرداند، مصرف نهایی را با همان داده ثبت می‌کند. پس برای جریان‌های پرترافیک:

  • تعداد خروجی را محدود کنید.
  • خروجی‌های انتخاب‌نشده را طولانی‌مدت نگه ندارید.
  • هزینه را در گزارش رخداد و سنجه‌ها بررسی کنید.

خطاهای رایج

نشانهعلت محتملراه‌حل
model is requiredشناسه مدل ارسال نشده است.مدل تصویری مجاز را وارد کنید.
image is requiredتصویر مرجع ارسال نشده است.تصویر را در multipart/form-data با فیلد image بفرستید.
خطای مدل درباره dall-e-2در OpenAI، images/variations فقط dall-e-2 را می‌پذیرد.برای Variation از openai:default:dall-e-2 استفاده کنید یا برای GPT Image به Image Edit بروید.
درخواست با خطای دسترسی رد می‌شودمدل برای نوع تصویر مجاز نیست.مدل نوع image_generation انتخاب کنید.
خروجی خیلی از تصویر مرجع دور استمدل یا تنظیمات Variation کنترل کافی ندارد.مدل دیگری آزمایش کنید یا اگر تغییر دقیق می‌خواهید از Image Edit استفاده کنید.
خطای فایلفرمت، اندازه یا روش ارسال فایل سازگار نیست.برای OpenAI فایل PNG مربع و کمتر از ۴MB بفرستید.

جمع‌بندی

Image Variation برای گسترش یک تصویر مرجع به چند گزینه تازه مناسب است. آن را با ویرایش دقیق تصویر اشتباه نگیرید، تعداد خروجی را کنترل کنید و نتیجه را با همان مدل و فرمت فعال در فضای کاری خود بسنجید.