抱歉,经测试这样才没有问题

This commit is contained in:
sijinhui
2025-02-21 22:51:53 +08:00
parent 4625aa9fa8
commit 33fd5d5913

View File

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