Skip to content

Yuki-QQbot 3.5.1

Choose a tag to compare

@YuanYeYouTao YuanYeYouTao released this 14 Aug 20:43
6052692

Yuki-QQbot 3.5.1 发布说明

3.5.1 将长期记忆从“检索后直接注入”扩展为可观测、可衰减、可强化的自适应生命周期,同时
把自动召回、显式读取和写入变更拆成互斥路径。普通回复不再为记忆使用归因等待额外模型请求,
记忆修改也只能依据真实工具回执对外确认。

结构化意图与有界召回

  • Planner 在既有一次调用中输出记忆访问方式、召回模式、目的、可信主体提示、实体、绝对时间
    范围、偏好类型和请求数量,不增加第二次 Planner 或 rerank 模型。
  • 后端先解析真实发送者、当前群、回复、提及和 SELF 可见性;Planner 提示只参与软加分,不能
    产生新身份目标或扩大合法检索范围。
  • 召回顺序为 FTS / Semantic → RRF → Intent/Activation → MMR → Context Budget,精确命中
    和显式偏好继续保留,低 Activation 的高相关旧记忆仍可召回。
  • 自动召回按 background、continuation、recall/verify/correct、overview 分别限制为 3、4、6、8
    条,每目标最多 4 条;显式工具读取和 Plugin/管理搜索不使用该自动注入限额。

Activation、归因与强化

  • Episode、Fact、Preference 和 Explicit 默认半衰期分别为 14、60、120、365 天;读取时计算
    指数衰减,不后台改写真实性状态,也不以 Activation 作为硬过滤条件。
  • Recall Receipt 记录 candidate、selected、injected、used、reinforced 阶段和数值分数,不保存
    用户问题、回复正文或记忆正文,并由维护任务按 30 天保留期清理。
  • 主 Agent 不再暴露 report_memory_usage。正文或对应语音发送成功后,进程内 Worker 使用 Flash
    对本轮 Exposure 做白名单归因,再异步标记 used 并通过 revision CAS 强化。
  • 新前台模型请求可抢占尚在推理的后台归因;队列满、超时、非法输出或重启只跳过本轮强化,
    不阻塞聊天,也不改变事实有效性。

读取与写入互斥

  • Memory Access 分为 none / automatic / tool / mutation。自动召回首轮不暴露 Memory Scope,
    显式读取不自动注入,写入轮次只开放经过权限、来源和风险检查的 memory/write_state 能力。
  • 创建、纠正、撤回和恢复由独立 mutation 完成门收束;未调用写工具、noop、contest、歧义或
    未找到时,模型正文不能覆盖真实结果,撤回只称为失效并保留审计记录。
  • Locator 支持稳定 key、旧正文、分类和 fact ID。用户可见标签误填为内部 key 时,只返回最多
    三条合法候选供 fact ID 重试,不能跨人物、跨群、绕过 SELF 或执行模糊变更。
  • DeepSeek 不支持 tool_choice,因此 Chat Completions 和 Responses 请求体始终省略该字段;
    正确性由能力隔离、事务回执和后端完成门保证。

数据库与兼容性

  • Alembic 0035last_used_at 原值迁移为 last_injected_at,新增 Activation State 和 Recall
    Receipt;0036 仅迁移后台归因配置键,不持久化归因任务或聊天正文。
  • Plugin API 保持 1.1;Plugin Memory Facade、管理搜索、Dream、Evidence、Conflict、Mutation
    和基于 last_confirmed_at 的真实性生命周期保持既有语义。
  • 升级前建议备份当前镜像和 data/qq_ai_bot.db,再执行 alembic upgrade head

验证

  • ruff format --check .ruff check .mypy src 通过。
  • 全量测试 1111 passed、1 skipped;跳过项为需要显式外部凭据的 Qwen Embedding 在线测试。
  • Memory Quality 18/18 cases、38/38 gates 通过,跨人和跨群污染门保持为 0。
  • 生产环境完成 SQLite 备份与完整性检查、0036 迁移、Bot 健康和 OneBot 连接核验;真实测试覆盖
    创建、自动读取、显式工具读取、纠正、撤回及不存在目标,数据库状态与 mutation receipt 一致。