Skip to content

功能请求:添加简单对话记忆压缩模块 #5827

@lijiajun1997

Description

@lijiajun1997

在 FastGPT 中添加一个轻量记忆模块,用于长对话时压缩历史,防止上下文溢出。

配置

  • max_rounds:最大轮次(如 15),或 max_tokens(可选,如16k)。
  • compress_at:触发点(如 14 轮)。
  • compress_old:压缩最老几轮(如 10)。
  • keep_recent:保留最近几轮(如 5)。

工作流

对话结束后,检查历史长度。
若达 compress_at:

异步取最老 10 轮。
调用 LLM 总结,提示词:

用用户第一人称总结下面对话:[老对话]
输出:我和 AI 讨论了 xxx,我希望 AI 记住 xxx(习惯、要求、风格等)。

总结结果作为一条“用户”消息,替换对话记录里最老 10 轮。
保留最近 5 轮。

历史缩减后继续,下次再达阈值重复。

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions