Skip to content

Commit 301d37a

Browse files
davidmotsonDavid Motsonashvilirlazo
authored
Add support for new FinishReason and BlockReason values (#6685)
Co-authored-by: David Motsonashvili <[email protected]> Co-authored-by: Rodrigo Lazo <[email protected]>
1 parent d9baf9e commit 301d37a

File tree

4 files changed

+43
-2
lines changed

4 files changed

+43
-2
lines changed

firebase-vertexai/CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Unreleased
2+
* [fixed] Added support for new values sent by the server for `FinishReason` and `BlockReason`.
23
* [changed] Added support for modality-based token count. (#6658)
34

45
# 16.1.0

firebase-vertexai/api.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,8 +95,10 @@ package com.google.firebase.vertexai.type {
9595
method public int getOrdinal();
9696
property public final String name;
9797
property public final int ordinal;
98+
field public static final com.google.firebase.vertexai.type.BlockReason BLOCKLIST;
9899
field public static final com.google.firebase.vertexai.type.BlockReason.Companion Companion;
99100
field public static final com.google.firebase.vertexai.type.BlockReason OTHER;
101+
field public static final com.google.firebase.vertexai.type.BlockReason PROHIBITED_CONTENT;
100102
field public static final com.google.firebase.vertexai.type.BlockReason SAFETY;
101103
field public static final com.google.firebase.vertexai.type.BlockReason UNKNOWN;
102104
}
@@ -206,11 +208,15 @@ package com.google.firebase.vertexai.type {
206208
method public int getOrdinal();
207209
property public final String name;
208210
property public final int ordinal;
211+
field public static final com.google.firebase.vertexai.type.FinishReason BLOCKLIST;
209212
field public static final com.google.firebase.vertexai.type.FinishReason.Companion Companion;
213+
field public static final com.google.firebase.vertexai.type.FinishReason MALFORMED_FUNCTION_CALL;
210214
field public static final com.google.firebase.vertexai.type.FinishReason MAX_TOKENS;
211215
field public static final com.google.firebase.vertexai.type.FinishReason OTHER;
216+
field public static final com.google.firebase.vertexai.type.FinishReason PROHIBITED_CONTENT;
212217
field public static final com.google.firebase.vertexai.type.FinishReason RECITATION;
213218
field public static final com.google.firebase.vertexai.type.FinishReason SAFETY;
219+
field public static final com.google.firebase.vertexai.type.FinishReason SPII;
214220
field public static final com.google.firebase.vertexai.type.FinishReason STOP;
215221
field public static final com.google.firebase.vertexai.type.FinishReason UNKNOWN;
216222
}

firebase-vertexai/src/main/kotlin/com/google/firebase/vertexai/type/Candidate.kt

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,11 @@ public class FinishReason private constructor(public val name: String, public va
247247
MAX_TOKENS,
248248
SAFETY,
249249
RECITATION,
250-
OTHER;
250+
OTHER,
251+
BLOCKLIST,
252+
PROHIBITED_CONTENT,
253+
SPII,
254+
MALFORMED_FUNCTION_CALL;
251255

252256
internal object Serializer : KSerializer<Internal> by FirstOrdinalSerializer(Internal::class)
253257

@@ -258,6 +262,10 @@ public class FinishReason private constructor(public val name: String, public va
258262
SAFETY -> FinishReason.SAFETY
259263
STOP -> FinishReason.STOP
260264
OTHER -> FinishReason.OTHER
265+
BLOCKLIST -> FinishReason.BLOCKLIST
266+
PROHIBITED_CONTENT -> FinishReason.PROHIBITED_CONTENT
267+
SPII -> FinishReason.SPII
268+
MALFORMED_FUNCTION_CALL -> FinishReason.MALFORMED_FUNCTION_CALL
261269
else -> FinishReason.UNKNOWN
262270
}
263271
}
@@ -281,5 +289,21 @@ public class FinishReason private constructor(public val name: String, public va
281289

282290
/** Model stopped for another reason. */
283291
@JvmField public val OTHER: FinishReason = FinishReason("OTHER", 5)
292+
293+
/** Token generation stopped because the content contains forbidden terms. */
294+
@JvmField public val BLOCKLIST: FinishReason = FinishReason("BLOCKLIST", 6)
295+
296+
/** Token generation stopped for potentially containing prohibited content. */
297+
@JvmField public val PROHIBITED_CONTENT: FinishReason = FinishReason("PROHIBITED_CONTENT", 7)
298+
299+
/**
300+
* Token generation stopped because the content potentially contains Sensitive Personally
301+
* Identifiable Information (SPII).
302+
*/
303+
@JvmField public val SPII: FinishReason = FinishReason("SPII", 8)
304+
305+
/** The function call generated by the model is invalid. */
306+
@JvmField
307+
public val MALFORMED_FUNCTION_CALL: FinishReason = FinishReason("MALFORMED_FUNCTION_CALL", 9)
284308
}
285309
}

firebase-vertexai/src/main/kotlin/com/google/firebase/vertexai/type/PromptFeedback.kt

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,18 @@ public class BlockReason private constructor(public val name: String, public val
5656
UNKNOWN,
5757
@SerialName("BLOCKED_REASON_UNSPECIFIED") UNSPECIFIED,
5858
SAFETY,
59-
OTHER;
59+
OTHER,
60+
BLOCKLIST,
61+
PROHIBITED_CONTENT;
6062

6163
internal object Serializer : KSerializer<Internal> by FirstOrdinalSerializer(Internal::class)
6264

6365
internal fun toPublic() =
6466
when (this) {
6567
SAFETY -> BlockReason.SAFETY
6668
OTHER -> BlockReason.OTHER
69+
BLOCKLIST -> BlockReason.BLOCKLIST
70+
PROHIBITED_CONTENT -> BlockReason.PROHIBITED_CONTENT
6771
else -> BlockReason.UNKNOWN
6872
}
6973
}
@@ -76,5 +80,11 @@ public class BlockReason private constructor(public val name: String, public val
7680

7781
/** Content was blocked for another reason. */
7882
@JvmField public val OTHER: BlockReason = BlockReason("OTHER", 2)
83+
84+
/** Content was blocked for another reason. */
85+
@JvmField public val BLOCKLIST: BlockReason = BlockReason("BLOCKLIST", 3)
86+
87+
/** Candidates blocked due to the terms which are included from the terminology blocklist. */
88+
@JvmField public val PROHIBITED_CONTENT: BlockReason = BlockReason("PROHIBITED_CONTENT", 4)
7989
}
8090
}

0 commit comments

Comments
 (0)