Explorar o código

fix: volcengine claude DoResponse

Seefs hai 3 meses
pai
achega
5060904331
Modificáronse 1 ficheiros con 7 adicións e 0 borrados
  1. 7 0
      relay/channel/volcengine/adaptor.go

+ 7 - 0
relay/channel/volcengine/adaptor.go

@@ -341,6 +341,13 @@ 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.IsStream {
+			return claude.ClaudeStreamHandler(c, resp, info, claude.RequestModeMessage)
+		}
+		return claude.ClaudeHandler(c, resp, info, claude.RequestModeMessage)
+	}
+
 	if info.RelayMode == constant.RelayModeAudioSpeech {
 		encoding := mapEncoding(c.GetString(contextKeyResponseFormat))
 		if info.IsStream {