From 267c99b779be798a11c638a9d953cbc8cec7cf40 Mon Sep 17 00:00:00 2001 From: Seefs Date: Fri, 6 Mar 2026 12:03:51 +0800 Subject: [PATCH 1/3] 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 && From a6ede75415bed7e5e5cd92454e92592af2dcdc55 Mon Sep 17 00:00:00 2001 From: Seefs Date: Fri, 6 Mar 2026 12:07:00 +0800 Subject: [PATCH 2/3] fix: ignore top_p --- relay/claude_handler.go | 3 --- 1 file changed, 3 deletions(-) diff --git a/relay/claude_handler.go b/relay/claude_handler.go index 13a9e83a9..f191d27ce 100644 --- a/relay/claude_handler.go +++ b/relay/claude_handler.go @@ -59,9 +59,6 @@ func ClaudeHelper(c *gin.Context, info *relaycommon.RelayInfo) (newAPIError *typ Type: "adaptive", } request.OutputConfig = json.RawMessage(fmt.Sprintf(`{"effort":"%s"}`, effortLevel)) - 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 && From be8a623586ffc9821ac01146718be6f76ff2c663 Mon Sep 17 00:00:00 2001 From: Seefs Date: Fri, 6 Mar 2026 12:07:36 +0800 Subject: [PATCH 3/3] fix: ignore top_p --- relay/claude_handler.go | 1 - 1 file changed, 1 deletion(-) diff --git a/relay/claude_handler.go b/relay/claude_handler.go index f191d27ce..dbdb3663a 100644 --- a/relay/claude_handler.go +++ b/relay/claude_handler.go @@ -76,7 +76,6 @@ func ClaudeHelper(c *gin.Context, info *relaycommon.RelayInfo) (newAPIError *typ } // TODO: 临时处理 // https://docs.anthropic.com/en/docs/build-with-claude/extended-thinking#important-considerations-when-using-extended-thinking - request.TopP = common.GetPointer[float64](0) request.Temperature = common.GetPointer[float64](1.0) } if !model_setting.ShouldPreserveThinkingSuffix(info.OriginModelName) {