passing
parent
4f08abbb61
commit
68a87dc3db
|
|
@ -328,6 +328,7 @@ func handleAPIChatBotPut(w http.ResponseWriter, r *http.Request) error {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
//log.Printf("generated for %s via %s: [%s]", cookie.MyName(), r.URL.Path, justNew)
|
||||||
if err := os.Rename(inputF, promptF); err != nil {
|
if err := os.Rename(inputF, promptF); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
@ -382,6 +383,7 @@ func chatBotGenerateAndFillInputF(ctx context.Context, cacheF, inputF, reversePr
|
||||||
commands[1:]...,
|
commands[1:]...,
|
||||||
)
|
)
|
||||||
command.Dir = Config.ChatBot.WD
|
command.Dir = Config.ChatBot.WD
|
||||||
|
command.Stderr = io.Discard
|
||||||
command.Stderr = log.Writer()
|
command.Stderr = log.Writer()
|
||||||
|
|
||||||
stdout, err := command.StdoutPipe()
|
stdout, err := command.StdoutPipe()
|
||||||
|
|
@ -405,7 +407,6 @@ func chatBotGenerateAndFillInputF(ctx context.Context, cacheF, inputF, reversePr
|
||||||
}
|
}
|
||||||
|
|
||||||
oldAndNew := buff.Bytes()
|
oldAndNew := buff.Bytes()
|
||||||
log.Printf("generated: [%s]", oldAndNew)
|
|
||||||
priorContent, err := os.ReadFile(inputF)
|
priorContent, err := os.ReadFile(inputF)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
@ -415,14 +416,12 @@ func chatBotGenerateAndFillInputF(ctx context.Context, cacheF, inputF, reversePr
|
||||||
append(priorContent, justNew...),
|
append(priorContent, justNew...),
|
||||||
[]byte(reversePrompt),
|
[]byte(reversePrompt),
|
||||||
)
|
)
|
||||||
log.Printf("found lastindex(%d priorContent + %d newContent, %s) = %v", len(priorContent), len(justNew), reversePrompt, idx)
|
|
||||||
if idx+len(reversePrompt) > len(priorContent) {
|
if idx+len(reversePrompt) > len(priorContent) {
|
||||||
justNew = justNew[:idx+len(reversePrompt)-len(priorContent)]
|
justNew = justNew[:idx+len(reversePrompt)-len(priorContent)]
|
||||||
}
|
}
|
||||||
if err := _appendFile(inputF, string(justNew)); err != nil {
|
if err := _appendFile(inputF, string(justNew)); err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
log.Printf("newly generated: [%s]", justNew)
|
|
||||||
|
|
||||||
if !bytes.HasSuffix(append(priorContent, justNew...), []byte(reversePrompt)) {
|
if !bytes.HasSuffix(append(priorContent, justNew...), []byte(reversePrompt)) {
|
||||||
more, err := chatBotGenerateAndFillInputF(ctx, cacheF, inputF, reversePrompt)
|
more, err := chatBotGenerateAndFillInputF(ctx, cacheF, inputF, reversePrompt)
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,9 @@ func TestAPIV0ChatBot(t *testing.T) {
|
||||||
t.Error(string(got))
|
t.Error(string(got))
|
||||||
}
|
}
|
||||||
|
|
||||||
resp2 := httpDo(t, http.MethodPut, "/api/v0/chatbot", body().Encode())
|
body2 := body()
|
||||||
|
body2.Set("Message", "I don't know, boss....")
|
||||||
|
resp2 := httpDo(t, http.MethodPut, "/api/v0/chatbot", body2.Encode())
|
||||||
got2, err := io.ReadAll(resp2.Body)
|
got2, err := io.ReadAll(resp2.Body)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue