Imagen 3, इमेज जनरेट करने वाला मॉडल है. इसका इस्तेमाल, उपयोगकर्ता प्रोफ़ाइलों के लिए पसंद के मुताबिक अवतार जनरेट करने के लिए किया जा सकता है. इसके अलावा, उपयोगकर्ता के जुड़ाव को बढ़ाने के लिए, मौजूदा स्क्रीन फ़्लो में उपयोगकर्ता के हिसाब से विज़ुअल ऐसेट इंटिग्रेट करने के लिए भी इसका इस्तेमाल किया जा सकता है.
Firebase AI Logic SDK का इस्तेमाल करके, अपने Android ऐप्लिकेशन से Imagen मॉडल ऐक्सेस किए जा सकते हैं. Imagen मॉडल, Firebase के एआई लॉजिक के एपीआई उपलब्ध कराने वाली दोनों कंपनियों का इस्तेमाल करके उपलब्ध हैं: Gemini Developer API (ज़्यादातर डेवलपर के लिए सुझाया गया) और Vertex AI.
प्रॉम्प्ट आज़माना
आम तौर पर, सही प्रॉम्प्ट बनाने के लिए कई बार कोशिश करनी पड़ती है. Vertex AI Studio में इमेज प्रॉम्प्ट के साथ एक्सपेरिमेंट किया जा सकता है. यह प्रॉम्प्ट डिज़ाइन और प्रोटोटाइप बनाने के लिए एक आईडीई है. प्रॉम्प्ट को बेहतर बनाने के बारे में सलाह पाने के लिए, प्रॉम्प्ट और इमेज एट्रिब्यूट की गाइड देखें.

Firebase प्रोजेक्ट सेट अप करना और अपने ऐप्लिकेशन को कनेक्ट करना
अपने Android प्रोजेक्ट में Firebase जोड़ने के लिए, Firebase दस्तावेज़ में दिया गया तरीका अपनाएं.
Gradle डिपेंडेंसी जोड़ना
अपनी build.gradle
फ़ाइल में ये डिपेंडेंसी जोड़ें:
dependencies {
// Import the BoM for the Firebase platform
implementation(platform("com.google.firebase:firebase-bom:33.14.0"))
// Add the dependency for the Firebase AI Logic library. When using the BoM,
// you don't specify versions in Firebase library dependencies
implementation("com.google.firebase:firebase-ai")
}
इमेज जनरेट करना
अपने Android ऐप्लिकेशन में इमेज जनरेट करने के लिए, वैकल्पिक कॉन्फ़िगरेशन के साथ ImagenModel
को इंस्टैंशिएट करें.
generationConfig
पैरामीटर का इस्तेमाल करके, नेगेटिव प्रॉम्प्ट, इमेज की संख्या, आउटपुट इमेज का आसपेक्ट रेशियो, इमेज फ़ॉर्मैट तय किया जा सकता है. साथ ही, वॉटरमार्क भी जोड़ा जा सकता है. सुरक्षा और व्यक्ति से जुड़े फ़िल्टर कॉन्फ़िगर करने के लिए, safetySettings
पैरामीटर का इस्तेमाल किया जा सकता है.
Kotlin
val config = ImagenGenerationConfig {
numberOfImages = 2,
aspectRatio = ImagenAspectRatio.LANDSCAPE_16x9,
imageFormat = ImagenImageFormat.jpeg(compressionQuality = 100),
addWatermark = false
}
// Initialize the Gemini Developer API backend service
// For Vertex AI use Firebase.ai(backend = GenerativeBackend.vertexAI())
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).imagenModel(
modelName = "imagen-3.0-generate-002",
generationConfig = config,
safetySettings = ImagenSafetySettings(
safetyFilterLevel = ImagenSafetyFilterLevel.BLOCK_LOW_AND_ABOVE,
personFilterLevel = ImagenPersonFilterLevel.BLOCK_ALL
)
)
Java
ImagenGenerationConfig config = new ImagenGenerationConfig.Builder()
.setNumberOfImages(2)
.setAspectRatio(ImagenAspectRatio.LANDSCAPE_16x9)
.setImageFormat(ImagenImageFormat.jpeg(100))
.setAddWatermark(false)
.build();
// For Vertex AI use Firebase.ai(backend = GenerativeBackend.vertexAI())
ImagenModelFutures model = ImagenModelFutures.from(
FirebaseAI.ai(backend = GenerativeBackend.googleAI()).imagenModel(
"imagen-3.0-generate-002",
config,
ImagenSafetySettings.builder()
.setSafetyFilterLevel(ImagenSafetyFilterLevel.BLOCK_LOW_AND_ABOVE)
.setPersonFilterLevel(ImagenPersonFilterLevel.BLOCK_ALL)
.build())
);
ImagenModel
इंस्टैंशिएट होने के बाद, generateImages
को कॉल करके इमेज जनरेट की जा सकती हैं:
Kotlin
val imageResponse = model.generateImages(
prompt = "An astronaut riding a horse",
)
val image = imageResponse.images.first
val bitmapImage = image.asBitmap()
Java
CompletableFuture<GenerateContentResponse> futureResponse =
model.generateContent(
Content.newBuilder()
.addParts(
Part.newBuilder()
.setText("An astronaut riding a horse")
.build())
.build());
try {
GenerateContentResponse imageResponse = futureResponse.get();
List<GeneratedImage> images =
imageResponse
.getCandidates(0)
.getContent()
.getParts(0)
.getInlineData()
.getImagesList();
if (!images.isEmpty()) {
GeneratedImage image = images.get(0);
Bitmap bitmapImage = image.asBitmap();
// Use bitmapImage
}
} catch (ExecutionException | InterruptedException e) {
e.printStackTrace();
}