From c7d1689ccf6c7825a7b12083448a772c7bb49050 Mon Sep 17 00:00:00 2001 From: Pluto Date: Wed, 11 Oct 2023 14:10:05 +0800 Subject: [PATCH] improvement: `azure` api result transformation --- controller/relay-openai.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/controller/relay-openai.go b/controller/relay-openai.go index 6bdfbc08..2045229b 100644 --- a/controller/relay-openai.go +++ b/controller/relay-openai.go @@ -37,6 +37,14 @@ func openaiStreamHandler(c *gin.Context, resp *http.Response, relayMode int) (*O if data[:6] != "data: " && data[:6] != "[DONE]" { continue } + // Ignore invalid results in the first line of azure api results. + if c.GetInt("channel") == common.ChannelTypeAzure && !strings.HasPrefix(data[6:], "[DONE]") { + var streamResponse ChatCompletionsStreamResponse + err := json.Unmarshal([]byte(data[6:]), &streamResponse) + if err == nil && streamResponse.Id == "" { + continue + } + } dataChan <- data data = data[6:] if !strings.HasPrefix(data, "[DONE]") {