Browse Source

fix: improve error handling and readability in ability.go

CaIon 5 months ago
parent
commit
74ec34da67
2 changed files with 6 additions and 2 deletions
  1. 1 1
      model/ability.go
  2. 5 1
      relay/gemini_handler.go

+ 1 - 1
model/ability.go

@@ -301,7 +301,7 @@ func FixAbility() (int, int, error) {
 	}
 	var channels []*Channel
 	// Find all channels
-	err = DB.Model(&Channel{}).Find(&channels).Error
+	err := DB.Model(&Channel{}).Find(&channels).Error
 	if err != nil {
 		return 0, 0, err
 	}

+ 5 - 1
relay/gemini_handler.go

@@ -80,7 +80,11 @@ func getGeminiInputTokens(req *dto.GeminiChatRequest, info *relaycommon.RelayInf
 
 func isNoThinkingRequest(req *dto.GeminiChatRequest) bool {
 	if req.GenerationConfig.ThinkingConfig != nil && req.GenerationConfig.ThinkingConfig.ThinkingBudget != nil {
-		return *req.GenerationConfig.ThinkingConfig.ThinkingBudget == 0
+		configBudget := req.GenerationConfig.ThinkingConfig.ThinkingBudget
+		if configBudget != nil && *configBudget == 0 {
+			// 如果思考预算为 0,则认为是非思考请求
+			return true
+		}
 	}
 	return false
 }