Skip to content

希望开始新对话时,自动注入日期时间 #34

Closed

Description

@lqs50
No description provided.

Activity

  1. self-assigned this
    on Aug 24, 2026
  2. moved this from 📋 Backlog to 🎯 Ready in dsh-mneme 任务看板on Aug 24, 2026
  3. Anans-Amarre commented on Aug 24, 2026

    @Anans-Amarre
    Collaborator

    感谢反馈!这个需求很合理——新对话开始后,如果模型感知不到"现在是什么时间",遇到时效性问题(今天几号、周几、几点)确实会答不准。

    先同步一下现状,我确认过代码:

    • dsh-mneme 目前没有时间注入机制:检索/注入路径不携带"当下时刻";记忆本身有 created_at/updated_at,但那是记忆维度的时间戳,不是"现在几点"。
    • DSH 主框架这边也没有:system prompt 目前未注入当前日期时间。

    一点技术判断:自动注入时间这类"每次对话都生效"的需求,本质上更适合放在 DSH 框架层的 system prompt(这样无论有没有记忆注入都能带上时间);mneme 作为记忆插件,只能在发生记忆注入时顺带把时间加进去。

    所以初步考虑两条路:

    1. (推荐)在 mneme 注入路径加一个可配置的时间前缀:注入文本开头带 [当前时间: 2026-08-25 周一 14:30],默认关闭(injectTimePrefix,opt-in 开启),作为过渡方案成本很小,不改变现有行为;
    2. 等 DSH 框架层补上全局时间注入后,这个开关关掉避免重复。

    方便的话补充一下你遇到的具体场景(比如哪类对话里发现模型不知道时间、用的什么 DSH 版本),我们好把注入格式和触发时机定得更贴合实际。排期我确认后回复你,也欢迎直接提 PR (๑•̀ㅂ•́)و✧

  4. lqs50 commented on Aug 25, 2026

    @lqs50
    Author

    只需要在对话开始时注入即可

  5. added a commit that references this issue on Aug 26, 2026
  6. modusensus commented on Aug 26, 2026

    @modusensus
    Member

    已实现并随 v0.7.2 发布 ✅ 按你说的「只需对话开始时注入一次」来做:

    新配置 injectTimePrefix(opt-in,默认关,关闭时行为与之前完全一致):

    • 开启后,新对话开始时在注入文本头部注入一次当前日期时间,格式 [当前时间: 2026-08-26 周二 19:30](星期中文)
    • 按会话闩锁:同一会话只注入第一次,新会话再注入,不会每轮刷屏

    用法(DSH 配置里加):

    { "injectTimePrefix": true }

    770 测试全绿(新增 4 条回归测试)。如果之后 DSH 框架层补了全局时间注入,把这个开关关掉即可避免重复。感谢反馈!╰(°▽°)╯

  7. modusensus commented on Aug 26, 2026

    @modusensus
    Member

    v0.7.2 已发布,关闭本 issue

  8. moved this from 🎯 Ready to ✅ Done in dsh-mneme 任务看板on Aug 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions