This commit is contained in:
2026-01-19 22:01:50 +03:00
parent 65acbab94e
commit d0c62f4ec5

View File

@@ -204,7 +204,7 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) {
ctx.Answer(laniakea.EscapeMarkdown(agentAnswer.Content)) ctx.Answer(laniakea.EscapeMarkdown(agentAnswer.Content))
counter := red.RPGetCounter(db, ctx.FromID, waifuId) + 1 counter := red.RPGetCounter(db, ctx.FromID, waifuId) + 1
if counter == 8 { if counter == 10 {
m := ctx.Answer("Запущено сжатие чата.") m := ctx.Answer("Запущено сжатие чата.")
history, err = mdb.GetChatHistory(db, chatId) history, err = mdb.GetChatHistory(db, chatId)
if err != nil { if err != nil {
@@ -213,7 +213,7 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) {
} }
messages = make([]ai.Message, 0) messages = make([]ai.Message, 0)
for _, m := range history[:len(history)-2] { for _, m := range history {
messages = append(messages, ai.Message{ messages = append(messages, ai.Message{
Role: m.Role, Role: m.Role,
Content: m.Message, Content: m.Message,
@@ -229,7 +229,13 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) {
} }
compressedHistory := res.Choices[0].Message.Content compressedHistory := res.Choices[0].Message.Content
m.Edit("\\[DEBUG] Compressed History:\n" + laniakea.EscapeMarkdown(compressedHistory))
chatId = uuid.New().String()
err := red.RPSetChatId(db, ctx.FromID, waifuId, chatId)
if err != nil {
ctx.Error(err)
return
}
err = mdb.UpdateChatHistory(db, chatId, "assistant", compressedHistory) err = mdb.UpdateChatHistory(db, chatId, "assistant", compressedHistory)
if err != nil { if err != nil {
@@ -242,13 +248,7 @@ func generate(ctx *laniakea.MsgContext, db *laniakea.DatabaseContext) {
return return
} }
counter = 0 counter = 0
m.Edit("Сжатие завершено")
chatId = uuid.New().String()
err := red.RPSetChatId(db, ctx.FromID, waifuId, chatId)
if err != nil {
ctx.Error(err)
return
}
} }
err = red.RPSetCounter(db, ctx.FromID, waifuId, counter) err = red.RPSetCounter(db, ctx.FromID, waifuId, counter)
if err != nil { if err != nil {