fix: nil pointer
This commit is contained in:
@@ -6,6 +6,7 @@ import (
|
|||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
"io"
|
"io"
|
||||||
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"opencatd-open/pkg/openai"
|
"opencatd-open/pkg/openai"
|
||||||
"opencatd-open/pkg/tokenizer"
|
"opencatd-open/pkg/tokenizer"
|
||||||
@@ -179,12 +180,15 @@ func ChatProxy(c *gin.Context, chatReq *openai.ChatCompletionRequest) {
|
|||||||
|
|
||||||
var chatResp openai.ChatCompletionStreamResponse
|
var chatResp openai.ChatCompletionStreamResponse
|
||||||
chatResp.Model = chatReq.Model
|
chatResp.Model = chatReq.Model
|
||||||
chatResp.Choices[0].FinishReason = "stop"
|
choice := openai.Choice{}
|
||||||
|
choice.FinishReason = "stop"
|
||||||
|
chatResp.Choices = append(chatResp.Choices, choice)
|
||||||
datachan <- "data: " + string(chatResp.ByteJson())
|
datachan <- "data: " + string(chatResp.ByteJson())
|
||||||
close(datachan)
|
close(datachan)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
log.Println(err)
|
||||||
var errResp openai.ErrResponse
|
var errResp openai.ErrResponse
|
||||||
errResp.Error.Code = "500"
|
errResp.Error.Code = "500"
|
||||||
errResp.Error.Message = err.Error()
|
errResp.Error.Message = err.Error()
|
||||||
@@ -204,8 +208,11 @@ func ChatProxy(c *gin.Context, chatReq *openai.ChatCompletionRequest) {
|
|||||||
|
|
||||||
var chatResp openai.ChatCompletionStreamResponse
|
var chatResp openai.ChatCompletionStreamResponse
|
||||||
chatResp.Model = chatReq.Model
|
chatResp.Model = chatReq.Model
|
||||||
chatResp.Choices[0].Delta.Role = resp.Candidates[0].Content.Role
|
choice := openai.Choice{}
|
||||||
chatResp.Choices[0].Delta.Content = content
|
choice.Delta.Role = resp.Candidates[0].Content.Role
|
||||||
|
choice.Delta.Content = content
|
||||||
|
chatResp.Choices = append(chatResp.Choices, choice)
|
||||||
|
|
||||||
chunk := "data: " + string(chatResp.ByteJson()) + "\n\n"
|
chunk := "data: " + string(chatResp.ByteJson()) + "\n\n"
|
||||||
datachan <- chunk
|
datachan <- chunk
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user