From a6a20a2069c5721beecd8154bdb4563dfb1dfedb Mon Sep 17 00:00:00 2001 From: Seefs <40468931+seefs001@users.noreply.github.com> Date: Tue, 25 Nov 2025 16:45:14 +0800 Subject: [PATCH] Merge pull request #2296 from seefs001/fix/adapter-missing fix: volcengine claude DoResponse --- relay/channel/baidu_v2/adaptor.go | 3 +-- relay/channel/volcengine/adaptor.go | 8 ++++++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/relay/channel/baidu_v2/adaptor.go b/relay/channel/baidu_v2/adaptor.go index a2711b8b..94091e38 100644 --- a/relay/channel/baidu_v2/adaptor.go +++ b/relay/channel/baidu_v2/adaptor.go @@ -9,7 +9,6 @@ import ( "github.com/QuantumNous/new-api/dto" "github.com/QuantumNous/new-api/relay/channel" - "github.com/QuantumNous/new-api/relay/channel/claude" "github.com/QuantumNous/new-api/relay/channel/openai" relaycommon "github.com/QuantumNous/new-api/relay/common" "github.com/QuantumNous/new-api/relay/constant" @@ -27,7 +26,7 @@ func (a *Adaptor) ConvertGeminiRequest(*gin.Context, *relaycommon.RelayInfo, *dt } func (a *Adaptor) ConvertClaudeRequest(c *gin.Context, info *relaycommon.RelayInfo, req *dto.ClaudeRequest) (any, error) { - adaptor := claude.Adaptor{} + adaptor := openai.Adaptor{} return adaptor.ConvertClaudeRequest(c, info, req) } diff --git a/relay/channel/volcengine/adaptor.go b/relay/channel/volcengine/adaptor.go index aa412545..74cad439 100644 --- a/relay/channel/volcengine/adaptor.go +++ b/relay/channel/volcengine/adaptor.go @@ -40,7 +40,11 @@ func (a *Adaptor) ConvertGeminiRequest(*gin.Context, *relaycommon.RelayInfo, *dt } func (a *Adaptor) ConvertClaudeRequest(c *gin.Context, info *relaycommon.RelayInfo, req *dto.ClaudeRequest) (any, error) { - adaptor := claude.Adaptor{} + if info.ChannelBaseUrl == DoubaoCodingPlan { + adaptor := claude.Adaptor{} + return adaptor.ConvertClaudeRequest(c, info, req) + } + adaptor := openai.Adaptor{} return adaptor.ConvertClaudeRequest(c, info, req) } @@ -341,7 +345,7 @@ func (a *Adaptor) DoRequest(c *gin.Context, info *relaycommon.RelayInfo, request } func (a *Adaptor) DoResponse(c *gin.Context, resp *http.Response, info *relaycommon.RelayInfo) (usage any, err *types.NewAPIError) { - if info.RelayFormat == types.RelayFormatClaude { + if info.RelayFormat == types.RelayFormatClaude && info.ChannelBaseUrl == DoubaoCodingPlan { if info.IsStream { return claude.ClaudeStreamHandler(c, resp, info, claude.RequestModeMessage) }