From ab991ada1d9fe12fb6caa2172f458782b06c4cb5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ros=C3=A1rio=20P=2E=20Fernandes?= Date: Wed, 10 Dec 2025 20:40:57 +0000 Subject: [PATCH 1/2] refactor: use gemini-2.5 models for the Gemini Live quickstart --- .../google/firebase/quickstart/ai/FirebaseAISamples.kt | 4 ---- .../firebase/quickstart/ai/feature/live/BidiViewModel.kt | 8 +++++++- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/FirebaseAISamples.kt b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/FirebaseAISamples.kt index 3f6ceea9b..f4661c103 100644 --- a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/FirebaseAISamples.kt +++ b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/FirebaseAISamples.kt @@ -275,8 +275,6 @@ val FIREBASE_AI_SAMPLES = listOf( description = "Use bidirectional streaming to get information about" + " weather conditions for a specific US city on a specific date", navRoute = "stream", - backend = GenerativeBackend.vertexAI(), - modelName = "gemini-2.0-flash-live-preview-04-09", categories = listOf(Category.LIVE_API, Category.AUDIO, Category.FUNCTION_CALLING), tools = listOf( Tool.functionDeclarations( @@ -305,8 +303,6 @@ val FIREBASE_AI_SAMPLES = listOf( description = "Use bidirectional streaming to chat with Gemini using your" + " phone's camera", navRoute = "streamVideo", - backend = GenerativeBackend.vertexAI(), - modelName = "gemini-2.0-flash-live-preview-04-09", categories = listOf(Category.LIVE_API, Category.VIDEO, Category.FUNCTION_CALLING), tools = listOf( Tool.functionDeclarations( diff --git a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt index c1a632f75..e3849f092 100644 --- a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt +++ b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt @@ -41,11 +41,17 @@ class BidiViewModel(savedStateHandle: SavedStateHandle) : ViewModel() { responseModality = ResponseModality.AUDIO } + val defaultModelName = if (sample.backend == GenerativeBackend.googleAI()) { + "gemini-2.5-flash-native-audio-preview-09-2025" + } else { + "gemini-live-2.5-flash-preview-native-audio-09-2025" + } + @OptIn(PublicPreviewAPI::class) val liveModel = FirebaseAI.getInstance(Firebase.app, sample.backend) .liveModel( - modelName = sample.modelName ?: "gemini-live-2.5-flash", + modelName = sample.modelName ?: defaultModelName, generationConfig = liveGenerationConfig, tools = sample.tools, ) From 58b7824326b0296c892cbaff77ca9c2a04f6aafe Mon Sep 17 00:00:00 2001 From: Rosario Fernandes Date: Wed, 10 Dec 2025 21:23:06 +0000 Subject: [PATCH 2/2] remove the backend check --- .../quickstart/ai/feature/live/BidiViewModel.kt | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt index e3849f092..80589b18f 100644 --- a/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt +++ b/firebase-ai/app/src/main/java/com/google/firebase/quickstart/ai/feature/live/BidiViewModel.kt @@ -41,17 +41,13 @@ class BidiViewModel(savedStateHandle: SavedStateHandle) : ViewModel() { responseModality = ResponseModality.AUDIO } - val defaultModelName = if (sample.backend == GenerativeBackend.googleAI()) { - "gemini-2.5-flash-native-audio-preview-09-2025" - } else { - "gemini-live-2.5-flash-preview-native-audio-09-2025" - } - @OptIn(PublicPreviewAPI::class) val liveModel = FirebaseAI.getInstance(Firebase.app, sample.backend) .liveModel( - modelName = sample.modelName ?: defaultModelName, + // If you are using Vertex AI, change the model name to + // "gemini-live-2.5-flash-preview-native-audio-09-2025" + modelName = sample.modelName ?: "gemini-2.5-flash-native-audio-preview-09-2025", generationConfig = liveGenerationConfig, tools = sample.tools, )