प्रॉडक्ट से जुड़ी खबरें

एआई की मदद से इमेज जनरेट करने की सुविधा से, उपयोगकर्ता की दिलचस्पी बढ़ाना

पांच मिनट में पढ़ें

अपने ऐप्लिकेशन में कस्टम इमेज जोड़ने से, उपयोगकर्ता अनुभव को बेहतर बनाया जा सकता है और उसे अपनी पसंद के मुताबिक बनाया जा सकता है. साथ ही, इससे उपयोगकर्ता की दिलचस्पी भी बढ़ाई जा सकती है. इस पोस्ट में, 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 2.5 Flash Image, Gemini फ़ैमिली में इमेज जनरेट करने वाला एक मॉडल है. यह बातचीत के दौरान इमेज में बदलाव करने, कई बार बदलाव करने पर भी संदर्भ और सब्जेक्ट की कंसिस्टेंसी बनाए रखने, और संदर्भ के हिसाब से काम के विज़ुअल बनाने या लंबे टेक्स्ट सीक्वेंस में सटीक विज़ुअल एंबेड करने के लिए, "हर विषय के बारे में गहरी जानकारी और रीज़निंग" का इस्तेमाल करने में माहिर है.

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()
    }

आपको सोर्स इमेज, मास्क इमेज, और बदलाव के लिए एक प्रॉम्प्ट के साथ-साथ, बदलाव के लिए किए जाने वाले चरणों की संख्या भी देनी होगी.

इसे Android AI सैंपल कैटलॉग में, Imagen Editing Sample में देखा जा सकता है!

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 के तरीके जैसा नतीजा पाने के लिए, हम Gemini 2.5 Flash Image के साथ बातचीत शुरू करने के लिए, chat एपीआई का इस्तेमाल कर सकते हैं.

// 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

इसे Android AI सैंपल कैटलॉग में, Gemini Image Chat सैंपल में देखा जा सकता है. इसके बारे में ज़्यादा जानने के लिए, Android के दस्तावेज़ पढ़ें.

निष्कर्ष

Imagen और Gemini 2.5 Flash Image, दोनों में इमेज जनरेट करने की बेहतरीन सुविधाएं उपलब्ध हैं. इनकी मदद से, अपने इस्तेमाल के उदाहरण के हिसाब से, ऐप्लिकेशन को अपनी पसंद के मुताबिक बनाने और उपयोगकर्ता की दिलचस्पी बढ़ाने के लिए, इमेज जनरेट करने का सबसे सही मॉडल चुना जा सकता है.

लेखक:

पढ़ना जारी रखें