diff --git a/firebase-ai/CHANGELOG.md b/firebase-ai/CHANGELOG.md index 3244c980674..dd818c29cec 100644 --- a/firebase-ai/CHANGELOG.md +++ b/firebase-ai/CHANGELOG.md @@ -5,6 +5,7 @@ * [changed] Introduced the `Voice` class, which accepts a voice name, and deprecated the `Voices` class. * [changed] **Breaking Change**: Updated `SpeechConfig` to take in `Voice` class instead of `Voices` class. * **Action Required:** Update all references of `SpeechConfig` initialization to use `Voice` class. +* [fixed] Fix incorrect model name in count token requests to the developer API backend # 16.0.0 diff --git a/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/Request.kt b/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/Request.kt index 7e54ad1f629..ebc3db7f282 100644 --- a/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/Request.kt +++ b/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/Request.kt @@ -18,6 +18,7 @@ package com.google.firebase.ai.common import com.google.firebase.ai.common.util.fullModelName +import com.google.firebase.ai.common.util.trimmedModelName import com.google.firebase.ai.type.Content import com.google.firebase.ai.type.GenerationConfig import com.google.firebase.ai.type.ImagenImageFormat @@ -57,7 +58,7 @@ internal data class CountTokensRequest( CountTokensRequest( generateContentRequest = generateContentRequest.model?.let { - generateContentRequest.copy(model = fullModelName(it)) + generateContentRequest.copy(model = fullModelName(trimmedModelName(it))) } ?: generateContentRequest ) diff --git a/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/util/util.kt b/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/util/util.kt index d8181b38030..1fc71f6c4ff 100644 --- a/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/util/util.kt +++ b/firebase-ai/src/main/kotlin/com/google/firebase/ai/common/util/util.kt @@ -23,3 +23,5 @@ package com.google.firebase.ai.common.util */ internal fun fullModelName(name: String): String = name.takeIf { it.contains("/") } ?: "models/$name" + +internal fun trimmedModelName(name: String): String = name.split("/").last()