Jelajahi Sumber

fix: update model ratio handling for GPT versions

CaIon 4 bulan lalu
induk
melakukan
bef59929db
1 mengubah file dengan 47 tambahan dan 47 penghapusan
  1. 47 47
      setting/ratio_setting/model_ratio.go

+ 47 - 47
setting/ratio_setting/model_ratio.go

@@ -52,52 +52,52 @@ var defaultModelRatio = map[string]float64{
 	"gpt-4o-realtime-preview-2024-12-17":      2.5,
 	"gpt-4o-mini-realtime-preview":            0.3,
 	"gpt-4o-mini-realtime-preview-2024-12-17": 0.3,
-	"gpt-4.1":                                 1.0,  // $2 / 1M tokens
-	"gpt-4.1-2025-04-14":                      1.0,  // $2 / 1M tokens
-	"gpt-4.1-mini":                            0.2,  // $0.4 / 1M tokens
-	"gpt-4.1-mini-2025-04-14":                 0.2,  // $0.4 / 1M tokens
-	"gpt-4.1-nano":                            0.05, // $0.1 / 1M tokens
-	"gpt-4.1-nano-2025-04-14":                 0.05, // $0.1 / 1M tokens
-	"gpt-image-1":                             2.5,  // $5 / 1M tokens
-	"o1":                                      7.5,  // $15 / 1M tokens
-	"o1-2024-12-17":                           7.5,  // $15 / 1M tokens
-	"o1-preview":                              7.5,  // $15 / 1M tokens
-	"o1-preview-2024-09-12":                   7.5,  // $15 / 1M tokens
-	"o1-mini":                                 0.55, // $1.1 / 1M tokens
-	"o1-mini-2024-09-12":                      0.55, // $1.1 / 1M tokens
-	"o1-pro":                                  75.0, // $150 / 1M tokens
-	"o1-pro-2025-03-19":                       75.0, // $150 / 1M tokens
-	"o3-mini":                                 0.55,
-	"o3-mini-2025-01-31":                      0.55,
-	"o3-mini-high":                            0.55,
-	"o3-mini-2025-01-31-high":                 0.55,
-	"o3-mini-low":                             0.55,
-	"o3-mini-2025-01-31-low":                  0.55,
-	"o3-mini-medium":                          0.55,
-	"o3-mini-2025-01-31-medium":               0.55,
-	"o3":                                      1.0,  // $2 / 1M tokens
-	"o3-2025-04-16":                           1.0,  // $2 / 1M tokens
-	"o3-pro":                                  10.0, // $20 / 1M tokens
-	"o3-pro-2025-06-10":                       10.0, // $20 / 1M tokens
-	"o3-deep-research":                        5.0,  // $10 / 1M tokens
-	"o3-deep-research-2025-06-26":             5.0,  // $10 / 1M tokens
-	"o4-mini":                                 0.55, // $1.1 / 1M tokens
-	"o4-mini-2025-04-16":                      0.55, // $1.1 / 1M tokens
-	"o4-mini-deep-research":                   1.0,  // $2 / 1M tokens
-	"o4-mini-deep-research-2025-06-26":        1.0,  // $2 / 1M tokens
-	"gpt-4o-mini":                             0.075,
-	"gpt-4o-mini-2024-07-18":                  0.075,
-	"gpt-4-turbo":                             5, // $0.01 / 1K tokens
-	"gpt-4-turbo-2024-04-09":                  5, // $0.01 / 1K tokens
-	"gpt-4.5-preview":                         37.5,
-	"gpt-4.5-preview-2025-02-27":              37.5,
-	"gpt-5":                                   0.625,
-	"gpt-5-2025-08-07":                        0.625,
-	"gpt-5-chat-latest":                       0.625,
-	"gpt-5-mini":                              0.125,
-	"gpt-5-mini-2025-08-07":                   0.125,
-	"gpt-5-nano":                              0.025,
-	"gpt-5-nano-2025-08-07":                   0.025,
+	"gpt-4.1":                          1.0,  // $2 / 1M tokens
+	"gpt-4.1-2025-04-14":               1.0,  // $2 / 1M tokens
+	"gpt-4.1-mini":                     0.2,  // $0.4 / 1M tokens
+	"gpt-4.1-mini-2025-04-14":          0.2,  // $0.4 / 1M tokens
+	"gpt-4.1-nano":                     0.05, // $0.1 / 1M tokens
+	"gpt-4.1-nano-2025-04-14":          0.05, // $0.1 / 1M tokens
+	"gpt-image-1":                      2.5,  // $5 / 1M tokens
+	"o1":                               7.5,  // $15 / 1M tokens
+	"o1-2024-12-17":                    7.5,  // $15 / 1M tokens
+	"o1-preview":                       7.5,  // $15 / 1M tokens
+	"o1-preview-2024-09-12":            7.5,  // $15 / 1M tokens
+	"o1-mini":                          0.55, // $1.1 / 1M tokens
+	"o1-mini-2024-09-12":               0.55, // $1.1 / 1M tokens
+	"o1-pro":                           75.0, // $150 / 1M tokens
+	"o1-pro-2025-03-19":                75.0, // $150 / 1M tokens
+	"o3-mini":                          0.55,
+	"o3-mini-2025-01-31":               0.55,
+	"o3-mini-high":                     0.55,
+	"o3-mini-2025-01-31-high":          0.55,
+	"o3-mini-low":                      0.55,
+	"o3-mini-2025-01-31-low":           0.55,
+	"o3-mini-medium":                   0.55,
+	"o3-mini-2025-01-31-medium":        0.55,
+	"o3":                               1.0,  // $2 / 1M tokens
+	"o3-2025-04-16":                    1.0,  // $2 / 1M tokens
+	"o3-pro":                           10.0, // $20 / 1M tokens
+	"o3-pro-2025-06-10":                10.0, // $20 / 1M tokens
+	"o3-deep-research":                 5.0,  // $10 / 1M tokens
+	"o3-deep-research-2025-06-26":      5.0,  // $10 / 1M tokens
+	"o4-mini":                          0.55, // $1.1 / 1M tokens
+	"o4-mini-2025-04-16":               0.55, // $1.1 / 1M tokens
+	"o4-mini-deep-research":            1.0,  // $2 / 1M tokens
+	"o4-mini-deep-research-2025-06-26": 1.0,  // $2 / 1M tokens
+	"gpt-4o-mini":                      0.075,
+	"gpt-4o-mini-2024-07-18":           0.075,
+	"gpt-4-turbo":                      5, // $0.01 / 1K tokens
+	"gpt-4-turbo-2024-04-09":           5, // $0.01 / 1K tokens
+	"gpt-4.5-preview":                  37.5,
+	"gpt-4.5-preview-2025-02-27":       37.5,
+	"gpt-5":                            0.625,
+	"gpt-5-2025-08-07":                 0.625,
+	"gpt-5-chat-latest":                0.625,
+	"gpt-5-mini":                       0.125,
+	"gpt-5-mini-2025-08-07":            0.125,
+	"gpt-5-nano":                       0.025,
+	"gpt-5-nano-2025-08-07":            0.025,
 	//"gpt-3.5-turbo-0301":           0.75, //deprecated
 	"gpt-3.5-turbo":          0.25,
 	"gpt-3.5-turbo-0613":     0.75,
@@ -468,7 +468,7 @@ func GetCompletionRatio(name string) float64 {
 
 func getHardcodedCompletionModelRatio(name string) (float64, bool) {
 	lowercaseName := strings.ToLower(name)
-	if strings.HasPrefix(name, "gpt-4") && !strings.HasSuffix(name, "-all") && !strings.HasSuffix(name, "-gizmo-*") {
+	if strings.HasPrefix(name, "gpt-") && !strings.HasSuffix(name, "-all") && !strings.HasSuffix(name, "-gizmo-*") {
 		if strings.HasPrefix(name, "gpt-4o") {
 			if name == "gpt-4o-2024-05-13" {
 				return 3, true