diff --git a/packages/types/src/providers/gemini.ts b/packages/types/src/providers/gemini.ts index 18aa2b77510..4734606d5d9 100644 --- a/packages/types/src/providers/gemini.ts +++ b/packages/types/src/providers/gemini.ts @@ -3,9 +3,67 @@ import type { ModelInfo } from "../model.js" // https://ai.google.dev/gemini-api/docs/models/gemini export type GeminiModelId = keyof typeof geminiModels -export const geminiDefaultModelId: GeminiModelId = "gemini-3-pro-preview" +export const geminiDefaultModelId: GeminiModelId = "gemini-3.1-pro-preview" export const geminiModels = { + "gemini-3.1-pro-preview": { + maxTokens: 65_536, + contextWindow: 1_048_576, + supportsImages: true, + supportsPromptCache: true, + supportsReasoningEffort: ["low", "medium", "high"], + reasoningEffort: "low", + + supportsTemperature: true, + defaultTemperature: 1, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + cacheWritesPrice: 4.5, + tiers: [ + { + contextWindow: 200_000, + inputPrice: 2.0, + outputPrice: 12.0, + cacheReadsPrice: 0.2, + }, + { + contextWindow: Infinity, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + }, + ], + }, + "gemini-3.1-pro-preview-customtools": { + maxTokens: 65_536, + contextWindow: 1_048_576, + supportsImages: true, + supportsPromptCache: true, + supportsReasoningEffort: ["low", "medium", "high"], + reasoningEffort: "low", + + supportsTemperature: true, + defaultTemperature: 1, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + cacheWritesPrice: 4.5, + tiers: [ + { + contextWindow: 200_000, + inputPrice: 2.0, + outputPrice: 12.0, + cacheReadsPrice: 0.2, + }, + { + contextWindow: Infinity, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + }, + ], + }, "gemini-3-pro-preview": { maxTokens: 65_536, contextWindow: 1_048_576, diff --git a/packages/types/src/providers/vertex.ts b/packages/types/src/providers/vertex.ts index 2f8a05602a4..b1291d2f592 100644 --- a/packages/types/src/providers/vertex.ts +++ b/packages/types/src/providers/vertex.ts @@ -6,6 +6,35 @@ export type VertexModelId = keyof typeof vertexModels export const vertexDefaultModelId: VertexModelId = "claude-sonnet-4-5@20250929" export const vertexModels = { + "gemini-3.1-pro-preview": { + maxTokens: 65_536, + contextWindow: 1_048_576, + supportsImages: true, + supportsPromptCache: true, + supportsReasoningEffort: ["low", "medium", "high"], + reasoningEffort: "low", + + supportsTemperature: true, + defaultTemperature: 1, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + cacheWritesPrice: 4.5, + tiers: [ + { + contextWindow: 200_000, + inputPrice: 2.0, + outputPrice: 12.0, + cacheReadsPrice: 0.2, + }, + { + contextWindow: Infinity, + inputPrice: 4.0, + outputPrice: 18.0, + cacheReadsPrice: 0.4, + }, + ], + }, "gemini-3-pro-preview": { maxTokens: 65_536, contextWindow: 1_048_576,