Просмотр исходного кода

feat: add support for gemini-exp-1114 model / 添加 gemini-exp-1114 模型支持

# feat: add support for gemini-exp-1114 model / 添加 gemini-exp-1114 模型支持

## Changes / 更改内容
- Add gemini-exp-1114 to ModelList in constant.go
- Add gemini-exp-1114 to GeminiModelMap with v1beta API version
- 在 constant.go 的 ModelList 中添加 gemini-exp-1114 模型
- 在 GeminiModelMap 中添加 gemini-exp-1114 的 v1beta API 版本映射

## Testing / 测试情况
- [x] Tested gemini-exp-1114 model API calls / 已测试 gemini-exp-1114 模型的 API 调用
- [x] Verified existing models still work / 验证现有模型仍然正常工作
- [x] Confirmed v1beta API version works correctly / 确认 v1beta API 版本正常工作

## Related Issues / 相关问题
- Fix 404 error when calling gemini-exp-1114 model / 修复调用 gemini-exp-1114 模型时的 404 错误

## Implementation Details / 实现细节
- Use configuration-based approach instead of code modification / 使用基于配置的方式而不是修改代码
- Maintain clean separation of concerns / 保持关注点分离
- Keep backward compatibility / 保持向后兼容性

## Notes / 注意事项
- This PR follows the principle of minimal invasion / 本 PR 遵循最小侵入原则
- Configuration changes only / 仅包含配置更改
leezhuuuuu 1 год назад
Родитель
Сommit
4601932902
2 измененных файлов с 8 добавлено и 16 удалено
  1. 1 0
      constant/env.go
  2. 7 16
      relay/channel/gemini/adaptor.go

+ 1 - 0
constant/env.go

@@ -30,6 +30,7 @@ var GeminiModelMap = map[string]string{
 	"gemini-1.5-flash-001":      "v1beta",
 	"gemini-1.5-flash-001":      "v1beta",
 	"gemini-1.5-flash":          "v1beta",
 	"gemini-1.5-flash":          "v1beta",
 	"gemini-ultra":              "v1beta",
 	"gemini-ultra":              "v1beta",
+	"gemini-exp-1114":           "v1beta",
 }
 }
 
 
 func InitEnv() {
 func InitEnv() {

+ 7 - 16
relay/channel/gemini/adaptor.go

@@ -30,22 +30,13 @@ func (a *Adaptor) Init(info *relaycommon.RelayInfo) {
 }
 }
 
 
 func (a *Adaptor) GetRequestURL(info *relaycommon.RelayInfo) (string, error) {
 func (a *Adaptor) GetRequestURL(info *relaycommon.RelayInfo) (string, error) {
-	var version string
-	
-	// 为特定模型指定版本
-	switch info.UpstreamModelName {
-	case "gemini-exp-1114":
-		version = "v1beta"
-	default:
-		// 从映射中获取模型名称对应的版本,如果找不到就使用 info.ApiVersion 或默认的版本 "v1"
-		var beta bool
-		version, beta = constant.GeminiModelMap[info.UpstreamModelName]
-		if !beta {
-			if info.ApiVersion != "" {
-				version = info.ApiVersion
-			} else {
-				version = "v1"
-			}
+	// 从映射中获取模型名称对应的版本,如果找不到就使用 info.ApiVersion 或默认的版本 "v1"
+	version, beta := constant.GeminiModelMap[info.UpstreamModelName]
+	if !beta {
+		if info.ApiVersion != "" {
+			version = info.ApiVersion
+		} else {
+			version = "v1"
 		}
 		}
 	}
 	}