From 2ed1fc9f801a269238e474df42a21cfec31817eb Mon Sep 17 00:00:00 2001 From: ScuroNeko Date: Thu, 29 Jan 2026 23:36:50 +0300 Subject: [PATCH] compress wip --- db.docker-compose.yml | 2 +- plugins/rp.go | 48 +++++++++++++++++++++---------------------- 2 files changed, 25 insertions(+), 25 deletions(-) diff --git a/db.docker-compose.yml b/db.docker-compose.yml index b9ef8d9..064c43f 100644 --- a/db.docker-compose.yml +++ b/db.docker-compose.yml @@ -44,7 +44,7 @@ services: ports: - "6379:6379" healthcheck: - test: [ "CMD", "redis-cli", "--raw", "incr", "ping" ] + test: ["CMD", "redis-cli", "--raw", "ping"] interval: 5s retries: 5 timeout: 10s diff --git a/plugins/rp.go b/plugins/rp.go index 100046c..769f8ac 100644 --- a/plugins/rp.go +++ b/plugins/rp.go @@ -7,6 +7,7 @@ import ( "kurumibot/database/mdb" "kurumibot/database/psql" "kurumibot/database/red" + "kurumibot/utils" "kurumibot/utils/ai" "strconv" "strings" @@ -617,30 +618,10 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { func compress(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { m := ctx.EditCallback("Запущено сжатие чата…", nil) _compress(ctx, db) - m.Delete() - return - //chatId = uuid.New().String() - //err = redisRpRep.SetChatId(ctx.FromID, waifuId, chatId) - //if err != nil { - // ctx.Error(err) - // return - //} - // - //err = mdb.UpdateChatHistory(db, chatId, "assistant", compressedHistory) - //if err != nil { - // ctx.Error(err) - //} - //offset := utils.Min(len(history), 20) - //for _, m := range history[len(history)-offset:] { - // err = mdb.UpdateChatHistory(db, chatId, m.Role, m.Message) - // if err != nil { - // ctx.Error(err) - // } - //} - //kb := laniakea.NewInlineKeyboard(1) - //kb = kb.AddCallbackButton("Назад", "rp.chat_stat") - //kb = kb.AddCallbackButton("На главную", "rp.info") - //ctx.EditCallback("Сжатие завершено", kb) + kb := laniakea.NewInlineKeyboard(1) + kb = kb.AddCallbackButton("Назад", "rp.chat_stat") + kb = kb.AddCallbackButton("На главную", "rp.info") + m.Edit("Сжатие завершено") } func _compress(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { @@ -686,6 +667,25 @@ func _compress(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) { compressedHistory = strings.ReplaceAll(compressedHistory, "*", "") ctx.Answer(compressedHistory) + + chatId = uuid.New().String() + err = redisRpRep.SetChatId(ctx.FromID, waifuId, chatId) + if err != nil { + ctx.Error(err) + return + } + + err = mdb.UpdateChatHistory(db, chatId, "assistant", compressedHistory) + if err != nil { + ctx.Error(err) + } + offset := utils.Min(len(history), 20) + for _, m := range history[len(history)-offset:] { + err = mdb.UpdateChatHistory(db, chatId, m.Role, m.Message) + if err != nil { + ctx.Error(err) + } + } } var messagesMethodCount = []int{