Forráskód Böngészése

fix(price): 未设置价格,错误返回模型价格匹配的名字

Xyfacai 7 hónapja
szülő
commit
7aa2972c3f
4 módosított fájl, 9 hozzáadás és 8 törlés
  1. 1 1
      model/pricing.go
  2. 4 3
      relay/helper/price.go
  3. 1 1
      service/quota.go
  4. 3 3
      setting/ratio_setting/model_ratio.go

+ 1 - 1
model/pricing.go

@@ -116,7 +116,7 @@ func updatePricing() {
 			pricing.ModelPrice = modelPrice
 			pricing.QuotaType = 1
 		} else {
-			modelRatio, _ := ratio_setting.GetModelRatio(model)
+			modelRatio, _, _ := ratio_setting.GetModelRatio(model)
 			pricing.ModelRatio = modelRatio
 			pricing.CompletionRatio = ratio_setting.GetCompletionRatio(model)
 			pricing.QuotaType = 0

+ 4 - 3
relay/helper/price.go

@@ -79,14 +79,15 @@ func ModelPriceHelper(c *gin.Context, info *relaycommon.RelayInfo, promptTokens
 			preConsumedTokens = promptTokens + maxTokens
 		}
 		var success bool
-		modelRatio, success = ratio_setting.GetModelRatio(info.OriginModelName)
+		var matchName string
+		modelRatio, success, matchName = ratio_setting.GetModelRatio(info.OriginModelName)
 		if !success {
 			acceptUnsetRatio := false
 			if info.UserSetting.AcceptUnsetRatioModel {
 				acceptUnsetRatio = true
 			}
 			if !acceptUnsetRatio {
-				return PriceData{}, fmt.Errorf("模型 %s 倍率或价格未配置,请联系管理员设置或开始自用模式;Model %s ratio or price not set, please set or start self-use mode", info.OriginModelName, info.OriginModelName)
+				return PriceData{}, fmt.Errorf("模型 %s 倍率或价格未配置,请联系管理员设置或开始自用模式;Model %s ratio or price not set, please set or start self-use mode", matchName, matchName)
 			}
 		}
 		completionRatio = ratio_setting.GetCompletionRatio(info.OriginModelName)
@@ -152,7 +153,7 @@ func ContainPriceOrRatio(modelName string) bool {
 	if ok {
 		return true
 	}
-	_, ok = ratio_setting.GetModelRatio(modelName)
+	_, ok, _ = ratio_setting.GetModelRatio(modelName)
 	if ok {
 		return true
 	}

+ 1 - 1
service/quota.go

@@ -96,7 +96,7 @@ func PreWssConsumeQuota(ctx *gin.Context, relayInfo *relaycommon.RelayInfo, usag
 	audioInputTokens := usage.InputTokenDetails.AudioTokens
 	audioOutTokens := usage.OutputTokenDetails.AudioTokens
 	groupRatio := ratio_setting.GetGroupRatio(relayInfo.UsingGroup)
-	modelRatio, _ := ratio_setting.GetModelRatio(modelName)
+	modelRatio, _, _ := ratio_setting.GetModelRatio(modelName)
 
 	autoGroup, exists := ctx.Get("auto_group")
 	if exists {

+ 3 - 3
setting/ratio_setting/model_ratio.go

@@ -369,7 +369,7 @@ func handleThinkingBudgetModel(name, prefix, wildcard string) string {
 	return name
 }
 
-func GetModelRatio(name string) (float64, bool) {
+func GetModelRatio(name string) (float64, bool, string) {
 	modelRatioMapMutex.RLock()
 	defer modelRatioMapMutex.RUnlock()
 
@@ -380,9 +380,9 @@ func GetModelRatio(name string) (float64, bool) {
 	}
 	ratio, ok := modelRatioMap[name]
 	if !ok {
-		return 37.5, operation_setting.SelfUseModeEnabled
+		return 37.5, operation_setting.SelfUseModeEnabled, name
 	}
-	return ratio, true
+	return ratio, true, name
 }
 
 func DefaultModelRatio2JSONString() string {