1package models
2
3const (
4 ProviderAnthropic ModelProvider = "anthropic"
5
6 // Models
7 Claude35Sonnet ModelID = "claude-3.5-sonnet"
8 Claude3Haiku ModelID = "claude-3-haiku"
9 Claude37Sonnet ModelID = "claude-3.7-sonnet"
10 Claude35Haiku ModelID = "claude-3.5-haiku"
11 Claude3Opus ModelID = "claude-3-opus"
12)
13
14var AnthropicModels = map[ModelID]Model{
15 // Anthropic
16 Claude35Sonnet: {
17 ID: Claude35Sonnet,
18 Name: "Claude 3.5 Sonnet",
19 Provider: ProviderAnthropic,
20 APIModel: "claude-3-5-sonnet-latest",
21 CostPer1MIn: 3.0,
22 CostPer1MInCached: 3.75,
23 CostPer1MOutCached: 0.30,
24 CostPer1MOut: 15.0,
25 ContextWindow: 200000,
26 DefaultMaxTokens: 5000,
27 },
28 Claude3Haiku: {
29 ID: Claude3Haiku,
30 Name: "Claude 3 Haiku",
31 Provider: ProviderAnthropic,
32 APIModel: "claude-3-haiku-latest",
33 CostPer1MIn: 0.25,
34 CostPer1MInCached: 0.30,
35 CostPer1MOutCached: 0.03,
36 CostPer1MOut: 1.25,
37 ContextWindow: 200000,
38 DefaultMaxTokens: 5000,
39 },
40 Claude37Sonnet: {
41 ID: Claude37Sonnet,
42 Name: "Claude 3.7 Sonnet",
43 Provider: ProviderAnthropic,
44 APIModel: "claude-3-7-sonnet-latest",
45 CostPer1MIn: 3.0,
46 CostPer1MInCached: 3.75,
47 CostPer1MOutCached: 0.30,
48 CostPer1MOut: 15.0,
49 ContextWindow: 200000,
50 DefaultMaxTokens: 50000,
51 CanReason: true,
52 },
53 Claude35Haiku: {
54 ID: Claude35Haiku,
55 Name: "Claude 3.5 Haiku",
56 Provider: ProviderAnthropic,
57 APIModel: "claude-3-5-haiku-latest",
58 CostPer1MIn: 0.80,
59 CostPer1MInCached: 1.0,
60 CostPer1MOutCached: 0.08,
61 CostPer1MOut: 4.0,
62 ContextWindow: 200000,
63 DefaultMaxTokens: 4096,
64 },
65 Claude3Opus: {
66 ID: Claude3Opus,
67 Name: "Claude 3 Opus",
68 Provider: ProviderAnthropic,
69 APIModel: "claude-3-opus-latest",
70 CostPer1MIn: 15.0,
71 CostPer1MInCached: 18.75,
72 CostPer1MOutCached: 1.50,
73 CostPer1MOut: 75.0,
74 ContextWindow: 200000,
75 DefaultMaxTokens: 4096,
76 },
77}