From 52211abc2471674e5bb7ac374b7bbacb397162a4 Mon Sep 17 00:00:00 2001 From: ScuroNeko Date: Mon, 19 Jan 2026 17:00:43 +0300 Subject: [PATCH] some fixes --- plugins/rp.go | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/plugins/rp.go b/plugins/rp.go index 0d1f789..c4a0b36 100644 --- a/plugins/rp.go +++ b/plugins/rp.go @@ -135,7 +135,7 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { return } - systemPrompt := ai.Message{ + beforeHistory := ai.Message{ Role: "system", Content: fmt.Sprintf( "%s %s %s", @@ -178,7 +178,7 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { api := ai.NewOpenAIAPI(ai.GPTBaseUrl, "", "deepseek-ai/deepseek-v3.1-terminus") res, err := api.CreateCompletion(ai.CreateCompletionReq{ - Messages: append([]ai.Message{systemPrompt}, messages...), + Messages: append([]ai.Message{beforeHistory}, messages...), Verbosity: "low", Temperature: 1.0, }) @@ -210,7 +210,20 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { counter := red.RPGetCounter(db, ctx.FromID, waifuId) + 1 if counter == 5 { m := ctx.Answer("Запущено сжатие чата.") - res, err = api.CompressChat(messages[1:]) + history, err = mdb.GetChatHistory(db, chatId, index) + if err != nil { + ctx.Error(err) + return + } + messages = make([]ai.Message, 0) + + for _, m := range history { + messages = append(messages, ai.Message{ + Role: m.Role, + Content: m.Message, + }) + } + res, err = api.CompressChat(messages) if err != nil { ctx.Error(err) }