[add] neo local model support
This commit is contained in:
parent
46b20bb778
commit
59dfe49302
2 changed files with 27 additions and 27 deletions
|
|
@ -27,10 +27,10 @@ func NewOpenAI(data []byte) *JSON {
|
||||||
}
|
}
|
||||||
|
|
||||||
msg := makeMessage()
|
msg := makeMessage()
|
||||||
data = []byte(strings.TrimPrefix(string(data), "data: "))
|
text := string(data)
|
||||||
|
data = []byte(strings.TrimPrefix(text, "data: "))
|
||||||
switch {
|
switch {
|
||||||
|
case strings.Contains(text, `"delta":{`) && strings.Contains(text, `"content":`):
|
||||||
case strings.Contains(string(data), `"delta":{"content"`):
|
|
||||||
var message openai.Message
|
var message openai.Message
|
||||||
err := jsoniter.Unmarshal(data, &message)
|
err := jsoniter.Unmarshal(data, &message)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|
@ -43,12 +43,12 @@ func NewOpenAI(data []byte) *JSON {
|
||||||
}
|
}
|
||||||
break
|
break
|
||||||
|
|
||||||
case strings.Contains(string(data), `[DONE]`):
|
case strings.Contains(text, `[DONE]`):
|
||||||
msg.Done = true
|
msg.Done = true
|
||||||
break
|
break
|
||||||
|
|
||||||
default:
|
default:
|
||||||
msg.Error = string(data)
|
msg.Error = text
|
||||||
}
|
}
|
||||||
|
|
||||||
return &JSON{msg}
|
return &JSON{msg}
|
||||||
|
|
|
||||||
44
neo/neo.go
44
neo/neo.go
|
|
@ -257,32 +257,32 @@ func (neo *DSL) Answer(ctx command.Context, question string, answer Answer) erro
|
||||||
|
|
||||||
return !msg.IsDone()
|
return !msg.IsDone()
|
||||||
|
|
||||||
case <-ctx.Done():
|
// case <-ctx.Done():
|
||||||
if err := ctx.Err(); err != nil {
|
// if err := ctx.Err(); err != nil {
|
||||||
message.New().Text(err.Error()).Write(w)
|
// message.New().Text(err.Error()).Write(w)
|
||||||
}
|
// }
|
||||||
|
|
||||||
if len(errorMsg) > 0 {
|
// if len(errorMsg) > 0 {
|
||||||
|
|
||||||
var errData openai.ErrorMessage
|
// var errData openai.ErrorMessage
|
||||||
err := jsoniter.Unmarshal(errorMsg, &errData)
|
// err := jsoniter.Unmarshal(errorMsg, &errData)
|
||||||
if err == nil {
|
// if err == nil {
|
||||||
msg := errData.Error.Message
|
// msg := errData.Error.Message
|
||||||
if msg == "" {
|
// if msg == "" {
|
||||||
msg = fmt.Sprintf("OpenAI error: %s", errData.Error.Code)
|
// msg = fmt.Sprintf("OpenAI error: %s", errData.Error.Code)
|
||||||
}
|
// }
|
||||||
message.New().Text(msg).Write(w)
|
// message.New().Text(msg).Write(w)
|
||||||
message.New().Done().Write(w)
|
// message.New().Done().Write(w)
|
||||||
return false
|
// return false
|
||||||
}
|
// }
|
||||||
|
|
||||||
message.New().Text(string(errorMsg)).Write(w)
|
// message.New().Text(string(errorMsg)).Write(w)
|
||||||
message.New().Done().Write(w)
|
// message.New().Done().Write(w)
|
||||||
return false
|
// return false
|
||||||
}
|
// }
|
||||||
|
|
||||||
message.New().Done().Write(w)
|
// message.New().Done().Write(w)
|
||||||
return false
|
// return false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue