From 94e468165e2f8e6f9ce9d6eb00392aa5eaecf4ba Mon Sep 17 00:00:00 2001 From: amygu Date: Fri, 31 Jul 2026 15:22:35 -0700 Subject: [PATCH 1/2] Rebranding Vertex AI -> Agent Platform in the Android AI sample Also update model versions from Gemini 2.5 Flash to Gemini 3.4 Flash, and make snippet names model version agnostic so we don't have to continuously update the snippets names going forward. Keeping original code until we verify that the new snippet names work with DAC. Once verified, will remove the original code in a subsequent pull request. --- ...GeminiApi.kt => AgentPlatformGeminiApi.kt} | 14 +++--- ...a.java => AgentPlatformGeminiApiJava.java} | 14 +++--- .../snippets/ai/GeminiDeveloperApiSnippets.kt | 39 +++++++++++---- .../ai/GeminiDeveloperApiSnippetsJava.java | 48 +++++++++++++++---- .../com/example/snippets/ai/GeminiOverview.kt | 4 +- .../snippets/ai/GeminiOverviewJava.java | 4 +- gradle/libs.versions.toml | 4 +- 7 files changed, 91 insertions(+), 36 deletions(-) rename ai/src/main/java/com/example/snippets/ai/{VertexAiGeminiApi.kt => AgentPlatformGeminiApi.kt} (73%) rename ai/src/main/java/com/example/snippets/ai/{VertexAiGeminiApiJava.java => AgentPlatformGeminiApiJava.java} (83%) diff --git a/ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApi.kt b/ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApi.kt similarity index 73% rename from ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApi.kt rename to ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApi.kt index ee9e6156c..f71859258 100644 --- a/ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApi.kt +++ b/ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApi.kt @@ -21,19 +21,19 @@ import com.google.firebase.ai.GenerativeModel import com.google.firebase.ai.ai import com.google.firebase.ai.type.GenerativeBackend -class VertexAiGeminiApi { +class AgentPlatformGeminiApi { - // [START android_snippets_vertex_ai_gemini_api_model] - val model = Firebase.ai(backend = GenerativeBackend.vertexAI()) - .generativeModel("gemini-2.5-flash") - // [END android_snippets_vertex_ai_gemini_api_model] + // [START android_snippets_agent_platform_gemini_api_model] + val model = Firebase.ai(backend = GenerativeBackend.agentPlatform()) + .generativeModel("gemini-3.5-flash") + // [END android_snippets_agent_platform_gemini_api_model] - // [START android_snippets_vertex_ai_generate_content] + // [START android_snippets_platform_agent_generate_content] suspend fun generateText(model: GenerativeModel) { // Note: generateContent() is a suspend function, which integrates well // with existing Kotlin code. val response = model.generateContent("Write a story about a magic backpack.") // ... } - // [END android_snippets_vertex_ai_generate_content] + // [END android_snippets_platform_agent_generate_content] } diff --git a/ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApiJava.java b/ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApiJava.java similarity index 83% rename from ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApiJava.java rename to ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApiJava.java index 1877b7852..5961254c9 100644 --- a/ai/src/main/java/com/example/snippets/ai/VertexAiGeminiApiJava.java +++ b/ai/src/main/java/com/example/snippets/ai/AgentPlatformGeminiApiJava.java @@ -28,17 +28,17 @@ import java.util.concurrent.Executor; -public class VertexAiGeminiApiJava { +public class AgentPlatformGeminiApiJava { - // [START android_snippets_vertex_ai_gemini_api_model_java] - GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.vertexAI()) - .generativeModel("gemini-2.5-flash"); + // [START android_snippets_agent_platform_gemini_api_model_java] + GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.agentPlatform()) + .generativeModel("gemini-3.5-flash"); GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI); - // [END android_snippets_vertex_ai_gemini_api_model_java] + // [END android_snippets_agent_platform_gemini_api_model_java] void generateText(Executor executor) { - // [START android_snippets_vertex_ai_generate_content_java] + // [START android_snippets_agent_platform_generate_content_java] Content prompt = new Content.Builder() .addText("Write a story about a magic backpack.") .build(); @@ -56,6 +56,6 @@ public void onFailure(Throwable t) { t.printStackTrace(); } }, executor); - // [END android_snippets_vertex_ai_generate_content_java] + // [END android_snippets_agent_platform_generate_content_java] } } diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt index f3e3d95e4..dd91ce117 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt +++ b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt @@ -37,6 +37,14 @@ object GeminiDeveloperApi25FlashModelConfiguration { // [END android_gemini_developer_api_gemini_25_flash_model] } +object GeminiDeveloperApi35FlashModelConfiguration { + // [START android_gemini_developer_api_gemini_flash_model] + // Start by instantiating a GenerativeModel and specifying the model name: + val model = Firebase.ai(backend = GenerativeBackend.googleAI()) + .generativeModel("gemini-3.5-flash") + // [END android_gemini_developer_api_gemini_flash_model] +} + object Gemini25FlashImagePreviewModelConfiguration { // [START android_gemini_developer_api_gemini_25_flash_image_model] val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel( @@ -52,9 +60,24 @@ object Gemini25FlashImagePreviewModelConfiguration { // [END android_gemini_developer_api_gemini_25_flash_image_model] } +object Gemini35FlashImagePreviewModelConfiguration { + // [START android_gemini_developer_api_gemini_flash_image_model] + val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel( + modelName = "gemini-3.5-flash-image-preview", + // Configure the model to respond with text and images (required) + generationConfig = generationConfig { + responseModalities = listOf( + ResponseModality.TEXT, + ResponseModality.IMAGE + ) + } + ) + // [END android_gemini_developer_api_gemini_flash_image_model] +} + @Suppress("unused") fun textOnlyInput(scope: CoroutineScope) { - val model = GeminiDeveloperApi25FlashModelConfiguration.model + val model = GeminiDeveloperApi35FlashModelConfiguration.model // [START android_gemini_developer_api_text_only_input] scope.launch { val response = model.generateContent("Write a story about a magic backpack.") @@ -64,7 +87,7 @@ fun textOnlyInput(scope: CoroutineScope) { @Suppress("unused") fun textAndImageInput(scope: CoroutineScope, bitmap: Bitmap) { - val model = GeminiDeveloperApi25FlashModelConfiguration.model + val model = GeminiDeveloperApi35FlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_input] scope.launch { val response = model.generateContent( @@ -83,7 +106,7 @@ fun textAndAudioInput( applicationContext: Application, audioUri: Uri ) { - val model = GeminiDeveloperApi25FlashModelConfiguration.model + val model = GeminiDeveloperApi35FlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_audio_input] scope.launch { val contentResolver = applicationContext.contentResolver @@ -109,7 +132,7 @@ fun textAndVideoInput( applicationContext: Application, videoUri: Uri ) { - val model = GeminiDeveloperApi25FlashModelConfiguration.model + val model = GeminiDeveloperApi35FlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_video_input] scope.launch { val contentResolver = applicationContext.contentResolver @@ -131,7 +154,7 @@ fun textAndVideoInput( @Suppress("unused") fun multiTurnChat(scope: CoroutineScope) { - val model = GeminiDeveloperApi25FlashModelConfiguration.model + val model = GeminiDeveloperApi35FlashModelConfiguration.model // [START android_gemini_developer_api_multiturn_chat] val chat = model.startChat( history = listOf( @@ -148,7 +171,7 @@ fun multiTurnChat(scope: CoroutineScope) { @Suppress("unused") fun generateImageFromText(scope: CoroutineScope) { - val model = Gemini25FlashImagePreviewModelConfiguration.model + val model = Gemini35FlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_generate_image_from_text] scope.launch { // Provide a text prompt instructing the model to generate an image @@ -164,7 +187,7 @@ fun generateImageFromText(scope: CoroutineScope) { @Suppress("unused") fun editImage(scope: CoroutineScope, bitmap: Bitmap) { - val model = Gemini25FlashImagePreviewModelConfiguration.model + val model = Gemini35FlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_edit_image] scope.launch { // Provide a text prompt instructing the model to edit the image @@ -182,7 +205,7 @@ fun editImage(scope: CoroutineScope, bitmap: Bitmap) { @Suppress("unused") fun editImageWithChat(scope: CoroutineScope, bitmap: Bitmap) { - val model = Gemini25FlashImagePreviewModelConfiguration.model + val model = Gemini35FlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_edit_image_chat] scope.launch { // Create the initial prompt instructing the model to edit the image diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java index d91bb4ac7..5366d340b 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java +++ b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java @@ -70,6 +70,20 @@ static final class GeminiDeveloperApi25FlashModelConfigurationJava { } } + static final class GeminiDeveloperApi35FlashModelConfigurationJava { + public static GenerativeModelFutures model; + + static { + // [START android_gemini_developer_api_gemini_flash_model_java] + GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.googleAI()) + .generativeModel("gemini-3.5-flash"); + + GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI); + // [END android_gemini_developer_api_gemini_flash_model_java] + GeminiDeveloperApi35FlashModelConfigurationJava.model = model; + } + } + static final class Gemini25FlashImagePreviewModelConfigurationJava { public static GenerativeModelFutures model; @@ -86,11 +100,29 @@ static final class Gemini25FlashImagePreviewModelConfigurationJava { // [END android_gemini_developer_api_gemini_25_flash_image_model_java] Gemini25FlashImagePreviewModelConfigurationJava.model = model; } + } + + static final class Gemini35FlashImagePreviewModelConfigurationJava { + public static GenerativeModelFutures model; + + static { + // [START android_gemini_developer_api_gemini_flash_image_model_java] + GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI()).generativeModel( + "gemini-3.5-flash-image-preview", + // Configure the model to respond with text and images (required) + new GenerationConfig.Builder() + .setResponseModalities(Arrays.asList(ResponseModality.TEXT, ResponseModality.IMAGE)) + .build() + ); + GenerativeModelFutures model = GenerativeModelFutures.from(ai); + // [END android_gemini_developer_api_gemini_flash_image_model_java] + Gemini35FlashImagePreviewModelConfigurationJava.model = model; + } } public static void textOnlyInput(Executor executor) { - GenerativeModelFutures model = GeminiDeveloperApi25FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; // [START android_gemini_developer_api_text_only_input_java] Content prompt = new Content.Builder() .addText("Write a story about a magic backpack.") @@ -112,7 +144,7 @@ public void onFailure(Throwable t) { } public static void textAndImageInput(Executor executor, Bitmap bitmap) { - GenerativeModelFutures model = GeminiDeveloperApi25FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_input_java] Content content = new Content.Builder() .addImage(bitmap) @@ -135,7 +167,7 @@ public void onFailure(Throwable t) { } public static void textAndAudioInput(Executor executor, Application applicationContext, Uri audioUri) { - GenerativeModelFutures model = GeminiDeveloperApi25FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_audio_input_java] ContentResolver resolver = applicationContext.getContentResolver(); @@ -179,7 +211,7 @@ public void onFailure(Throwable t) { } public static void textAndVideoInput(Executor executor, Application applicationContext, Uri videoUri) { - GenerativeModelFutures model = GeminiDeveloperApi25FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_video_input_java] ContentResolver resolver = applicationContext.getContentResolver(); @@ -221,7 +253,7 @@ public void onFailure(Throwable t) { } public static void multiTurnChat(Executor executor) { - GenerativeModelFutures model = GeminiDeveloperApi25FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; // [START android_gemini_developer_api_multiturn_chat_java] Content.Builder userContentBuilder = new Content.Builder(); userContentBuilder.setRole("user"); @@ -263,7 +295,7 @@ public void onFailure(Throwable t) { } public static void generateImageFromText(Executor executor) { - GenerativeModelFutures model = Gemini25FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_generate_image_from_text_java] // Provide a text prompt instructing the model to generate an image Content prompt = new Content.Builder() @@ -293,7 +325,7 @@ public void onFailure(Throwable t) { } public static void editImage(Executor executor, Resources resources) { - GenerativeModelFutures model = Gemini25FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_edit_image_java] // Provide an image for the model to edit Bitmap bitmap = BitmapFactory.decodeResource(resources, R.drawable.scones); @@ -325,7 +357,7 @@ public void onFailure(Throwable t) { } public static void editImageWithChat(Executor executor, Resources resources) { - GenerativeModelFutures model = Gemini25FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_edit_image_chat_java] // Provide an image for the model to edit Bitmap bitmap = BitmapFactory.decodeResource(resources, R.drawable.scones); diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiOverview.kt b/ai/src/main/java/com/example/snippets/ai/GeminiOverview.kt index 2dc02e70a..6fcb5ccff 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiOverview.kt +++ b/ai/src/main/java/com/example/snippets/ai/GeminiOverview.kt @@ -24,9 +24,9 @@ class GeminiOverview { suspend fun generateContent() { // [START android_gemini_ai_models_overview] - // For Vertex AI, use `backend = GenerativeBackend.vertexAI()` + // For the Agent Platform Gemini API, use `backend = GenerativeBackend.agentPlatform()` val model = Firebase.ai(backend = GenerativeBackend.googleAI()) - .generativeModel("gemini-2.5-flash") + .generativeModel("gemini-3.5-flash") val response = model.generateContent("Write a story about a magic backpack") val output = response.text diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiOverviewJava.java b/ai/src/main/java/com/example/snippets/ai/GeminiOverviewJava.java index e9ab81aee..29679d12a 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiOverviewJava.java +++ b/ai/src/main/java/com/example/snippets/ai/GeminiOverviewJava.java @@ -31,9 +31,9 @@ class GeminiOverviewJava { void generateContent(Executor executor) { // [START android_gemini_ai_models_overview_java] - // For Vertex AI, use `backend = GenerativeBackend.vertexAI()` + // For the Agent Platform Gemini API, use `backend = GenerativeBackend.agentPlatform()` GenerativeModel firebaseAI = FirebaseAI.getInstance(GenerativeBackend.googleAI()) - .generativeModel("gemini-2.5-flash"); + .generativeModel("gemini-3.5-flash"); // Use the GenerativeModelFutures Java compatibility layer which offers // support for ListenableFuture and Publisher APIs diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 52f66638b..353b71e84 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -55,8 +55,8 @@ datastoreCore = "1.2.1" datastorePreferencesRxjava2 = "1.2.1" datastorePreferencesRxjava3 = "1.2.1" engageCore = "1.6.0" -firebase-ai = "17.13.0" -firebase-bom = "34.15.0" +firebase-ai = "17.15.0" +firebase-bom = "34.17.0" firebase-ondevice = "16.0.0-beta03" glance-wear = "1.0.0-alpha12" glide = "1.0.0-beta09" From 9dd99041adc3fa06112820ecc8f6273ca3cf5cbd Mon Sep 17 00:00:00 2001 From: amygu Date: Mon, 3 Aug 2026 10:24:21 -0700 Subject: [PATCH 2/2] Remove model version number from object names --- .../snippets/ai/GeminiDeveloperApiSnippets.kt | 20 ++++++++-------- .../ai/GeminiDeveloperApiSnippetsJava.java | 24 +++++++++---------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt index dd91ce117..dd3b6c62a 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt +++ b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippets.kt @@ -37,7 +37,7 @@ object GeminiDeveloperApi25FlashModelConfiguration { // [END android_gemini_developer_api_gemini_25_flash_model] } -object GeminiDeveloperApi35FlashModelConfiguration { +object GeminiDeveloperApiFlashModelConfiguration { // [START android_gemini_developer_api_gemini_flash_model] // Start by instantiating a GenerativeModel and specifying the model name: val model = Firebase.ai(backend = GenerativeBackend.googleAI()) @@ -60,7 +60,7 @@ object Gemini25FlashImagePreviewModelConfiguration { // [END android_gemini_developer_api_gemini_25_flash_image_model] } -object Gemini35FlashImagePreviewModelConfiguration { +object GeminiFlashImagePreviewModelConfiguration { // [START android_gemini_developer_api_gemini_flash_image_model] val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel( modelName = "gemini-3.5-flash-image-preview", @@ -77,7 +77,7 @@ object Gemini35FlashImagePreviewModelConfiguration { @Suppress("unused") fun textOnlyInput(scope: CoroutineScope) { - val model = GeminiDeveloperApi35FlashModelConfiguration.model + val model = GeminiDeveloperApiFlashModelConfiguration.model // [START android_gemini_developer_api_text_only_input] scope.launch { val response = model.generateContent("Write a story about a magic backpack.") @@ -87,7 +87,7 @@ fun textOnlyInput(scope: CoroutineScope) { @Suppress("unused") fun textAndImageInput(scope: CoroutineScope, bitmap: Bitmap) { - val model = GeminiDeveloperApi35FlashModelConfiguration.model + val model = GeminiDeveloperApiFlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_input] scope.launch { val response = model.generateContent( @@ -106,7 +106,7 @@ fun textAndAudioInput( applicationContext: Application, audioUri: Uri ) { - val model = GeminiDeveloperApi35FlashModelConfiguration.model + val model = GeminiDeveloperApiFlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_audio_input] scope.launch { val contentResolver = applicationContext.contentResolver @@ -132,7 +132,7 @@ fun textAndVideoInput( applicationContext: Application, videoUri: Uri ) { - val model = GeminiDeveloperApi35FlashModelConfiguration.model + val model = GeminiDeveloperApiFlashModelConfiguration.model // [START android_gemini_developer_api_multimodal_video_input] scope.launch { val contentResolver = applicationContext.contentResolver @@ -154,7 +154,7 @@ fun textAndVideoInput( @Suppress("unused") fun multiTurnChat(scope: CoroutineScope) { - val model = GeminiDeveloperApi35FlashModelConfiguration.model + val model = GeminiDeveloperApiFlashModelConfiguration.model // [START android_gemini_developer_api_multiturn_chat] val chat = model.startChat( history = listOf( @@ -171,7 +171,7 @@ fun multiTurnChat(scope: CoroutineScope) { @Suppress("unused") fun generateImageFromText(scope: CoroutineScope) { - val model = Gemini35FlashImagePreviewModelConfiguration.model + val model = GeminiFlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_generate_image_from_text] scope.launch { // Provide a text prompt instructing the model to generate an image @@ -187,7 +187,7 @@ fun generateImageFromText(scope: CoroutineScope) { @Suppress("unused") fun editImage(scope: CoroutineScope, bitmap: Bitmap) { - val model = Gemini35FlashImagePreviewModelConfiguration.model + val model = GeminiFlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_edit_image] scope.launch { // Provide a text prompt instructing the model to edit the image @@ -205,7 +205,7 @@ fun editImage(scope: CoroutineScope, bitmap: Bitmap) { @Suppress("unused") fun editImageWithChat(scope: CoroutineScope, bitmap: Bitmap) { - val model = Gemini35FlashImagePreviewModelConfiguration.model + val model = GeminiFlashImagePreviewModelConfiguration.model // [START android_gemini_developer_api_edit_image_chat] scope.launch { // Create the initial prompt instructing the model to edit the image diff --git a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java index 5366d340b..1283b516f 100644 --- a/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java +++ b/ai/src/main/java/com/example/snippets/ai/GeminiDeveloperApiSnippetsJava.java @@ -70,7 +70,7 @@ static final class GeminiDeveloperApi25FlashModelConfigurationJava { } } - static final class GeminiDeveloperApi35FlashModelConfigurationJava { + static final class GeminiDeveloperApiFlashModelConfigurationJava { public static GenerativeModelFutures model; static { @@ -80,7 +80,7 @@ static final class GeminiDeveloperApi35FlashModelConfigurationJava { GenerativeModelFutures model = GenerativeModelFutures.from(firebaseAI); // [END android_gemini_developer_api_gemini_flash_model_java] - GeminiDeveloperApi35FlashModelConfigurationJava.model = model; + GeminiDeveloperApiFlashModelConfigurationJava.model = model; } } @@ -102,7 +102,7 @@ static final class Gemini25FlashImagePreviewModelConfigurationJava { } } - static final class Gemini35FlashImagePreviewModelConfigurationJava { + static final class GeminiFlashImagePreviewModelConfigurationJava { public static GenerativeModelFutures model; static { @@ -116,13 +116,13 @@ static final class Gemini35FlashImagePreviewModelConfigurationJava { ); GenerativeModelFutures model = GenerativeModelFutures.from(ai); // [END android_gemini_developer_api_gemini_flash_image_model_java] - Gemini35FlashImagePreviewModelConfigurationJava.model = model; + GeminiFlashImagePreviewModelConfigurationJava.model = model; } } public static void textOnlyInput(Executor executor) { - GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApiFlashModelConfigurationJava.model; // [START android_gemini_developer_api_text_only_input_java] Content prompt = new Content.Builder() .addText("Write a story about a magic backpack.") @@ -144,7 +144,7 @@ public void onFailure(Throwable t) { } public static void textAndImageInput(Executor executor, Bitmap bitmap) { - GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApiFlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_input_java] Content content = new Content.Builder() .addImage(bitmap) @@ -167,7 +167,7 @@ public void onFailure(Throwable t) { } public static void textAndAudioInput(Executor executor, Application applicationContext, Uri audioUri) { - GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApiFlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_audio_input_java] ContentResolver resolver = applicationContext.getContentResolver(); @@ -211,7 +211,7 @@ public void onFailure(Throwable t) { } public static void textAndVideoInput(Executor executor, Application applicationContext, Uri videoUri) { - GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApiFlashModelConfigurationJava.model; // [START android_gemini_developer_api_multimodal_video_input_java] ContentResolver resolver = applicationContext.getContentResolver(); @@ -253,7 +253,7 @@ public void onFailure(Throwable t) { } public static void multiTurnChat(Executor executor) { - GenerativeModelFutures model = GeminiDeveloperApi35FlashModelConfigurationJava.model; + GenerativeModelFutures model = GeminiDeveloperApiFlashModelConfigurationJava.model; // [START android_gemini_developer_api_multiturn_chat_java] Content.Builder userContentBuilder = new Content.Builder(); userContentBuilder.setRole("user"); @@ -295,7 +295,7 @@ public void onFailure(Throwable t) { } public static void generateImageFromText(Executor executor) { - GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = GeminiFlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_generate_image_from_text_java] // Provide a text prompt instructing the model to generate an image Content prompt = new Content.Builder() @@ -325,7 +325,7 @@ public void onFailure(Throwable t) { } public static void editImage(Executor executor, Resources resources) { - GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = GeminiFlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_edit_image_java] // Provide an image for the model to edit Bitmap bitmap = BitmapFactory.decodeResource(resources, R.drawable.scones); @@ -357,7 +357,7 @@ public void onFailure(Throwable t) { } public static void editImageWithChat(Executor executor, Resources resources) { - GenerativeModelFutures model = Gemini35FlashImagePreviewModelConfigurationJava.model; + GenerativeModelFutures model = GeminiFlashImagePreviewModelConfigurationJava.model; // [START android_gemini_developer_api_edit_image_chat_java] // Provide an image for the model to edit Bitmap bitmap = BitmapFactory.decodeResource(resources, R.drawable.scones);