From 2fa4d461ff994a17cc9b75086834f03f5f38ad3e Mon Sep 17 00:00:00 2001 From: Dale Hawkins <107309+dkhawk@users.noreply.github.com> Date: Wed, 9 Sep 2026 13:20:50 -0600 Subject: [PATCH 1/2] ci: support GEMINI_MODEL repository variable in triage-issue workflow --- .github/scripts/triage_issue.py | 4 ++-- .github/workflows/triage-issue.yml | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/scripts/triage_issue.py b/.github/scripts/triage_issue.py index 2e6f1975f..167678911 100644 --- a/.github/scripts/triage_issue.py +++ b/.github/scripts/triage_issue.py @@ -18,8 +18,8 @@ import sys def get_gemini_response(api_key, prompt): - # Using the stable Gemini 3.5 Flash - url = f"https://generativelanguage.googleapis.com/v1beta/models/gemini-3.5-flash:generateContent?key={api_key}" + model = os.getenv("GEMINI_MODEL", "gemini-3.8-flash") + url = f"https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent?key={api_key}" headers = {'Content-Type': 'application/json'} data = { "contents": [{ diff --git a/.github/workflows/triage-issue.yml b/.github/workflows/triage-issue.yml index 0a2a4ad9b..cf14e1a8c 100644 --- a/.github/workflows/triage-issue.yml +++ b/.github/workflows/triage-issue.yml @@ -45,6 +45,7 @@ jobs: id: run_script env: GEMINI_API_KEY: ${{ secrets.GEMINI_API_KEY }} + GEMINI_MODEL: ${{ vars.GEMINI_MODEL }} ISSUE_TITLE: ${{ github.event.issue.title || github.event.inputs.title }} ISSUE_BODY: ${{ github.event.issue.body || github.event.inputs.body }} run: | From fb4c8a6fd8d2dc06152c507a09d3638ac5c1d2e9 Mon Sep 17 00:00:00 2001 From: Dale Hawkins <107309+dkhawk@users.noreply.github.com> Date: Mon, 14 Sep 2026 15:36:43 -0600 Subject: [PATCH 2/2] test: support GEMINI_MODEL in GeminiVisualTestHelper with default gemini-3.8-flash --- .../maps/android/visualtesting/GeminiVisualTestHelper.kt | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/visual-testing/src/main/java/com/google/maps/android/visualtesting/GeminiVisualTestHelper.kt b/visual-testing/src/main/java/com/google/maps/android/visualtesting/GeminiVisualTestHelper.kt index b4c84454f..7228cf23b 100644 --- a/visual-testing/src/main/java/com/google/maps/android/visualtesting/GeminiVisualTestHelper.kt +++ b/visual-testing/src/main/java/com/google/maps/android/visualtesting/GeminiVisualTestHelper.kt @@ -93,9 +93,7 @@ class GeminiVisualTestHelper { val fullPrompt = "$systemPrompt\n\nCommand: \"$prompt\"\n\nUI Hierarchy:\n$hierarchyXml" - // Use a simpler text-only model for this task as no image is involved. - // The user mentioned "gemini-flash 2.5" works, but we should use a standard name. - val modelName = "gemini-2.5-flash-lite" + val modelName = System.getenv("GEMINI_MODEL") ?: "gemini-3.8-flash" val request = GeminiRequest(contents = listOf(Content(parts = listOf(Part(text = fullPrompt))))) var attempts = 0 @@ -229,7 +227,8 @@ class GeminiVisualTestHelper { var response: HttpResponse? = null while (attempts < 3) { attempts++ - response = client.post("https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash-lite:generateContent?key=$apiKey") { + val model = System.getenv("GEMINI_MODEL") ?: "gemini-3.8-flash" + response = client.post("https://generativelanguage.googleapis.com/v1beta/models/$model:generateContent?key=$apiKey") { contentType(ContentType.Application.Json) setBody(request) }