This commit is contained in:
sijinhui
2025-02-21 14:56:08 +00:00
committed by GitHub

View File

@@ -19,7 +19,7 @@ import (
) )
const ( const (
dataPrefix = "data: " dataPrefix = "data:"
done = "[DONE]" done = "[DONE]"
dataPrefixLength = len(dataPrefix) dataPrefixLength = len(dataPrefix)
) )
@@ -40,11 +40,15 @@ func StreamHandler(c *gin.Context, resp *http.Response, relayMode int) (*model.E
} }
if data[:dataPrefixLength] != dataPrefix && data[:dataPrefixLength] != done { if data[:dataPrefixLength] != dataPrefix && data[:dataPrefixLength] != done {
continue continue
} } else {
if strings.HasPrefix(data[dataPrefixLength:], done) { payload := strings.TrimLeft(data[dataPrefixLength:], " ")
// 这里处理标准的data:开头,标准化为 data: + 单空格格式
data = dataPrefix + " " + strings.TrimLeft(payload, " ")
if strings.HasPrefix(payload, done) {
render.StringData(c, data) render.StringData(c, data)
doneRendered = true doneRendered = true
continue continue
}
} }
switch relayMode { switch relayMode {
case relaymode.ChatCompletions: case relaymode.ChatCompletions: