API ساخت عکس با هوش مصنوعی در ایران: مدل‌ها، قیمت‌گذاری و کد آماده

API تولید تصویر با پرداخت تومانی: نانو بنانا پرو، GPT Image، FLUX و Seedream با یک کلید؛ قیمت‌گذاری هر تصویر، ویرایش عکس و کد Python و curl.

۱۶ مهر ۱۴۰۵ · ۱۳ دقیقه مطالعه · تیم یوتاپن
API ساخت عکس با هوش مصنوعی در ایران: مدل‌ها، قیمت‌گذاری و کد آماده

اگر می‌خواهی داخل سایت، اپ یا ربات خودت عکس بسازی، به یک API تولید تصویر نیاز داری، نه یک سایت که دستی در آن تایپ کنی. در یوتاپن این API همان شکل OpenAI را دارد: با SDK رسمی OpenAI و فقط با عوض کردن base_url، تابع client.images.generate را صدا می‌زنی و با همان یک کلید sk-up- به بیش از ۵۰ مدل تصویر، از نانو بنانا پرو و GPT Image تا FLUX و Seedream، دسترسی داری. پرداخت با کیف پول تومانی است و آدرس api.uttapen.ir داخل ایران است، پس VPN و کارت ارزی لازم نداری.

این راهنما سه سؤال اصلی را جواب می‌دهد: کدام مدل برای کار تو مناسب است، هزینهٔ هر تصویر چطور حساب می‌شود، و کد ساخت و ویرایش عکس دقیقاً چه شکلی است.

چرا خرید مستقیم API تولید تصویر از ایران سخت است

مدل‌های تصویر را شرکت‌های مختلفی می‌سازند: Google خانوادهٔ Gemini Image (همان نانو بنانا)، OpenAI مدل‌های GPT Image، Black Forest Labs مدل‌های FLUX و ByteDance مدل‌های Seedream. هر کدام کنسول و حساب جداگانه دارد و اعتبارش را به دلار و با کارت بانکی بین‌المللی می‌فروشد. کارت ایرانی در هیچ‌کدام کار نمی‌کند. اگر بخواهی دو یا سه مدل را کنار هم امتحان کنی، باید چند حساب ارزی جدا را شارژ و نگهداری کنی. ریسک کارت مجازی و حساب واسطه را قبلاً در راهنمای دسترسی به API مدل‌ها از ایران توضیح داده‌ایم.

در یوتاپن با موبایل ایرانی ثبت‌نام می‌کنی، کیف پول را از درگاه زیبال به تومان شارژ می‌کنی و یک کلید می‌سازی. همین کلید هم برای مدل‌های تصویر کار می‌کند و هم برای مدل‌های متنی. مسیر بین‌المللی درخواست را زیرساخت ما در خارج از ایران مدیریت می‌کند و تو فقط با یک آدرس داخلی کار داری.

API ساخت عکس با هوش مصنوعی: درخواست متنی که در مسیری نورانی به یک تصویر رنگی تبدیل می‌شود

کدام مدل ساخت عکس را انتخاب کنم

اینجا عدد بنچمارک یا رتبه‌بندی کیفیت نمی‌آوریم، چون کیفیت تصویر به سبک و موضوع کار تو بستگی دارد و باید روی نمونه‌های خودت بسنجی. ستون «نقطهٔ قوت» از توضیحی آمده که خود سازندهٔ مدل منتشر کرده و در کاتالوگ ما هم هست. ستون آخر می‌گوید هزینه چطور حساب می‌شود. برای قیمت روز، صفحهٔ هر مدل یا فهرست مدل‌های تصویر را ببین.

مدلنقطهٔ قوت به گفتهٔ سازندهنوع قیمت‌گذاری
uttapen/auto-image (مستندات)مدل را بر اساس درخواستت خودش انتخاب می‌کندقیمت مدل انتخاب‌شده + هزینهٔ ناچیز تشخیص
google/gemini-3-pro-image (Nano Banana Pro)پیشرفته‌ترین مدل ساخت و ویرایش تصویر Google، بر پایهٔ Gemini 3 Proتوکنی: ورودی و خروجی جدا + تصویر خروجی
google/gemini-3.1-flash-image (Nano Banana 2)کیفیت نزدیک به Pro با سرعت Flashتوکنی + تصویر خروجی
google/gemini-nano-banana-2.1جانشین Nano Banana 2، بهتر در قرار دادن محصول در صحنهٔ تازهتوکنی + تصویر خروجی
openai/gpt-image-2تازه‌ترین مدل ساخت و ویرایش تصویر OpenAIتوکنی + تصویر خروجی
openai/gpt-image-1رندر دقیق متن، پس‌زمینهٔ شفافتوکنی + تصویر خروجی
black-forest-labs/flux.2-proپایبندی به پرامپت، نور پایدار، ثبات چهره و شخصیتبه‌ازای هر تصویر
bytedance-seed/seedream-4.5ثبات بهتر در ویرایش نسبت به نسخهٔ قبل (راهنمای Seedream)به‌ازای هر تصویر
qwen/qwen-image-3رندر متن و جزئیات ریزبه‌ازای هر تصویر + تصویر مرجع ورودی
recraft/recraft-v4ترکیب‌بندی؛ نسخه‌های Vector خروجی SVG می‌دهندبه‌ازای هر تصویر

چند نکتهٔ عملی:

  • اگر نمی‌دانی از کجا شروع کنی، uttapen/auto-image را بفرست. یک مدل زبانی ارزان درخواستت را می‌خواند و مدل را از جدولی که ما به‌روز نگه می‌داریم برمی‌دارد. امروز برای تصویر عمومی، عکس واقعی‌نما و عکس محصول Seedream 4.5 را انتخاب می‌کند و برای پوستر متن‌دار و ویرایش عکس Nano Banana 2 را. دلیل انتخاب در پاسخ می‌آید. اگر خودت مدلی را نام ببری، همیشه همان اجرا می‌شود.
  • نانو بنانا پرو جزو مدل‌های گران کاتالوگ است. برای کاری که Nano Banana 2 یا یک مدل قیمت‌ثابت از پسش برمی‌آید، اول آن‌ها را امتحان کن. فرق نسخه‌های این خانواده را در راهنمای API نانو بنانا پرو نوشته‌ایم.
  • برای لوگو و آیکون، نسخه‌های Vector خانوادهٔ Recraft خروجی SVG می‌دهند که بدون افت کیفیت بزرگ می‌شود.
  • برای پیش‌نویس و تست زیاد، مدل‌های سریع مثل Seedream 5.0 Flash، FLUX.2 Klein یا Recraft V4.1 Flash معمولاً جزو ارزان‌ترین‌های فهرست‌اند. ترتیب دقیق را در صفحهٔ مدل‌های تصویر ببین، چون با تغییر قیمت سازنده و نرخ ارز جابه‌جا می‌شود.

اگر کنار تصویر از مدل‌های متنی Google هم استفاده می‌کنی، راهنمای API Gemini در ایران را ببین.

قیمت API تولید تصویر چطور حساب می‌شود

در این مقاله عدد تومانی نمی‌نویسیم، چون قیمت‌ها با نرخ ارز و قیمت سازنده هر روز عوض می‌شوند و عدد امروز فردا غلط است. قیمت زنده را در فهرست مدل‌های تصویر ببین. ستون «قیمت هر تصویر» در آن صفحه برای یک تصویر معمولی (حدود ۱ تا ۴ مگاپیکسل) حساب شده. جزئیات کامل‌تر هم روی صفحهٔ هر مدل آمده. خود قیمت‌گذاری دو شکل دارد:

به‌ازای هر تصویر. بیشتر مدل‌های FLUX، Seedream، Recraft، Krea و Qwen این‌طورند. هر تصویر خروجی یک مبلغ مشخص دارد و رزولوشن و کیفیت بالاتر معمولاً گران‌ترش می‌کند. چند مدل، مثل Qwen Image 3 و Seedream 5.0 Pro، برای هر تصویر مرجعی که در ورودی می‌فرستی هم مبلغ جداگانه دارند.

توکنی. مدل‌های Gemini Image و GPT Image مثل مدل‌های متنی برای ورودی و خروجی قیمت جدا به‌ازای هر میلیون توکن دارند و تصویر خروجی هم جزء جداگانه‌ای در قیمت است. یعنی پرامپت بلند، تصویر مرجع و توکن‌های استدلال مدل هم در هزینه اثر دارند. عددی که در فهرست برای هر تصویر می‌بینی برآورد یک ساخت معمولی است و هزینهٔ واقعی می‌تواند کمی بیشتر یا کمتر باشد.

روند پرداخت در هر دو حالت یکی است (جزئیاتش در مستندات رسانه):

  1. پیش از ساخت، مبلغی بر اساس قیمت هر تصویر از کیف پول رزرو می‌شود.
  2. بعد از ساخت، فقط هزینهٔ واقعی‌ای که سازندهٔ مدل برای همان تصویر گزارش می‌کند کم می‌شود و بقیهٔ رزرو برمی‌گردد.
  3. ساخت ناموفق رایگان است. خطا، رد شدن به‌خاطر قوانین محتوا یا نرسیدن فایل، کل رزرو را آزاد می‌کند.

هزینهٔ نهایی هر ساخت در هدر X-Uttapen-Cost-Toman و فیلد uttapen.cost_toman پاسخ می‌آید و موجودی بعد از آن در X-Uttapen-Balance-Toman. اشتراک ماهانه یا بستهٔ اعتباری در کار نیست و فقط بابت تصویرهایی که واقعاً ساخته شده‌اند پول می‌دهی. اگر می‌خواهی هزینهٔ تصویر را با مدل‌های متنی مقایسه کنی، مقالهٔ قیمت API مدل‌ها به تومان و صفحهٔ قیمت‌ها را ببین.

ساخت عکس با API در Python

مسیر POST /v1/images/generations همان شکل OpenAI را دارد. پاسخ هم‌زمان است و درخواست تا ساخته شدن تصویر باز می‌ماند، که معمولاً چند ثانیه تا یک دقیقه طول می‌کشد. فیلدهایی که SDK رسمی تعریف نکرده، مثل aspect_ratio، داخل extra_body می‌روند:

import urllib.request
from openai import OpenAI

client = OpenAI(base_url="https://api.uttapen.ir/v1", api_key="sk-up-...")

raw = client.images.with_raw_response.generate(
    model="google/gemini-3.1-flash-image",   # یا uttapen/auto-image برای انتخاب خودکار
    prompt="عکس محصول: یک فنجان سرامیکی فیروزه‌ای روی میز چوبی، نور نرم صبح، پس‌زمینهٔ ساده",
    n=1,
    extra_body={"aspect_ratio": "1:1", "output_format": "webp"},
)
img = raw.parse()

url = img.data[0].url                       # لینک امضاشده، ۲۴ ساعت معتبر
urllib.request.urlretrieve(url, "cup.webp")
print("هزینه:", raw.headers.get("X-Uttapen-Cost-Toman"), "تومان")

فیلدهای مهم: n از ۱ تا ۴ تصویر در هر درخواست، prompt تا ۴٬۰۰۰ نویسه به فارسی یا انگلیسی، size / aspect_ratio / resolution / quality (مثل 1024x1024، 16:9، 2K، high) که هر مدل بخشی از آن‌ها را پشتیبانی می‌کند، output_format (png، jpeg، webp) و response_format که پیش‌فرضش url است و با b64_json خود داده را برمی‌گرداند. فهرست کامل در مستندات ساخت تصویر است.

همان درخواست با curl

curl https://api.uttapen.ir/v1/images/generations \
  -H "Authorization: Bearer $UTTAPEN_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uttapen/auto-image",
    "prompt": "پوستر یک کافه با متن «قهوهٔ صبح» روی دیوار آجری، نور گرم",
    "n": 1,
    "aspect_ratio": "16:9"
  }'

در پاسخ، data[0].url لینک فایل است و شیء uttapen شامل cost_toman (هزینهٔ نهایی)، hold_toman (رزروی که آزاد شد) و در حالت خودکار، auto با دلیل انتخاب مدل است. اگر اتصالت وسط کار قطع شود، ساخت در سرور ادامه پیدا می‌کند و نتیجه را با GET /v1/uttapen/media/{id} می‌گیری. شناسه در هدر X-Uttapen-Media-Id می‌آید.

فایل‌ها روی سرور خودمان در ایران نگه داشته می‌شوند. لینک امضاشده ۲۴ ساعت بدون کلید باز می‌شود و خود فایل ۳۰ روز می‌ماند، پس اگر تصویر را بعداً لازم داری در فضای خودت ذخیره‌اش کن.

ویرایش عکس با تصویر مرجع

برای ویرایش یا تبدیل تصویر به تصویر، یک یا چند عکس (حداکثر ۴، هر کدام تا ۱۰ مگابایت) را در image یا images بفرست. ورودی می‌تواند آدرس https باشد یا data:image/…;base64. با uttapen/auto-image، وقتی عکس فرستاده باشی، مدل ویرایش انتخاب می‌شود:

img = client.images.generate(
    model="uttapen/auto-image",
    prompt="پس‌زمینه را ساحل غروب کن و سایهٔ محصول را طبیعی نگه دار",
    extra_body={"image": "https://example.com/product.jpg"},
)
print(img.data[0].url)

کاربرد رایجش عکس محصول فروشگاه است: یک عکس ساده از محصول می‌گیری و صحنه، نور یا پس‌زمینه را عوض می‌کنی. روال کامل و چک‌لیستش در ساخت عکس محصول با هوش مصنوعی برای فروشگاه آمده. مدلی که ورودی تصویر نمی‌پذیرد خطای 400 با param: "images" برمی‌گرداند و هزینه‌ای کم نمی‌شود. اگر می‌خواهی محتوای یک عکس را بخوانی و تحلیل کنی، مثلاً یک فاکتور، این کار مدل vision است، نه مدل تصویر. نمونه‌اش در مقالهٔ پردازش تصویر و خواندن فاکتور فارسی آمده.

عکس یک محصول که در لایه‌های شیشه‌ای به صحنه‌ای تازه منتقل می‌شود

پرامپت فارسی و متن فارسی داخل تصویر

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

نوشتن متن فارسی داخل تصویر سخت‌ترین بخش کار است. سازندهٔ بعضی مدل‌ها، مثل GPT Image 1، FLUX.2 Flex و Qwen Image 3، روی رندر دقیق متن تأکید کرده و حالت خودکار هم پوستر متن‌دار را به Nano Banana 2 می‌سپارد. ولی این ادعاها عمدتاً دربارهٔ خط لاتین است. حروف پیوستهٔ فارسی، راست‌به‌چپ بودن و نقطه‌ها هنوز گاهی به هم می‌ریزند و حرفی جابه‌جا یا ناقص درمی‌آید. ما برای هیچ مدلی تضمین متن فارسی بی‌نقص نمی‌دهیم. توصیه‌های عملی:

  • متن را کوتاه نگه دار، یک تا سه کلمه، و آن را داخل «» در پرامپت بیاور.
  • با n چند نسخه بساز و بهترین را انتخاب کن. چون ساخت ناموفق رایگان است، تست کردن ریسک چندانی ندارد.
  • برای پوستر، بنر یا هر جایی که درستی متن مهم است، تصویر را بدون متن بساز و متن را خودت با فونت فارسی در لایهٔ طراحی رویش بگذار. این روش هم دقیق‌تر است و هم ویرایش‌پذیر.

یک محدودیت را هم در نظر داشته باش: تصویر شبیه افراد واقعی، محتوای جنسی و خشونت شدید ساخته نمی‌شود. چنین درخواستی پیش از هر هزینه‌ای با content_policy_violation و پیام فارسی رد می‌شود.

بدون نوشتن کد: استودیو

اگر برنامه‌نویس نیستی یا فقط می‌خواهی پیش از نوشتن کد چند مدل را مقایسه کنی، استودیوی یوتاپن همین کار را در مرورگر انجام می‌دهد. یک جمله می‌نویسی، مدل را خودت انتخاب می‌کنی یا انتخابش را به حالت خودکار می‌سپاری، پیش از ساخت برآورد تومانی را می‌بینی و بعد از ساخت فقط هزینهٔ واقعی کم می‌شود. کیف پول همان کیف پول API است. پرامپتی را که در استودیو جواب داد، می‌توانی بی‌تغییر در کد بگذاری.

پرسش‌های پرتکرار

API تولید تصویر رایگان دارید؟

نه. هیچ‌کدام از مدل‌های تصویر کاتالوگ رایگان نیست و طرح رایگان هم نداریم. پرداخت فقط بر اساس مصرف است. ولی ساخت ناموفق یا ردشده هیچ هزینه‌ای ندارد و بابت تشخیص ناموفق در حالت خودکار هم پولی کم نمی‌شود. برای تست ارزان، یکی از مدل‌های سریعی که بالاتر گفتیم، مثل Seedream 5.0 Flash یا FLUX.2 Klein، را انتخاب کن و n=1 بفرست.

nano banana api یا نانو بنانا پرو api را چطور صدا بزنم؟

نانو بنانا پرو در API ما با شناسهٔ google/gemini-3-pro-image و Nano Banana 2 با google/gemini-3.1-flash-image در دسترس است. کافی است همین شناسه را در فیلد model نمونه‌کد Python بالا بگذاری. راهنمای کامل این خانواده، از انتخاب نسخه تا ویرایش با عکس مرجع، در API نانو بنانا پرو است. اگر ترجیح می‌دهی نانو بنانا را از مسیر chat/completions صدا بزنی، آن روش در راهنمای API Gemini آمده. قیمت زنده و جزئیات هر کدام روی صفحهٔ نانو بنانا پرو و صفحهٔ Nano Banana 2 است.

کدی که برای GPT Image API نوشته‌ام اینجا کار می‌کند؟

بله. مسیر و شکل درخواست همان images/generations است. base_url را به https://api.uttapen.ir/v1 عوض کن، کلید sk-up- بگذار و شناسهٔ مدل را با پیشوند سازنده بنویس، مثلاً openai/gpt-image-2. برای FLUX API هم همین کد کار می‌کند و فقط شناسه عوض می‌شود، مثلاً black-forest-labs/flux.2-pro. فیلدهای اضافه مثل aspect_ratio یا تصویر مرجع داخل extra_body می‌روند.

قیمت هر تصویر ثابت است؟

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

در هر درخواست چند تصویر می‌شود ساخت؟

حداکثر ۴ تصویر در هر درخواست. بیش از ۳ ساخت هم‌زمان، یا عبور از سقف ساخت در دقیقه، خطای 429 می‌دهد. برای حجم بالا درخواست‌ها را در صف بگذار و Retry-After را رعایت کن.

جمع‌بندی

برای شروع، uttapen/auto-image را با یک پرامپت واقعی از کار خودت صدا بزن و ببین کدام مدل انتخاب می‌شود. بعد همان پرامپت را روی دو سه مدل از فهرست مدل‌های تصویر تکرار کن و کیفیت و cost_toman را کنار هم بگذار. اگر متن فارسی داخل تصویر لازم داری، اول آن را جدا تست کن. اگر می‌خواهی از همین تصویرها کلیپ کوتاه بسازی، API ساخت ویدیو با هوش مصنوعی قدم بعدی است. حساب نداری؟ حساب بساز و کلید API بگیر، یا برای امتحان بدون کد به استودیو سر بزن.

مقاله‌های مرتبط

می‌خواهی همین کد را اجرا کنی؟

با شماره موبایل ثبت‌نام کن، کیف پول را شارژ کن و کلید بگیر. ساخت کلید API ←