|
@@ -364,11 +364,11 @@ func postConsumeQuota(ctx *gin.Context, relayInfo *relaycommon.RelayInfo,
|
|
|
var webSearchPrice float64
|
|
var webSearchPrice float64
|
|
|
if relayInfo.ResponsesUsageInfo != nil {
|
|
if relayInfo.ResponsesUsageInfo != nil {
|
|
|
if webSearchTool, exists := relayInfo.ResponsesUsageInfo.BuiltInTools[dto.BuildInToolWebSearchPreview]; exists && webSearchTool.CallCount > 0 {
|
|
if webSearchTool, exists := relayInfo.ResponsesUsageInfo.BuiltInTools[dto.BuildInToolWebSearchPreview]; exists && webSearchTool.CallCount > 0 {
|
|
|
- // 计算 web search 调用的配额 (配额 = 价格 * 调用次数 / 1000)
|
|
|
|
|
|
|
+ // 计算 web search 调用的配额 (配额 = 价格 * 调用次数 / 1000 * 分组倍率)
|
|
|
webSearchPrice = operation_setting.GetWebSearchPricePerThousand(modelName, webSearchTool.SearchContextSize)
|
|
webSearchPrice = operation_setting.GetWebSearchPricePerThousand(modelName, webSearchTool.SearchContextSize)
|
|
|
dWebSearchQuota = decimal.NewFromFloat(webSearchPrice).
|
|
dWebSearchQuota = decimal.NewFromFloat(webSearchPrice).
|
|
|
Mul(decimal.NewFromInt(int64(webSearchTool.CallCount))).
|
|
Mul(decimal.NewFromInt(int64(webSearchTool.CallCount))).
|
|
|
- Div(decimal.NewFromInt(1000))
|
|
|
|
|
|
|
+ Div(decimal.NewFromInt(1000)).Mul(dGroupRatio).Mul(dQuotaPerUnit)
|
|
|
extraContent += fmt.Sprintf("Web Search 调用 %d 次,上下文大小 %s,调用花费 $%s",
|
|
extraContent += fmt.Sprintf("Web Search 调用 %d 次,上下文大小 %s,调用花费 $%s",
|
|
|
webSearchTool.CallCount, webSearchTool.SearchContextSize, dWebSearchQuota.String())
|
|
webSearchTool.CallCount, webSearchTool.SearchContextSize, dWebSearchQuota.String())
|
|
|
}
|
|
}
|
|
@@ -381,7 +381,7 @@ func postConsumeQuota(ctx *gin.Context, relayInfo *relaycommon.RelayInfo,
|
|
|
fileSearchPrice = operation_setting.GetFileSearchPricePerThousand()
|
|
fileSearchPrice = operation_setting.GetFileSearchPricePerThousand()
|
|
|
dFileSearchQuota = decimal.NewFromFloat(fileSearchPrice).
|
|
dFileSearchQuota = decimal.NewFromFloat(fileSearchPrice).
|
|
|
Mul(decimal.NewFromInt(int64(fileSearchTool.CallCount))).
|
|
Mul(decimal.NewFromInt(int64(fileSearchTool.CallCount))).
|
|
|
- Div(decimal.NewFromInt(1000))
|
|
|
|
|
|
|
+ Div(decimal.NewFromInt(1000)).Mul(dGroupRatio).Mul(dQuotaPerUnit)
|
|
|
extraContent += fmt.Sprintf("File Search 调用 %d 次,调用花费 $%s",
|
|
extraContent += fmt.Sprintf("File Search 调用 %d 次,调用花费 $%s",
|
|
|
fileSearchTool.CallCount, dFileSearchQuota.String())
|
|
fileSearchTool.CallCount, dFileSearchQuota.String())
|
|
|
}
|
|
}
|