diff --git a/model/pricing.go b/model/pricing.go index d56068a10..a877eac41 100644 --- a/model/pricing.go +++ b/model/pricing.go @@ -196,20 +196,25 @@ func updatePricing() { modelSupportEndpointsStr[ability.Model] = endpoints } - // 再补充模型自定义端点 + // 再补充模型自定义端点:若配置有效则替换默认端点,不做合并 for modelName, meta := range metaMap { if strings.TrimSpace(meta.Endpoints) == "" { continue } var raw map[string]interface{} if err := json.Unmarshal([]byte(meta.Endpoints), &raw); err == nil { - endpoints := modelSupportEndpointsStr[modelName] - for k := range raw { - if !common.StringsContains(endpoints, k) { - endpoints = append(endpoints, k) + endpoints := make([]string, 0, len(raw)) + for k, v := range raw { + switch v.(type) { + case string, map[string]interface{}: + if !common.StringsContains(endpoints, k) { + endpoints = append(endpoints, k) + } } } - modelSupportEndpointsStr[modelName] = endpoints + if len(endpoints) > 0 { + modelSupportEndpointsStr[modelName] = endpoints + } } }