Skip to content

Commit bf8b6eb

Browse files
committed
feat: enable native tool calls for Vertex Gemini models
Add supportsNativeTools: true to all Gemini-based models in the Vertex provider. The VertexHandler extends GeminiHandler which already has full native tool handling logic implemented. Models updated: - gemini-3-pro-preview - gemini-2.5-flash-preview-05-20:thinking - gemini-2.5-flash-preview-05-20 - gemini-2.5-flash - gemini-2.5-flash-preview-04-17:thinking - gemini-2.5-flash-preview-04-17 - gemini-2.5-pro-preview-03-25 - gemini-2.5-pro-preview-05-06 - gemini-2.5-pro-preview-06-05 - gemini-2.5-pro - gemini-2.5-pro-exp-03-25 - gemini-2.0-pro-exp-02-05 - gemini-2.0-flash-001 - gemini-2.0-flash-lite-001 - gemini-2.0-flash-thinking-exp-01-21 - gemini-1.5-flash-002 - gemini-1.5-pro-002 - gemini-2.5-flash-lite-preview-06-17
1 parent 59ee1c9 commit bf8b6eb

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

packages/types/src/providers/vertex.ts

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ export const vertexModels = {
1010
maxTokens: 65_536,
1111
contextWindow: 1_048_576,
1212
supportsImages: true,
13+
supportsNativeTools: true,
1314
supportsPromptCache: true,
1415
supportsReasoningEffort: ["low", "high"],
1516
reasoningEffort: "low",
@@ -34,6 +35,7 @@ export const vertexModels = {
3435
maxTokens: 65_535,
3536
contextWindow: 1_048_576,
3637
supportsImages: true,
38+
supportsNativeTools: true,
3739
supportsPromptCache: true,
3840
inputPrice: 0.15,
3941
outputPrice: 3.5,
@@ -45,6 +47,7 @@ export const vertexModels = {
4547
maxTokens: 65_535,
4648
contextWindow: 1_048_576,
4749
supportsImages: true,
50+
supportsNativeTools: true,
4851
supportsPromptCache: true,
4952
inputPrice: 0.15,
5053
outputPrice: 0.6,
@@ -53,6 +56,7 @@ export const vertexModels = {
5356
maxTokens: 64_000,
5457
contextWindow: 1_048_576,
5558
supportsImages: true,
59+
supportsNativeTools: true,
5660
supportsPromptCache: true,
5761
inputPrice: 0.3,
5862
outputPrice: 2.5,
@@ -65,6 +69,7 @@ export const vertexModels = {
6569
maxTokens: 65_535,
6670
contextWindow: 1_048_576,
6771
supportsImages: true,
72+
supportsNativeTools: true,
6873
supportsPromptCache: false,
6974
inputPrice: 0.15,
7075
outputPrice: 3.5,
@@ -76,6 +81,7 @@ export const vertexModels = {
7681
maxTokens: 65_535,
7782
contextWindow: 1_048_576,
7883
supportsImages: true,
84+
supportsNativeTools: true,
7985
supportsPromptCache: false,
8086
inputPrice: 0.15,
8187
outputPrice: 0.6,
@@ -84,6 +90,7 @@ export const vertexModels = {
8490
maxTokens: 65_535,
8591
contextWindow: 1_048_576,
8692
supportsImages: true,
93+
supportsNativeTools: true,
8794
supportsPromptCache: true,
8895
inputPrice: 2.5,
8996
outputPrice: 15,
@@ -92,6 +99,7 @@ export const vertexModels = {
9299
maxTokens: 65_535,
93100
contextWindow: 1_048_576,
94101
supportsImages: true,
102+
supportsNativeTools: true,
95103
supportsPromptCache: true,
96104
inputPrice: 2.5,
97105
outputPrice: 15,
@@ -100,6 +108,7 @@ export const vertexModels = {
100108
maxTokens: 65_535,
101109
contextWindow: 1_048_576,
102110
supportsImages: true,
111+
supportsNativeTools: true,
103112
supportsPromptCache: true,
104113
inputPrice: 2.5,
105114
outputPrice: 15,
@@ -110,6 +119,7 @@ export const vertexModels = {
110119
maxTokens: 64_000,
111120
contextWindow: 1_048_576,
112121
supportsImages: true,
122+
supportsNativeTools: true,
113123
supportsPromptCache: true,
114124
inputPrice: 2.5,
115125
outputPrice: 15,
@@ -135,6 +145,7 @@ export const vertexModels = {
135145
maxTokens: 65_535,
136146
contextWindow: 1_048_576,
137147
supportsImages: true,
148+
supportsNativeTools: true,
138149
supportsPromptCache: false,
139150
inputPrice: 0,
140151
outputPrice: 0,
@@ -143,6 +154,7 @@ export const vertexModels = {
143154
maxTokens: 8192,
144155
contextWindow: 2_097_152,
145156
supportsImages: true,
157+
supportsNativeTools: true,
146158
supportsPromptCache: false,
147159
inputPrice: 0,
148160
outputPrice: 0,
@@ -151,6 +163,7 @@ export const vertexModels = {
151163
maxTokens: 8192,
152164
contextWindow: 1_048_576,
153165
supportsImages: true,
166+
supportsNativeTools: true,
154167
supportsPromptCache: true,
155168
inputPrice: 0.15,
156169
outputPrice: 0.6,
@@ -159,6 +172,7 @@ export const vertexModels = {
159172
maxTokens: 8192,
160173
contextWindow: 1_048_576,
161174
supportsImages: true,
175+
supportsNativeTools: true,
162176
supportsPromptCache: false,
163177
inputPrice: 0.075,
164178
outputPrice: 0.3,
@@ -167,6 +181,7 @@ export const vertexModels = {
167181
maxTokens: 8192,
168182
contextWindow: 32_768,
169183
supportsImages: true,
184+
supportsNativeTools: true,
170185
supportsPromptCache: false,
171186
inputPrice: 0,
172187
outputPrice: 0,
@@ -175,6 +190,7 @@ export const vertexModels = {
175190
maxTokens: 8192,
176191
contextWindow: 1_048_576,
177192
supportsImages: true,
193+
supportsNativeTools: true,
178194
supportsPromptCache: true,
179195
inputPrice: 0.075,
180196
outputPrice: 0.3,
@@ -183,6 +199,7 @@ export const vertexModels = {
183199
maxTokens: 8192,
184200
contextWindow: 2_097_152,
185201
supportsImages: true,
202+
supportsNativeTools: true,
186203
supportsPromptCache: false,
187204
inputPrice: 1.25,
188205
outputPrice: 5,
@@ -328,6 +345,7 @@ export const vertexModels = {
328345
maxTokens: 64_000,
329346
contextWindow: 1_048_576,
330347
supportsImages: true,
348+
supportsNativeTools: true,
331349
supportsPromptCache: true,
332350
inputPrice: 0.1,
333351
outputPrice: 0.4,

0 commit comments

Comments
 (0)