feat: support gemini-2.5-pro

This commit is contained in:
Laisky.Cai 2025-03-26 02:27:20 +00:00
parent b2d6aa783b
commit 4e2430e5d3
3 changed files with 16 additions and 7 deletions

View File

@ -25,7 +25,7 @@ func (a *Adaptor) Init(meta *meta.Meta) {
func (a *Adaptor) GetRequestURL(meta *meta.Meta) (string, error) { func (a *Adaptor) GetRequestURL(meta *meta.Meta) (string, error) {
defaultVersion := config.GeminiVersion defaultVersion := config.GeminiVersion
if strings.Contains(meta.ActualModelName, "gemini-2.0") || if strings.Contains(meta.ActualModelName, "gemini-2") ||
strings.Contains(meta.ActualModelName, "gemini-1.5") { strings.Contains(meta.ActualModelName, "gemini-1.5") {
defaultVersion = "v1beta" defaultVersion = "v1beta"
} }

View File

@ -6,15 +6,17 @@ import "strings"
var ModelList = []string{ var ModelList = []string{
"gemini-pro", "gemini-1.0-pro", "gemini-pro", "gemini-1.0-pro",
// "gemma-2-2b-it", "gemma-2-9b-it", "gemma-2-27b-it", "gemma-2-2b-it", "gemma-2-9b-it", "gemma-2-27b-it",
"gemma-3-27b-it",
"gemini-1.5-flash", "gemini-1.5-flash-8b", "gemini-1.5-flash", "gemini-1.5-flash-8b",
"gemini-1.5-pro", "gemini-1.5-pro-experimental", "gemini-1.5-pro", "gemini-1.5-pro-experimental",
"text-embedding-004", "aqa", "text-embedding-004", "aqa",
"gemini-2.0-flash", "gemini-2.0-flash-exp", "gemini-2.0-flash", "gemini-2.0-flash-exp",
"gemini-2.0-flash-lite-preview-02-05", "gemini-2.0-flash-lite-preview-02-05",
"gemini-2.0-flash-thinking-exp-01-21", "gemini-2.0-flash-thinking-exp-01-21",
"gemini-2.0-pro-exp-02-05",
"gemini-2.0-flash-exp-image-generation", "gemini-2.0-flash-exp-image-generation",
"gemini-2.0-pro-exp-02-05",
"gemini-2.5-pro-exp-03-25",
} }
const ( const (
@ -28,5 +30,10 @@ func GetModelModalities(model string) []string {
return []string{ModalityText, ModalityImage} return []string{ModalityText, ModalityImage}
} }
// Until 2025-03-26, the following models do not accept the responseModalities field
if model == "gemini-2.5-pro-exp-03-25" {
return nil
}
return []string{ModalityText} return []string{ModalityText}
} }

View File

@ -144,9 +144,10 @@ var ModelRatio = map[string]float64{
"tao-8k": 0.002 * KiloRmb, "tao-8k": 0.002 * KiloRmb,
// https://ai.google.dev/pricing // https://ai.google.dev/pricing
// https://cloud.google.com/vertex-ai/generative-ai/pricing // https://cloud.google.com/vertex-ai/generative-ai/pricing
// "gemma-2-2b-it": 0, "gemma-2-2b-it": 0,
// "gemma-2-9b-it": 0, "gemma-2-9b-it": 0,
// "gemma-2-27b-it": 0, "gemma-2-27b-it": 0,
"gemma-3-27b-it": 0,
"gemini-pro": 0.25 * MilliTokensUsd, // $0.00025 / 1k characters -> $0.001 / 1k tokens "gemini-pro": 0.25 * MilliTokensUsd, // $0.00025 / 1k characters -> $0.001 / 1k tokens
"gemini-1.0-pro": 0.125 * MilliTokensUsd, "gemini-1.0-pro": 0.125 * MilliTokensUsd,
"gemini-1.0-pro-vision": 0.125 * MilliTokensUsd, "gemini-1.0-pro-vision": 0.125 * MilliTokensUsd,
@ -165,8 +166,9 @@ var ModelRatio = map[string]float64{
"gemini-2.0-flash-lite-001": 0.075 * MilliTokensUsd, "gemini-2.0-flash-lite-001": 0.075 * MilliTokensUsd,
"gemini-2.0-flash-lite-preview-02-05": 0.075 * MilliTokensUsd, "gemini-2.0-flash-lite-preview-02-05": 0.075 * MilliTokensUsd,
"gemini-2.0-flash-thinking-exp-01-21": 0.075 * MilliTokensUsd, "gemini-2.0-flash-thinking-exp-01-21": 0.075 * MilliTokensUsd,
"gemini-2.0-pro-exp-02-05": 1.25 * MilliTokensUsd,
"gemini-2.0-flash-exp-image-generation": 0.075 * MilliTokensUsd, "gemini-2.0-flash-exp-image-generation": 0.075 * MilliTokensUsd,
"gemini-2.0-pro-exp-02-05": 1.25 * MilliTokensUsd,
"gemini-2.5-pro-exp-03-25": 1.25 * MilliTokensUsd,
"aqa": 1, "aqa": 1,
// https://open.bigmodel.cn/pricing // https://open.bigmodel.cn/pricing
"glm-zero-preview": 0.01 * KiloRmb, "glm-zero-preview": 0.01 * KiloRmb,