|
@@ -6,25 +6,73 @@ export type GeminiModelId = keyof typeof geminiModels
|
|
|
export const geminiDefaultModelId: GeminiModelId = "gemini-2.0-flash-001"
|
|
export const geminiDefaultModelId: GeminiModelId = "gemini-2.0-flash-001"
|
|
|
|
|
|
|
|
export const geminiModels = {
|
|
export const geminiModels = {
|
|
|
- "gemini-2.5-flash-preview-04-17:thinking": {
|
|
|
|
|
- maxTokens: 65_535,
|
|
|
|
|
|
|
+ // Latest models (pointing to the most recent stable versions)
|
|
|
|
|
+ "gemini-flash-latest": {
|
|
|
|
|
+ maxTokens: 65_536,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
|
supportsImages: true,
|
|
supportsImages: true,
|
|
|
- supportsPromptCache: false,
|
|
|
|
|
- inputPrice: 0.15,
|
|
|
|
|
- outputPrice: 3.5,
|
|
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.3,
|
|
|
|
|
+ outputPrice: 2.5,
|
|
|
|
|
+ cacheReadsPrice: 0.075,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
maxThinkingTokens: 24_576,
|
|
maxThinkingTokens: 24_576,
|
|
|
supportsReasoningBudget: true,
|
|
supportsReasoningBudget: true,
|
|
|
- requiredReasoningBudget: true,
|
|
|
|
|
},
|
|
},
|
|
|
- "gemini-2.5-flash-preview-04-17": {
|
|
|
|
|
- maxTokens: 65_535,
|
|
|
|
|
|
|
+ "gemini-flash-lite-latest": {
|
|
|
|
|
+ maxTokens: 65_536,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
|
supportsImages: true,
|
|
supportsImages: true,
|
|
|
- supportsPromptCache: false,
|
|
|
|
|
- inputPrice: 0.15,
|
|
|
|
|
- outputPrice: 0.6,
|
|
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.1,
|
|
|
|
|
+ outputPrice: 0.4,
|
|
|
|
|
+ cacheReadsPrice: 0.025,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
|
|
+ maxThinkingTokens: 24_576,
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Flash models (09-2025 versions - most recent)
|
|
|
|
|
+ "gemini-2.5-flash-preview-09-2025": {
|
|
|
|
|
+ maxTokens: 65_536,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.3,
|
|
|
|
|
+ outputPrice: 2.5,
|
|
|
|
|
+ cacheReadsPrice: 0.075,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
|
|
+ maxThinkingTokens: 24_576,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
|
|
+ },
|
|
|
|
|
+ "gemini-2.5-flash-lite-preview-09-2025": {
|
|
|
|
|
+ maxTokens: 65_536,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.1,
|
|
|
|
|
+ outputPrice: 0.4,
|
|
|
|
|
+ cacheReadsPrice: 0.025,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
|
|
+ maxThinkingTokens: 24_576,
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Flash models (06-17 version)
|
|
|
|
|
+ "gemini-2.5-flash-lite-preview-06-17": {
|
|
|
|
|
+ maxTokens: 64_000,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.1,
|
|
|
|
|
+ outputPrice: 0.4,
|
|
|
|
|
+ cacheReadsPrice: 0.025,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
|
|
+ maxThinkingTokens: 24_576,
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Flash models (05-20 versions)
|
|
|
"gemini-2.5-flash-preview-05-20:thinking": {
|
|
"gemini-2.5-flash-preview-05-20:thinking": {
|
|
|
maxTokens: 65_535,
|
|
maxTokens: 65_535,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -48,6 +96,29 @@ export const geminiModels = {
|
|
|
cacheReadsPrice: 0.0375,
|
|
cacheReadsPrice: 0.0375,
|
|
|
cacheWritesPrice: 1.0,
|
|
cacheWritesPrice: 1.0,
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Flash models (04-17 versions)
|
|
|
|
|
+ "gemini-2.5-flash-preview-04-17:thinking": {
|
|
|
|
|
+ maxTokens: 65_535,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: false,
|
|
|
|
|
+ inputPrice: 0.15,
|
|
|
|
|
+ outputPrice: 3.5,
|
|
|
|
|
+ maxThinkingTokens: 24_576,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
|
|
+ requiredReasoningBudget: true,
|
|
|
|
|
+ },
|
|
|
|
|
+ "gemini-2.5-flash-preview-04-17": {
|
|
|
|
|
+ maxTokens: 65_535,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: false,
|
|
|
|
|
+ inputPrice: 0.15,
|
|
|
|
|
+ outputPrice: 0.6,
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Flash stable
|
|
|
"gemini-2.5-flash": {
|
|
"gemini-2.5-flash": {
|
|
|
maxTokens: 64_000,
|
|
maxTokens: 64_000,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -60,15 +131,9 @@ export const geminiModels = {
|
|
|
maxThinkingTokens: 24_576,
|
|
maxThinkingTokens: 24_576,
|
|
|
supportsReasoningBudget: true,
|
|
supportsReasoningBudget: true,
|
|
|
},
|
|
},
|
|
|
- "gemini-2.5-pro-exp-03-25": {
|
|
|
|
|
- maxTokens: 65_535,
|
|
|
|
|
- contextWindow: 1_048_576,
|
|
|
|
|
- supportsImages: true,
|
|
|
|
|
- supportsPromptCache: false,
|
|
|
|
|
- inputPrice: 0,
|
|
|
|
|
- outputPrice: 0,
|
|
|
|
|
- },
|
|
|
|
|
- "gemini-2.5-pro-preview-03-25": {
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 2.5 Pro models
|
|
|
|
|
+ "gemini-2.5-pro-preview-06-05": {
|
|
|
maxTokens: 65_535,
|
|
maxTokens: 65_535,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
|
supportsImages: true,
|
|
supportsImages: true,
|
|
@@ -77,6 +142,8 @@ export const geminiModels = {
|
|
|
outputPrice: 15,
|
|
outputPrice: 15,
|
|
|
cacheReadsPrice: 0.625,
|
|
cacheReadsPrice: 0.625,
|
|
|
cacheWritesPrice: 4.5,
|
|
cacheWritesPrice: 4.5,
|
|
|
|
|
+ maxThinkingTokens: 32_768,
|
|
|
|
|
+ supportsReasoningBudget: true,
|
|
|
tiers: [
|
|
tiers: [
|
|
|
{
|
|
{
|
|
|
contextWindow: 200_000,
|
|
contextWindow: 200_000,
|
|
@@ -116,7 +183,7 @@ export const geminiModels = {
|
|
|
},
|
|
},
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
- "gemini-2.5-pro-preview-06-05": {
|
|
|
|
|
|
|
+ "gemini-2.5-pro-preview-03-25": {
|
|
|
maxTokens: 65_535,
|
|
maxTokens: 65_535,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
|
supportsImages: true,
|
|
supportsImages: true,
|
|
@@ -142,6 +209,14 @@ export const geminiModels = {
|
|
|
},
|
|
},
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
|
|
+ "gemini-2.5-pro-exp-03-25": {
|
|
|
|
|
+ maxTokens: 65_535,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: false,
|
|
|
|
|
+ inputPrice: 0,
|
|
|
|
|
+ outputPrice: 0,
|
|
|
|
|
+ },
|
|
|
"gemini-2.5-pro": {
|
|
"gemini-2.5-pro": {
|
|
|
maxTokens: 64_000,
|
|
maxTokens: 64_000,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -169,16 +244,8 @@ export const geminiModels = {
|
|
|
},
|
|
},
|
|
|
],
|
|
],
|
|
|
},
|
|
},
|
|
|
- "gemini-2.0-flash-001": {
|
|
|
|
|
- maxTokens: 8192,
|
|
|
|
|
- contextWindow: 1_048_576,
|
|
|
|
|
- supportsImages: true,
|
|
|
|
|
- supportsPromptCache: true,
|
|
|
|
|
- inputPrice: 0.1,
|
|
|
|
|
- outputPrice: 0.4,
|
|
|
|
|
- cacheReadsPrice: 0.025,
|
|
|
|
|
- cacheWritesPrice: 1.0,
|
|
|
|
|
- },
|
|
|
|
|
|
|
+
|
|
|
|
|
+ // 2.0 Flash models
|
|
|
"gemini-2.0-flash-lite-preview-02-05": {
|
|
"gemini-2.0-flash-lite-preview-02-05": {
|
|
|
maxTokens: 8192,
|
|
maxTokens: 8192,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -187,14 +254,6 @@ export const geminiModels = {
|
|
|
inputPrice: 0,
|
|
inputPrice: 0,
|
|
|
outputPrice: 0,
|
|
outputPrice: 0,
|
|
|
},
|
|
},
|
|
|
- "gemini-2.0-pro-exp-02-05": {
|
|
|
|
|
- maxTokens: 8192,
|
|
|
|
|
- contextWindow: 2_097_152,
|
|
|
|
|
- supportsImages: true,
|
|
|
|
|
- supportsPromptCache: false,
|
|
|
|
|
- inputPrice: 0,
|
|
|
|
|
- outputPrice: 0,
|
|
|
|
|
- },
|
|
|
|
|
"gemini-2.0-flash-thinking-exp-01-21": {
|
|
"gemini-2.0-flash-thinking-exp-01-21": {
|
|
|
maxTokens: 65_536,
|
|
maxTokens: 65_536,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -219,6 +278,28 @@ export const geminiModels = {
|
|
|
inputPrice: 0,
|
|
inputPrice: 0,
|
|
|
outputPrice: 0,
|
|
outputPrice: 0,
|
|
|
},
|
|
},
|
|
|
|
|
+ "gemini-2.0-flash-001": {
|
|
|
|
|
+ maxTokens: 8192,
|
|
|
|
|
+ contextWindow: 1_048_576,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: true,
|
|
|
|
|
+ inputPrice: 0.1,
|
|
|
|
|
+ outputPrice: 0.4,
|
|
|
|
|
+ cacheReadsPrice: 0.025,
|
|
|
|
|
+ cacheWritesPrice: 1.0,
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 2.0 Pro models
|
|
|
|
|
+ "gemini-2.0-pro-exp-02-05": {
|
|
|
|
|
+ maxTokens: 8192,
|
|
|
|
|
+ contextWindow: 2_097_152,
|
|
|
|
|
+ supportsImages: true,
|
|
|
|
|
+ supportsPromptCache: false,
|
|
|
|
|
+ inputPrice: 0,
|
|
|
|
|
+ outputPrice: 0,
|
|
|
|
|
+ },
|
|
|
|
|
+
|
|
|
|
|
+ // 1.5 Flash models
|
|
|
"gemini-1.5-flash-002": {
|
|
"gemini-1.5-flash-002": {
|
|
|
maxTokens: 8192,
|
|
maxTokens: 8192,
|
|
|
contextWindow: 1_048_576,
|
|
contextWindow: 1_048_576,
|
|
@@ -259,6 +340,8 @@ export const geminiModels = {
|
|
|
inputPrice: 0,
|
|
inputPrice: 0,
|
|
|
outputPrice: 0,
|
|
outputPrice: 0,
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ // 1.5 Pro models
|
|
|
"gemini-1.5-pro-002": {
|
|
"gemini-1.5-pro-002": {
|
|
|
maxTokens: 8192,
|
|
maxTokens: 8192,
|
|
|
contextWindow: 2_097_152,
|
|
contextWindow: 2_097_152,
|
|
@@ -275,6 +358,8 @@ export const geminiModels = {
|
|
|
inputPrice: 0,
|
|
inputPrice: 0,
|
|
|
outputPrice: 0,
|
|
outputPrice: 0,
|
|
|
},
|
|
},
|
|
|
|
|
+
|
|
|
|
|
+ // Experimental models
|
|
|
"gemini-exp-1206": {
|
|
"gemini-exp-1206": {
|
|
|
maxTokens: 8192,
|
|
maxTokens: 8192,
|
|
|
contextWindow: 2_097_152,
|
|
contextWindow: 2_097_152,
|
|
@@ -283,16 +368,4 @@ export const geminiModels = {
|
|
|
inputPrice: 0,
|
|
inputPrice: 0,
|
|
|
outputPrice: 0,
|
|
outputPrice: 0,
|
|
|
},
|
|
},
|
|
|
- "gemini-2.5-flash-lite-preview-06-17": {
|
|
|
|
|
- maxTokens: 64_000,
|
|
|
|
|
- contextWindow: 1_048_576,
|
|
|
|
|
- supportsImages: true,
|
|
|
|
|
- supportsPromptCache: true,
|
|
|
|
|
- inputPrice: 0.1,
|
|
|
|
|
- outputPrice: 0.4,
|
|
|
|
|
- cacheReadsPrice: 0.025,
|
|
|
|
|
- cacheWritesPrice: 1.0,
|
|
|
|
|
- supportsReasoningBudget: true,
|
|
|
|
|
- maxThinkingTokens: 24_576,
|
|
|
|
|
- },
|
|
|
|
|
} as const satisfies Record<string, ModelInfo>
|
|
} as const satisfies Record<string, ModelInfo>
|