تعزيز تفاعل المستخدمين مع الصور التي يتم إنشاؤها باستخدام الذكاء الاصطناعي
مدّة القراءة: 5 دقائق
يمكن أن يؤدي إضافة صور مخصّصة إلى تطبيقك إلى تحسين تجربة المستخدمين وتخصيصها بشكل كبير وتعزيز تفاعلهم. تتناول هذه المشاركة إمكانتَين جديدتَين لإنشاء الصور باستخدام Firebase AI Logic: ميزات تعديل الصور المتخصّصة في Imagen، المتوفّرة حاليًا في المعاينة، وتوفُّر نموذج Gemini 2.5 Flash Image (المعروف أيضًا باسم "Nano Banana") بشكل عام، وهو مصمَّم لإنشاء الصور السياقية أو الحوارية.
تعزيز تفاعل المستخدمين مع الصور التي يتم إنشاؤها باستخدام Firebase AI Logic
يمكن استخدام نماذج إنشاء الصور لإنشاء صور رمزية مخصّصة للملفات الشخصية للمستخدمين أو لدمج مواد عرض مرئية مخصّصة مباشرةً في مسارات الشاشة الرئيسية.
على سبيل المثال، يقدّم Imagen ميزات جديدة لتعديل الصور (في معاينة المطوّرين). يمكنك الآن رسم قناع واستخدام ميزة إعادة رسم الأجزاء الناقصة من الصورة لإنشاء وحدات بكسل ضمن المنطقة المقنّعة. بالإضافة إلى ذلك، تتوفّر ميزة رسم الأجزاء خارج القناع لإنشاء وحدات بكسل خارج القناع.
تتيح ميزة إعادة رسم الأجزاء الناقصة من الصورة في Imagen إنشاء جزء فقط من الصورة.
بدلاً من ذلك، يمكن لنموذج Gemini 2.5 Flash Image (المعروف أيضًا باسم Nano Banana) استخدام معرفة موسّعة بالعالم وإمكانات الاستنتاج في نماذج Gemini لإنشاء صور ذات صلة بالسياق، ما يجعله مثاليًا لإنشاء رسومات توضيحية ديناميكية تتوافق مع تجربة المستخدم الحالية داخل التطبيق.
استخدِم نموذج Gemini 2.5 Flash Image لإنشاء رسومات توضيحية ديناميكية ذات صلة بسياق تطبيقك.
أخيرًا، تتيح إمكانية تعديل الصور بشكل حواري وتكراري للمستخدمين تعديل صورة باستخدام اللغة الطبيعية.
استخدِم نموذج 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 لإجراء تغييرات دقيقة ومستهدَفة في صورة مع ضمان سلامة بقية الصورة
يتم إجراء هذه التغييرات مع الحفاظ على العناصر الأساسية والسلامة العامة للصورة الأصلية وتعديل المنطقة الموجودة في القناع فقط.
لتنفيذ ميزة إعادة رسم الأجزاء الناقصة من الصورة باستخدام 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 إمكانات قوية، ما يسمح لك باختيار نموذج إنشاء الصور المثالي لتخصيص تطبيقك وتعزيز تفاعل المستخدمين، وذلك استنادًا إلى حالة الاستخدام المحدّدة.
-
أخبار المنتجاتإذا كنت مطوّر تطبيقات Android وتسعى إلى تنفيذ ميزات ذكاء اصطناعي مبتكرة في تطبيقك، فقد أطلقنا مؤخرًا تحديثات جديدة قوية.
Thomas Ezan • مدّة القراءة: 3 دقائق -
أخبار المنتجاتنوسّع اليوم عائلة نماذج Gemini 3 من خلال إطلاق Gemini 3 Flash، وهو نموذج ذكاء متقدّم مصمَّم للعمل بسرعة وبتكلفة أقل.
Thomas Ezan • مدّة القراءة: دقيقتان -
أخبار المنتجاتفي شهر مارس، قدّمنا Android Bench، وهو لوحة صدارة للنماذج اللغوية الكبيرة لمهام تطوير تطبيقات Android في العالم الحقيقي. منذ ذلك الحين، حسّنّا المقياس استنادًا إلى ملاحظاتك، بما في ذلك تقييم النماذج المفتوحة المصدر وإضافة بُعدَي التكلفة والكفاءة إلى لوحة الصدارة.
Zoe Lopez-Latorre • مدّة القراءة: 3 دقائق
يمكنك تلقّي أحدث الإحصاءات حول تطوير تطبيقات Android في بريدك الوارد أسبوعيًا.