API Hop

الوثائق

وثائق API Hop

توليد الصور باستخدام GPT-Image-2

>-

POSThttps://api.apihop.ai/openai/v1/images/generations

يدعم gpt-image-2 توليد الصور وتحرير الصور المرجعية لصور المنتجات ومسودات الملصقات والرسوم ومواد التواصل الاجتماعي والمرئيات عالية الدقة ونقل الأسلوب ودمج مراجع متعددة.

text
POST https://api.apihop.ai/openai/v1/images/generations

المصادقة

http
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json

البدء السريع

json
{
  "model": "gpt-image-2",
  "prompt": "A minimal black wireless earbud product poster on a white background, clean studio lighting, no text",
  "n": 1,
  "size": "2048x1152",
  "resolution": "2k",
  "quality": "low"
}

نطاق مقارنة الأسعار

فئات الصور المنشورة 1K / 2K / 4K في API Hop هي *أسعار بيع API Hop*، وليست أسعار OpenAI الرسمية الثابتة لكل صورة. تصف وثائق تسعير OpenAI رسوم رموز الصور/النصوص وفئات المعالجة؛ وتعتمد التكلفة الفعلية على الحجم والجودة والمدخلات المرجعية والإخراج. مقارنة الاثنين لمجرد ذكر 1k أو 2k في كليهما ليست حساب خصم على أساس متكافئ.

لتجنب ادعاء توفير غير مسند، أخفي عمدا مرجع المزود المجمع القديم USD per image وشارة الخصم لـGPT Image 2. يبقى سعر API Hop ظاهرا وعقد فوترته دون تغيير. لإجراء مقارنة مستقبلية يمكن إثباتها، سجل النموذج الدقيق ونقطة النهاية وجودة الصورة وحجمها وشروط الإدخال وعنوان المصدر الرسمي وتاريخ التحقق من المرجع. تحقق من السعر الفعلي لحسابك قبل إجراء استدعاء مدفوع.

جسم الطلب

modelstringمطلوبالقيمة الافتراضية: gpt-image-2

معرف نموذج الصور. استخدم gpt-image-2.

promptstringمطلوب

تعليمة الصورة. صف العنصر والمشهد والتكوين والأسلوب والخامة والإضاءة والألوان وما إذا كان يجب ظهور نص.

nintegerالقيمة الافتراضية: 1

عدد الصور المراد توليدها. يدعم عقد gpt-image-2 العام الحالي 1 فقط. تعيد القيم الأخرى 400 قبل حجز الرصيد.

sizestringالقيمة الافتراضية: auto

نسبة أبعاد الإخراج أو أبعاده بالبكسل.

القيم الشائعة:

  • 1:1
  • 4:3
  • 16:9
  • 9:16
  • 1024x1024
  • 1536x1024
  • 1024x1536
  • 2048x2048
  • 2048x1152
  • 3840x2160
  • 2160x3840
  • auto
qualitystringالقيمة الافتراضية: auto

جودة الإخراج. تشمل القيم المدعومة low وmedium وhigh وauto.

resolutionstringالقيمة الافتراضية: 1k

فئة دقة الإخراج. القيم المدعومة هي 1k و2k و4k.

يمكن دمجها مع size، مثلا size: "16:9" وresolution: "2k".

image_urlsarray<string>

صور مرجعية تستخدم للتحرير بالتعليمات أو دمج صور متعددة.

  • حتى 16 صورة.
  • يمكن أن يصل حجم كل صورة إلى 20 MB، مع حد إجمالي للمدخلات قدره 256 MB.
  • تدعم عناوين الصور المتاحة للعامة.
  • تدعم عناوين بيانات Base64 مثل data:image/...;base64,....
  • يمكن مزج عناوين URL وعناوين بيانات base64 في المصفوفة نفسها.
output_formatstringالقيمة الافتراضية: png

تنسيق الإخراج. تشمل القيم المدعومة png وjpeg وwebp.

streambooleanالقيمة الافتراضية: false

ما إذا كانت الاستجابة تستخدم أحداثا يرسلها الخادم.

الصور المرجعية والتحرير

يستخدم تحرير الصور المرجعية نقطة نهاية JSON نفسها. أضف image_urls وصف ما يجب الحفاظ عليه وتغييره في prompt:

json
{
  "model": "gpt-image-2",
  "prompt": "Keep the product unchanged, replace the background with a dark blue studio, and add soft rim lighting",
  "image_urls": [
    "https://example.com/product.png"
  ],
  "size": "1:1",
  "resolution": "2k"
}

يمكن لمراجع متعددة تقديم العنصر أو التكوين أو الأسلوب البصري:

json
{
  "model": "gpt-image-2",
  "prompt": "Use the product from the first image and the composition from the second image to create a clean ecommerce hero image",
  "image_urls": [
    "https://example.com/product.png",
    "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA..."
  ],
  "size": "4:3",
  "resolution": "2k"
}

حدود العقد العام الحالية:

  • يدعم تحرير الصورة الكاملة ونقل الأسلوب ودمج مراجع متعددة عبر image_urls.
  • لا يوجد مسار مستقل POST https://api.apihop.ai/openai/v1/images/edits.
  • لا تقبل عمليات الرفع بـmultipart/form-data. حول الصور المحلية إلى عناوين بيانات base64 أو ارفعها إلى عناوين يمكن الوصول إليها أولا.
  • لا يدعم الترميم المعتمد على القناع. يعيد إرسال mask أو mask_url أو maskUrl الحالة 400 قبل حجز الرصيد.

أمثلة الطلبات

صورة منتج بنسبة 1:1

json
{
  "model": "gpt-image-2",
  "prompt": "A transparent glass cup on a light gray background, commercial product photography, soft shadow, no text",
  "n": 1,
  "size": "1024x1024",
  "resolution": "1k",
  "quality": "low",
  "output_format": "png"
}

ملصق بنسبة 16:9

json
{
  "model": "gpt-image-2",
  "prompt": "A futuristic city night poster with neon lights, wet streets, cinematic composition, no text",
  "n": 1,
  "size": "2048x1152",
  "resolution": "2k",
  "quality": "medium",
  "output_format": "jpeg"
}

كيفية إرجاع النتائج

لا تعيد نقطة النهاية المتوافقة مع OpenAI هذه أولا استجابة إرسال مهمة تتضمن data.jobId لاستطلاعها لاحقا:

  • مع stream: false، ينتظر طلب HTTP الحالي الاكتمال ويعيد عناوين الصور في استجابة JSON.
  • مع stream: true، يبقى اتصال SSE الحالي مفتوحا حتى image_generation.completed و[DONE].

لا تستخدم GET https://api.apihop.ai/v1/jobs/{id} لاسترجاع نتائج نقطة النهاية هذه. استخدم جلب مهمة غير متزامنة فقط عندما تعيد نقطة نهاية إنشاء غير متزامنة jobId صراحة.

استجابة دون بث

تتضمن الاستجابة عناوين الصور. تدرج usage عندما يوفر مسار المزود معلومات قياس الاستخدام.

json
{
  "created": 1777270000,
  "data": [
    {
      "url": "https://image.example.com/generated/123456789012345678/0.png"
    }
  ],
  "usage": {
    "input_tokens": 20,
    "output_tokens": 1234,
    "total_tokens": 1254
  }
}

استجابة البث

text
event: image_generation.completed
data: {"type":"image_generation.completed","data":[{"index":0,"url":"https://image.example.com/generated/123456789012345678/0.png"}],"usage":{"input_tokens":20,"output_tokens":1234,"total_tokens":1254}}

data: [DONE]

مرجع الأحجام

النسبة المستهدفةالمقترح لـ1Kالمقترح لـ2Kالمقترح لـ4K
1:11024x10242048x2048غير مقترح
3:21536x10242048x1360غير مقترح
2:31024x15361360x2048غير مقترح
4:31024x7682048x1536غير مقترح
3:4768x10241536x2048غير مقترح
16:91536x8642048x11523840x2160
9:16864x15361152x20482160x3840
21:92016x8642688x11523840x1648
9:21864x20161152x26881648x3840

استجابة الخطأ

راجع رموز الأخطاء وتشخيصها للمرجع الكامل للرموز واختلافات البروتوكولات وخطوات التشخيص.

json
{
  "code": 10000,
  "message": "prompt is required",
  "type": "api_error"
}

الأخطاء الشائعة:

  • 400: معاملات مطلوبة مفقودة أو تركيبة معاملات غير مدعومة
  • 401: فشلت المصادقة أو مفتاح API غير صحيح
  • 402: الرصيد غير كاف
  • 404: النموذج غير موجود أو غير مفعل
  • 429: تجاوز حد المعدل
  • 5xx: الخدمة غير متاحة مؤقتا أو فشل توليد الصورة