أخبار المنتجات

تعزيز تفاعل المستخدمين مع الصور التي تم إنشاؤها باستخدام الذكاء الاصطناعي

مدّة القراءة: 5 دقائق
عرض الملف الشخصي لـ Thomas Ezan عرض الملف الشخصي لـ "موزارت لويس"
Thomas Ezan & Mozart Louis

يمكن أن يؤدي إضافة صور مخصّصة إلى تطبيقك إلى تحسين تجربة المستخدمين وتخصيصها بشكل كبير وتعزيز تفاعلهم. يستكشف هذا المنشور إمكانتَين جديدتَين لإنشاء الصور باستخدام Firebase AI Logic: ميزات تعديل الصور المتخصّصة في Imagen، المتوفّرة حاليًا في المعاينة، وتوفُّر نموذج Gemini 2.5 Flash Image (المعروف أيضًا باسم "Nano Banana") بشكل متوفر للجمهور العام، والمصمَّم لإنشاء الصور السياقية أو الحوارية.

تعزيز تفاعل المستخدمين مع الصور التي تم إنشاؤها باستخدام Firebase AI Logic

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

على سبيل المثال، يقدّم Imagen ميزات التعديل الجديدة (في معاينة المطور). يمكنك الآن رسم قناع واستخدام ميزة إعادة الرسم لإنشاء وحدات بكسل ضمن المنطقة المقنّعة. بالإضافة إلى ذلك، تتوفّر ميزة الرسم خارج القناع لإنشاء وحدات بكسل خارج القناع.   

Imagen inpainting.png

تتيح ميزة إعادة الرسم في Imagen إنشاء جزء فقط من الصورة. 

بدلاً من ذلك، يمكن لنموذج Gemini 2.5 Flash Image (المعروف أيضًا باسم Nano Banana) استخدام معرفة موسّعة بالعالم وإمكانات الاستنتاج في نماذج Gemini لإنشاء صور ذات صلة بالسياق، ما يجعله مثاليًا لإنشاء رسومات توضيحية ديناميكية تتوافق مع تجربة المستخدم الحالية داخل التطبيق.   

 

In-context nano banana illustration.png

استخدِم نموذج Gemini 2.5 Flash Image لإنشاء رسومات توضيحية ديناميكية ذات صلة بسياق تطبيقك.

أخيرًا، تتيح إمكانية تعديل الصور بشكل حواري وتكراري للمستخدمين تعديل صورة باستخدام اللغة الطبيعية.

 

photo edit natural language.png

استخدِم نموذج Gemini 2.5 Flash Image لتعديل صورة باستخدام اللغة الطبيعية.

عند البدء في دمج الذكاء الاصطناعي في تطبيقك، من المهم التعرّف على جوانب الأمان في الذكاء الاصطناعي. من المهم بشكل خاص تقييم المخاطر الأمنية لتطبيقك، وأخذ التعديلات في الاعتبار للتخفيف من المخاطر المتعلقة بالأمان، وإجراء اختبارات الأمان المناسبة لحالة استخدامك، وطلب ملاحظات المستخدمين ومراقبة المحتوى.

Imagen أو Gemini: الخيار لك

يكمن الفرق بين Gemini 2.5 Flash Image ("Nano Banana") وImagen في تركيزهما الأساسي وإمكاناتهما المتقدّمة. باعتباره نموذجًا لمعالجة الصور ضمن عائلة Gemini الأكبر، يتفوّق نموذج Gemini 2.5 Flash Image في تعديل الصور بشكل حواري، والحفاظ على السياق واتساق الموضوع في عمليات التكرار المتعدّدة، والاستفادة من "المعرفة بالعالم والاستنتاج" لإنشاء مواد عرض مرئية ذات صلة بالسياق أو تضمين مواد عرض مرئية دقيقة ضمن تسلسلات نصية طويلة. 

‫Imagen هو نموذج Google المتخصّص في إنشاء الصور، والمصمَّم لتحكّم إبداعي أكبر، ويتخصّص في النواتج الواقعية جدًا والتفاصيل الفنية والأنماط المحدّدة، ويوفر عناصر تحكّم صريحة لتحديد نسبة العرض إلى الارتفاع أو تنسيق الصورة التي تم إنشاؤها.

‫Gemini 2.5 Flash Images 
(Nano Banana 🍌)
Imagen

🌎 المعرفة بالعالم والاستنتاج لإنشاء صور ذات صلة بالسياق بشكل أكبر

💬 تعديل الصور بشكل حواري مع الحفاظ على السياق

📖 تضمين مواد عرض مرئية دقيقة ضمن تسلسلات نصية طويلة

📐 تحديد نسبة العرض إلى الارتفاع أو تنسيق الصور التي تم إنشاؤها

 

🖌️إتاحة التعديل المستند إلى القناع لإعادة الرسم والرسم خارج القناع. 

 

🎚️ تحكّم أكبر في تفاصيل الصورة التي تم إنشاؤها (الجودة والتفاصيل الفنية والأنماط المحدّدة)

لنطّلِع على كيفية استخدامها في تطبيقك.

إعادة الرسم باستخدام Imagen

قبل بضعة أشهر، أطلقنا ميزات التعديل الجديدة لـ Imagen. على الرغم من أنّ Imagen أصبح جاهزًا الآن للاستخدام في الإنتاج لإنشاء الصور، لا تزال ميزات التعديل في معاينة المطوّرين.

تشمل ميزات تعديل الصور في Imagen إعادة الرسم و الرسم خارج القناع، وهما ميزتان لتعديل الصور مستندتان إلى القناع. تتيح هذه الإمكانية الجديدة للمستخدمين تعديل مناطق معيّنة من الصورة بدون إعادة إنشاء الصورة بأكملها. يعني ذلك أنّه يمكنك الاحتفاظ بأفضل أجزاء الصورة وتغيير ما تريد تغييره فقط.

Imagen inpainting dog.png

استخدِم ميزات تعديل الصور في Imagen لإجراء تغييرات دقيقة ومستهدَفة في صورة مع ضمان سلامة بقية الصورة

يتم إجراء هذه التغييرات مع الحفاظ على العناصر الأساسية والسلامة العامة للصورة الأصلية وتعديل المنطقة الموجودة في القناع فقط.

لتنفيذ ميزة إعادة الرسم باستخدام Imagen، عليك أولاً تهيئة imagen-3.0-capability-001، وهو نموذج معيّن من Imagen يتيح ميزات التعديل:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0
val editingModel =
        Firebase.ai(backend = GenerativeBackend.vertexAI()).imagenModel(
            "imagen-3.0-capability-001",
            generationConfig = ImagenGenerationConfig(
                numberOfImages = 1,
                aspectRatio = ImagenAspectRatio.SQUARE_1x1,
                imageFormat = ImagenImageFormat.jpeg(compressionQuality = 75),
            ),
        )

من هناك، حدِّد دالة إعادة الرسم:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

val prompt = "remove the pancakes and make it an omelet instead"

suspend fun inpaintImageWithMask(sourceImage: Bitmap, maskImage: Bitmap, prompt: String, editSteps: Int = 50): Bitmap {
        val imageResponse = editingModel.editImage(
            referenceImages = listOf(
                ImagenRawImage(sourceImage.toImagenInlineImage()),
                ImagenRawMask(maskImage.toImagenInlineImage()),
            ),
            prompt = prompt,
            config = ImagenEditingConfig(
                editMode = ImagenEditMode.INPAINT_INSERTION,
                editSteps = editSteps,
            ),
        )
        return imageResponse.images.first().asBitmap()
    }

يمكنك تقديم كل من sourceImage وmaskImage وطلب التعديل وعدد خطوات التعديل التي سيتم إجراؤها.

يمكنك الاطّلاع على كيفية استخدامها في عيّنة تعديل الصور في Imagen في كتالوج عيّنات الذكاء الاصطناعي لنظام Android.

يتيح Imagen أيضًا ميزة الرسم خارج القناع التي تسمح للنموذج بإنشاء وحدات البكسل خارج القناع. يمكنك أيضًا استخدام إمكانات تخصيص الصور في Imagen لتغيير نمط صورة أو تعديل موضوع في صورة. يمكنك قراءة المزيد عن ذلك في مستندات المطوّرين لنظام Android.

إنشاء الصور بشكل حواري باستخدام Gemini 2.5 Flash Image

إحدى طرق تعديل الصور باستخدام Gemini 2.5 Flash Image هي استخدام إمكانات المحادثة المترابطة في النموذج.

أولاً، عليك تهيئة النموذج:

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
    modelName = "gemini-2.5-flash-image",
    // Configure the model to respond with text and images (required)
    generationConfig = generationConfig {
        responseModalities = listOf(ResponseModality.TEXT,
        ResponseModality.IMAGE)
    }
)

لتحقيق نتيجة مشابهة لطريقة Imagen المستندة إلى القناع الموضّحة أعلاه، يمكننا استخدام واجهة برمجة التطبيقات chat لبدء محادثة مع Gemini 2.5 Flash Image.

// Copyright 2025 Google LLC.
// SPDX-License-Identifier: Apache-2.0

// Initialize the chat
val chat = model.startChat()


// Load a bitmap
val source = ImageDecoder.createSource(context.contentResolver, uri)
val bitmap = ImageDecoder.decodeBitmap(source)


// Create the initial prompt instructing the model to edit the image
val prompt = content {
    image(bitmap)
    text("remove the pancakes and add an omelet")
}

// To generate an initial response, send a user message with the image and text prompt
var response = chat.sendMessage(prompt)

// Inspect the returned image
var generatedImageAsBitmap = response
    .candidates.first().content.parts.filterIsInstance<ImagePart>().firstOrNull()?.image

// Follow up requests do not need to specify the image again
response = chat.sendMessage("Now, center the omelet in the pan")
generatedImageAsBitmap = response
    .candidates.first().content.parts.filterIsInstance<ImagePart>().firstOrNull()?.image

يمكنك الاطّلاع على كيفية استخدامها في عيّنة المحادثة المرئية في Gemini في كتالوج عيّنات الذكاء الاصطناعي لنظام Android وقراءة المزيد عنها في مستندات Android.

الخاتمة

يقدّم كل من Imagen وGemini 2.5 Flash Image إمكانات قوية، ما يسمح لك باختيار نموذج إنشاء الصور المثالي لتخصيص تطبيقك وتعزيز تفاعل المستخدمين، وذلك استنادًا إلى حالة استخدامك المحدّدة.

بقلم:
متابعة القراءة