الانتقال إلى المحتوى الرئيسي
تحرير الصور في Venice متزامن. أرسل صورتك المصدر إلى /image/edit أو /image/multi-edit فتعود النتيجة المحرَّرة في الاستجابة ذاتها كملف صورة. أما للقصاصات (Cutouts)، فإن /image/background-remove يُعيد ملف PNG شفافًا.
نقاط نهاية تحرير الصور تجريبية، وقد يتغير السلوك الخاص بكل نموذج بمرور الوقت.

نقاط النهاية

لا توفر Venice نقطة نهاية /images/edits متوافقة مع OpenAI، لذا تُرجع استدعاءات OpenAI SDK مثل client.images.edit() الرمز 404. أرسل عمليات التحرير إلى /image/edit بدلًا من ذلك.

متى تستخدم كل نقطة نهاية

  • استخدم /image/edit عندما تمتلك صورة مصدر واحدة وترغب في تغيير جزء منها أو إزالته أو إعادة تنسيقه بموجّه.
  • استخدم /image/multi-edit عندما تحتاج إلى توجيه التحرير بصور مرجعية إضافية.
  • استخدم /image/background-remove عندما تريد فقط استخراج موضوع المقدمة بشفافية نظيفة.
للإصلاح الموضعي (Inpainting)، استخدم /image/edit أو /image/multi-edit. أما المعامل القديم inpaint في /image/generate فقد تم إيقافه.
اضبط enhance_prompt: true على أي من نقطتَي نهاية التحرير ليُحلِّل مُحسِّنٌ مدرك للرؤية الصورة أو الصور المُدخلة ويعيد كتابة تعليمتك قبل التحرير. راجع تحسين الموجّهات للاطلاع على السلوك والتسعير وتفاصيل ترويسة الاستجابة.

الخطوة 1: تحرير صورة واحدة

تحرير الصورة الواحدة هو أبسط تدفق إصلاح موضعي. أرسل صورة واحدة مع موجّه قصير مثل “remove the sign” أو “change the sky to sunrise” أو “replace the background with a studio backdrop”. الطلب:
الاستجابة (200): يحتوي جسم الاستجابة على بيانات صورة ثنائية خام. احفظها مباشرة في ملف. تكون الصيغة PNG لعمليات التحرير بدقة 1K و JPEG لعمليات التحرير بدقة 2K و 4K، أو PNG بأي دقة عندما تكون قيمة transparent_background هي true. اضبط output_format على jpeg أو png أو webp لاختيارها صراحةً. لا تحتوي نقاط نهاية التحرير على المعامل response_format، لذا لا يمكنها إرجاع الصورة بصيغة JSON مُرمّزة بـ base64. إذا كنت بحاجة إلى base64، فرمّز بايتات الاستجابة بنفسك.

الخطوة 2: استخدم multi-edit مع الصور المرجعية

تقبل نقطة النهاية /image/multi-edit صورًا متعددة، والسقف خاص بكل نموذج. اقرأ model_spec.constraints.maxInputImages من GET /models?type=inpaint لمعرفة سقف نموذج معيّن. وعند غياب هذا الحقل يكون السقف 3، أو 1 عندما تكون قيمة combineImages هي false. الصورة الأولى هي الصورة الأساسية، أما الصور المتبقية فهي مراجع إضافية توجّه عملية التحرير.
لا يملك الـ endpoint العام قناة قناع. الصور الإضافية تعمل كمراجع عبر الصورة بأكملها، وليس كخرائط مناطق. لا يوجد معامل mask، وإرساله يعيد 400. اكتب موجّهًا دقيقًا لتقييد المكان الذي يقع فيه التحرير.
هذا هو الخيار الأفضل عندما تريد:
  • دمج تركيبة موجودة مع صورة مرجعية إضافية
  • تزويد النموذج بأمثلة على النمط أو العنصر أو الخامة المراد تطبيقها
  • تقييد التحرير بشكل أدق مما يسمح به موجّه صورة واحدة
طلب JSON:
طلب Multipart:
كما هو الحال في /image/edit، يكون جسم الاستجابة بيانات صورة خام، وتتبع صيغة الإخراج القواعد نفسها.
تستخدم نقطة النهاية /image/multi-edit حاليًا الحقل modelId بدلاً من model في مخطط الطلب.

نصائح للإصلاح الموضعي

يعمل الإصلاح الموضعي المعتمد على الموجّه بأفضل شكل عندما تكون التعليمة قصيرة ومحلية:
  • remove the tree
  • change the sky to sunset
  • replace the logo with a blank sign
  • restore the torn corner of the photo
أما لتغييرات المشهد الأوسع، فاوصف ما يجب أن يبقى كما هو:
إذا استمر التحرير في التأثير على المنطقة الخطأ، فانتقل من /image/edit إلى /image/multi-edit وزوّد صورة مرجعية إضافية توضّح النتيجة المطلوبة، ثم صِف التغيير المقصود بدقة في الموجّه.

الخطوة 3: إزالة الخلفية

استخدم /image/background-remove عندما تريد عزل موضوع المقدمة على خلفية شفافة. تُعيد نقطة النهاية هذه ملف PNG بقناة شفافية (alpha). باستخدام رابط صورة:
باستخدام رفع ملف محلي:
استخدم إزالة الخلفية لـ:
  • صور منتجات التجارة الإلكترونية
  • الصور الشخصية وصور الملف الشخصي
  • الأصول التي تنوي وضعها فوق خلفية جديدة
إذا كنت ستولّد الصورة أو تحرّرها على أي حال، فيمكنك الاستغناء عن هذا الاستدعاء الثاني: تقبل /image/generate و/image/edit و/image/multi-edit المعامل transparent_background: true على النماذج المدعومة وتُعيد قناة الشفافية (alpha) مباشرة. راجع صور بخلفية شفافة للاطلاع على المقارنة.

معاملات الطلب

/image/edit

/image/multi-edit

/image/background-remove

تستخدم /image/background-remove نموذجًا داخليًا ثابتًا. ولا تقبل حقل model. إرساله (على سبيل المثال "model": "bria-bg-remover") يُعيد 400 لأن model ليس حقلًا معترفًا به.

المحتوى للبالغين والوضع الآمن

تقبل كل من /image/edit و/image/multi-edit المعامل safe_mode (القيمة الافتراضية: true). عند تفعيله، يُشوَّش المحتوى للبالغين في المخرجات المحرَّرة. اضبط safe_mode: false للحصول على مخرجات دون تشويش:
المخرجات المخصّصة للبالغين (NSFW) غير المشوَّشة متاحة لكل مستخدمي API. لا تحتاج إلى اشتراك Pro، ولا يؤثر إعداد فلتر المحتوى الناضج في تطبيق Venice على طلبات الصور المُرسَلة عبر API. تختلف سياسات المحتوى حسب نموذج التحرير وتُطبَّق بصرف النظر عن safe_mode. للتحرير غير الخاضع للرقابة، استخدم qwen-edit-uncensored. يُربك اختلافُ تسمية الإشراف بين نقاط النهاية كثيرًا من المستخدمين: تمرير safe_mode إلى /images/generations يُعيد 400 مع الرسالة Unrecognized key(s) in object: 'safe_mode'.

صيغ الإدخال المدعومة

بالنسبة لنقاط نهاية التحرير، يجب ألا تقل أبعاد الصور عن 256×256 بكسل، وألا يتجاوز إجمالي عدد البكسلات 33,177,600 (دقة 8K). ويجب أن تكون الملفات المرفوعة أقل من 25MB.

النماذج والتسعير

نموذج التحرير الافتراضي هو firered-image-edit، بسعر 0.04 دولار لكل عملية تحرير. وقد تختلف أسعار وقيود النماذج الأخرى القادرة على التحرير. يضيف تحسين الموجّهات 0.04 دولار لكل إعادة كتابة مُطبَّقة إلى سعر التحرير. راجع:

الأخطاء

بعض نماذج التحرير تتبنى سياسات محتوى أكثر صرامة من نماذج توليد الصور. تُرفض الطلبات التي تنتهك سياسة النموذج المحدد بالرمز 422.

مسارات العمل ذات الصلة