1package models
2
3const (
4 ProviderGemini ModelProvider = "gemini"
5
6 // Models
7 Gemini25Flash ModelID = "gemini-2.5-flash"
8 Gemini25 ModelID = "gemini-2.5"
9 Gemini20Flash ModelID = "gemini-2.0-flash"
10 Gemini20FlashLite ModelID = "gemini-2.0-flash-lite"
11)
12
13var GeminiModels = map[ModelID]Model{
14 Gemini25Flash: {
15 ID: Gemini25Flash,
16 Name: "Gemini 2.5 Flash",
17 Provider: ProviderGemini,
18 APIModel: "gemini-2.5-flash-preview-04-17",
19 CostPer1MIn: 0.15,
20 CostPer1MInCached: 0,
21 CostPer1MOutCached: 0,
22 CostPer1MOut: 0.60,
23 ContextWindow: 1000000,
24 DefaultMaxTokens: 50000,
25 },
26 Gemini25: {
27 ID: Gemini25,
28 Name: "Gemini 2.5 Pro",
29 Provider: ProviderGemini,
30 APIModel: "gemini-2.5-pro-preview-03-25",
31 CostPer1MIn: 1.25,
32 CostPer1MInCached: 0,
33 CostPer1MOutCached: 0,
34 CostPer1MOut: 10,
35 ContextWindow: 1000000,
36 DefaultMaxTokens: 50000,
37 },
38
39 Gemini20Flash: {
40 ID: Gemini20Flash,
41 Name: "Gemini 2.0 Flash",
42 Provider: ProviderGemini,
43 APIModel: "gemini-2.0-flash",
44 CostPer1MIn: 0.10,
45 CostPer1MInCached: 0,
46 CostPer1MOutCached: 0,
47 CostPer1MOut: 0.40,
48 ContextWindow: 1000000,
49 DefaultMaxTokens: 6000,
50 },
51 Gemini20FlashLite: {
52 ID: Gemini20FlashLite,
53 Name: "Gemini 2.0 Flash Lite",
54 Provider: ProviderGemini,
55 APIModel: "gemini-2.0-flash-lite",
56 CostPer1MIn: 0.05,
57 CostPer1MInCached: 0,
58 CostPer1MOutCached: 0,
59 CostPer1MOut: 0.30,
60 ContextWindow: 1000000,
61 DefaultMaxTokens: 6000,
62 },
63}