From 267c99b779be798a11c638a9d953cbc8cec7cf40 Mon Sep 17 00:00:00 2001 From: Seefs Date: Fri, 6 Mar 2026 12:03:51 +0800 Subject: [PATCH] fix: If top_p is not provided, Claude's logic will automatically set it to 1. --- relay/claude_handler.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/relay/claude_handler.go b/relay/claude_handler.go index 88d688f1d..13a9e83a9 100644 --- a/relay/claude_handler.go +++ b/relay/claude_handler.go @@ -59,7 +59,9 @@ func ClaudeHelper(c *gin.Context, info *relaycommon.RelayInfo) (newAPIError *typ Type: "adaptive", } request.OutputConfig = json.RawMessage(fmt.Sprintf(`{"effort":"%s"}`, effortLevel)) - request.TopP = common.GetPointer[float64](0) + if request.TopP == nil { + request.TopP = common.GetPointer[float64](1) + } request.Temperature = common.GetPointer[float64](1.0) info.UpstreamModelName = request.Model } else if model_setting.GetClaudeSettings().ThinkingAdapterEnabled &&