חדשות על מוצרים

שיפור רמת המעורבות של המשתמשים באמצעות יצירת תמונות על ידי AI

משך הקריאה: 5 דקות

הוספה של תמונות בהתאמה אישית לאפליקציה יכולה לשפר באופן משמעותי את חוויית המשתמש ולהתאים אותה אישית, וגם להגביר את מעורבות המשתמשים. בפוסט הזה נסביר על שתי יכולות חדשות ליצירת תמונות באמצעות Firebase AI Logic: תכונות העריכה הייעודיות של Imagen, שזמינות כרגע בגרסת טרום-השקה (Preview), והזמינות לכלל המשתמשים (GA) של Gemini 2.5 Flash Image (שנקרא גם Nano Banana), שנועד ליצירת תמונות בהקשר או בשיחה.

הגברת מידת העניין של המשתמשים באמצעות תמונות שנוצרו באמצעות Firebase AI Logic

אפשר להשתמש במודלים של יצירת תמונות כדי ליצור דמויות אווטאר מותאמות אישית לפרופיל המשתמש, או לשלב נכסים חזותיים מותאמים אישית ישירות בתהליכי עבודה מרכזיים במסך.  

לדוגמה, Imagen מציע תכונות עריכה חדשות (בגרסת טרום-השקה למפתחים). עכשיו אפשר לצייר מסכה ולהשתמש בתיקון תמונות כדי ליצור פיקסלים באזור המוסתר. בנוסף, אפשר להשתמש ב-Outpainting כדי ליצור פיקסלים מחוץ למסכה.   

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 כדי לערוך תמונה באמצעות שפה טבעית

כשמתחילים לשלב AI באפליקציה, חשוב ללמוד על בטיחות ב-AI. חשוב במיוחד להעריך את סיכוני האבטחה של האפליקציה, לשקול לבצע שינויים כדי לצמצם את סיכוני הבטיחות, לבצע בדיקות בטיחות שמתאימות לתרחיש השימוש, לבקש משוב מהמשתמשים ולפקח על התוכן.

Imagen או Gemini: הבחירה שלכם 

ההבדל בין Gemini 2.5 Flash Image‏ (Nano Banana) לבין Imagen הוא במיקוד העיקרי וביכולות המתקדמות שלהם. ‫Gemini 2.5 Flash Image הוא מודל ליצירת תמונות מתוך משפחת Gemini הגדולה יותר. הוא מצטיין בעריכת תמונות באמצעות שיחה, בשמירה על הקשר ועל עקביות הנושא בכמה איטרציות, ובהסתמכות על 'ידע על העולם והסקת מסקנות' כדי ליצור תמונות רלוונטיות להקשר או להטמיע תמונות מדויקות ברצפים ארוכים של טקסט. 

‫Imagen הוא מודל ייעודי של Google ליצירת תמונות, שנועד לספק שליטה יצירתית רבה יותר. הוא מתמחה ביצירת תמונות שנראות אמיתיות עם פרטים מדויקים, בסגנונות ספציפיים, ומספק אמצעי בקרה מפורשים לציון יחס הגובה-רוחב או הפורמט של התמונה שנוצרת.

תמונות של Gemini 2.5 Flash 
(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 בקטלוג הדוגמאות של AI ל-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 API כדי להתחיל שיחה עם 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 בקטלוג הדוגמאות של AI ל-Android, ולקרוא עליה מידע נוסף במסמכי התיעוד של Android.

סיכום

גם Imagen וגם Gemini 2.5 Flash Image מציעים יכולות מתקדמות, שמאפשרות לכם לבחור את המודל האידיאלי ליצירת תמונות כדי להתאים אישית את האפליקציה ולשפר את האינטראקציה עם המשתמשים, בהתאם לתרחיש השימוש הספציפי.

נכתב על ידי:

להמשך הקריאה