واجهة API لـ Nano Banana Pro
مرجع API كامل لنماذج Nano Banana Pro المدعومة بواسطة Google Gemini.
متغيرات النموذج
تدعم واجهة API هذه متغيرين من النماذج:
مقارنة سريعة
نسب العرض إلى الارتفاع المدعومة
يدعم كلا النموذجين 11 نسب عرض إلى ارتفاع:
16:9 (default), 9:16, 1:1, 3:2, 2:3, 4:3, 3:4, 4:5, 5:4, 21:9, 9:21
Nano Banana Pro (نص إلى صورة)
نقطة النهاية
POST /api/v1/image/task
المصادقة {#}
Authorization: Bearer YOUR_API_KEY
معاملات الطلب
مطلوب
ملاحظة: يجب أن تكون نسبة width:height واحدة من: "21:9", "9:21", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "1:1"
مثال طلب
const response = await fetch('https://api.flaq.ai/api/v1/image/task', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model_name: 'nano-banana-pro',
prompt: 'A serene mountain landscape at sunset',
width: 16,
height: 9,
resolution: '2k'
})
});
const { data } = await response.json();
const taskId = data.task_id;
const pollResponse = await fetch(
`https://api.flaq.ai/api/v1/image/${taskId}`,
{
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
}
);
const result = await pollResponse.json();
console.log(result.data.task_result.images[0].url);
Nano Banana Pro تحرير (تحرير الصور)
نقطة النهاية
POST /api/v1/image/task
معاملات الطلب
مطلوب
ملاحظة: يجب أن تكون نسبة width:height واحدة من: "21:9", "9:21", "16:9", "9:16", "4:3", "3:4", "3:2", "2:3", "1:1"
مثال تحرير صورة واحدة
{
model_name: 'nano-banana-pro-edit',
prompt: 'Change the sky to sunset colors',
width: 16,
height: 9,
resolution: '2k',
image_url_list: ['https://example.com/image.jpg']
}
مثال تركيب صور متعددة
{
model_name: 'nano-banana-pro-edit',
prompt: 'Combine these images into a cohesive landscape',
width: 16,
height: 9,
resolution: '2k',
image_url_list: ['https://example.com/image1.jpg', 'https://example.com/image2.jpg', 'https://example.com/image3.jpg']
}
تنسيق الاستجابة
الاستجابة الأولية
يُرجع كلا النموذجين task_id للاستطلاع:
{
"code": 0,
"data": {
"task_id": "{task_id}",
"task_status": "submitted",
"response_url": "https://api.flaq.ai/api/v1/image/{task_id}"
},
"message": "success"
}
استجابة الاستطلاع
استطلع /api/v1/image/{taskId} للتحقق من الحالة:
{
"code": 0,
"data": {
"task_id": "{task_id}",
"task_status": "succeed",
"task_status_msg": null,
"response_url": "https://api.flaq.ai/api/v1/image/{task_id}",
"task_result": {
"credit": 0.0997,
"images": [
{
"url": "https://example.com/generated-image.jpeg"
}
]
}
},
"message": "success"
}
قيم الحالة
submitted: تم قبول المهمة
processing: الإنشاء قيد التقدم
succeed: اكتمل الإنشاء بنجاح
failed: فشل الإنشاء
معالجة الأخطاء
الأخطاء الشائعة
دقة غير صالحة
{
"code": 400,
"message": "Resolution must be one of: 1k, 2k, 4k"
}
نسبة عرض إلى ارتفاع غير صالحة
{
"code": 400,
"message": "Ratio must be one of: 16:9, 9:16, 1:1, 3:2, 2:3, 4:3, 3:4, 4:5, 5:4, 21:9, 9:21"
}
عنوان URL للصورة مفقود (وضع التحرير)
{
"code": 400,
"message": "image_url_list is required for nano-banana-pro-edit"
}
أفضل الممارسات
نصائح النص إلى صورة
- كن محدداً: ضمّن الموضوع والأسلوب والإضاءة وتفاصيل التكوين
- اختر الدقة بحكمة: 2K هي القيمة الافتراضية والفعالة من حيث التكلفة، واستخدم 4K لأعلى جودة
- اختيار نسبة العرض إلى الارتفاع: اختر النسبة بناءً على حالة استخدامك (16:9 for web, 9:16 for mobile)
- جودة الموجه: تنتج الموجهات الأكثر تفصيلاً عادةً نتائج أفضل
نصائح تحرير الصور
- تعليمات واضحة: كن محدداً بشأن ما تريد تغييره
- تركيب الصور المتعددة: يمكن دمج ما يصل إلى 14 صور في طلب واحد
- مطابقة الدقة: يمكن أن تختلف دقة المخرجات عن الإدخال
- توجيه الموجه: صف النتيجة المطلوبة، وليس التغييرات فقط
أمثلة حالات الاستخدام
تصوير المنتجات
{
model_name: 'nano-banana-pro',
prompt: 'Professional product shot of luxury watch on marble surface',
width: 4,
height: 3,
resolution: '4k'
}
ملصق صور متعددة
{
model_name: 'nano-banana-pro-edit',
image_url_list: [
'photo1.jpg',
'photo2.jpg',
'photo3.jpg'
],
prompt: 'Create a seamless collage with these vacation photos',
width: 16,
height: 9,
resolution: '2k'
}
تحسين الصور
{
model_name: 'nano-banana-pro-edit',
image_url_list: ['photo.jpg'],
prompt: 'Enhance colors and add dramatic lighting',
width: 1,
height: 1,
resolution: '2k'
}