diff --git a/relay/channel/openai/adaptor.go b/relay/channel/openai/adaptor.go index 1dc05fa74..e0b762d4f 100644 --- a/relay/channel/openai/adaptor.go +++ b/relay/channel/openai/adaptor.go @@ -128,7 +128,7 @@ func (a *Adaptor) ConvertRequest(c *gin.Context, info *relaycommon.RelayInfo, re request.Model = strings.TrimSuffix(request.Model, "-medium") } info.ReasoningEffort = request.ReasoningEffort - //info.UpstreamModelName = request.Model + info.UpstreamModelName = request.Model } if request.Model == "o1" || request.Model == "o1-2024-12-17" || strings.HasPrefix(request.Model, "o3") { //修改第一个Message的内容,将system改为developer diff --git a/relay/common/relay_info.go b/relay/common/relay_info.go index dc0475550..4978f84f0 100644 --- a/relay/common/relay_info.go +++ b/relay/common/relay_info.go @@ -30,6 +30,7 @@ type RelayInfo struct { RelayMode int UpstreamModelName string OriginModelName string + RecodeModelName string RequestURLPath string ApiVersion string PromptTokens int @@ -88,6 +89,7 @@ func GenRelayInfo(c *gin.Context) *RelayInfo { FirstResponseTime: startTime.Add(-time.Second), OriginModelName: c.GetString("original_model"), UpstreamModelName: c.GetString("original_model"), + RecodeModelName: c.GetString("recode_model"), ApiType: apiType, ApiVersion: c.GetString("api_version"), ApiKey: strings.TrimPrefix(c.Request.Header.Get("Authorization"), "Bearer "), diff --git a/relay/relay-text.go b/relay/relay-text.go index 1e2dfbaa7..0cf5dcb48 100644 --- a/relay/relay-text.go +++ b/relay/relay-text.go @@ -93,6 +93,7 @@ func TextHelper(c *gin.Context) (openaiErr *dto.OpenAIErrorWithStatusCode) { } } relayInfo.UpstreamModelName = textRequest.Model + relayInfo.RecodeModelName = textRequest.Model modelPrice, getModelPriceSuccess := common.GetModelPrice(textRequest.Model, false) groupRatio := setting.GetGroupRatio(relayInfo.Group) @@ -221,7 +222,7 @@ func TextHelper(c *gin.Context) (openaiErr *dto.OpenAIErrorWithStatusCode) { if strings.HasPrefix(relayInfo.UpstreamModelName, "gpt-4o-audio") { service.PostAudioConsumeQuota(c, relayInfo, usage.(*dto.Usage), preConsumedQuota, userQuota, modelRatio, groupRatio, modelPrice, getModelPriceSuccess, "") } else { - postConsumeQuota(c, relayInfo, textRequest.Model, usage.(*dto.Usage), ratio, preConsumedQuota, userQuota, modelRatio, groupRatio, modelPrice, getModelPriceSuccess, "") + postConsumeQuota(c, relayInfo, relayInfo.RecodeModelName, usage.(*dto.Usage), ratio, preConsumedQuota, userQuota, modelRatio, groupRatio, modelPrice, getModelPriceSuccess, "") } return nil } diff --git a/service/log_info_generate.go b/service/log_info_generate.go index f0982ae74..1ce09d92f 100644 --- a/service/log_info_generate.go +++ b/service/log_info_generate.go @@ -13,11 +13,11 @@ func GenerateTextOtherInfo(ctx *gin.Context, relayInfo *relaycommon.RelayInfo, m other["completion_ratio"] = completionRatio other["model_price"] = modelPrice other["frt"] = float64(relayInfo.FirstResponseTime.UnixMilli() - relayInfo.StartTime.UnixMilli()) - adminInfo := make(map[string]interface{}) - adminInfo["use_channel"] = ctx.GetStringSlice("use_channel") if relayInfo.ReasoningEffort != "" { - adminInfo["reasoning_effort"] = relayInfo.ReasoningEffort + other["reasoning_effort"] = relayInfo.ReasoningEffort } + adminInfo := make(map[string]interface{}) + adminInfo["use_channel"] = ctx.GetStringSlice("use_channel") other["admin_info"] = adminInfo return other }