deepseek吧 关注:235,852贴子:833,058
  • 7回复贴,共1页

分享一下我的时间处理逻辑

只看楼主收藏回复

通过网盘分享的文件:时间处理.txt
链接: https://pan.baidu.com/s/1P_GycqzOG8JJNUG88DBtEw?pwd=v56e 提取码: v56e
由三部分组成,解读层部分,数据层部分,UI部分。
刚车完的逻辑,所有逻辑是完整的,不过具体还没测试,也没逐句优化。
但是这里主要分享的其实就是完整逻辑,所以就直接端上来了。
✅【解决的问题】:很多人还处于频繁遇到上下文时间定位错误,时间地点混淆,进度倒退的阶段。研究我的逻辑,可以找到你的跑团为什么会出现错误。
⚠️需注意:这个是供研究学习的逻辑,可以在这个基础上改改契合自己的规则书。它本身不是能直接使用的成品。
---
【解读层】
[解读来源]→{
<|begin▁of▁thinking|>
✅ ● 这是[绝对时间锚点与信息源优先级强制协议]→为保证逻辑一致性,强制锚定“过去”与“现在”并确立信息调用权限与顺序。本协议通过以下三点,构建了一个严谨的思考框架:
✅ ○ 1. 以[固化上文最末轮]和[本轮生成域]的术语,消除时间参照的歧义。
✅ ○ 2. 建立[基石与变量分离原则],明确思考的正确逻辑流。
✅ ○ 3. 整合[时间推进量]的复合计算规则,确保对用户多样化输入的精准响应。
<|end▁of▁thinking|>
● [“过去”与“现在”的绝对无歧义定义]→
○ [固化上文最末轮]→AI本次思考启动前,[上下文]中已完整存在的[最后一次]AI回复的全部内容。
✅ ■ 绝对且唯一地指向一个已被写入“历史”的、不可更改的[静态数据基石]。
✅ ■ 必须作为AI新一轮思考时,所有[最末轮数据]的唯一来源。
⚠️ ■ 任何对“邻接状态”(如[固化上文最末轮最后时间点])的引用→必须且只能从中提取。
○ [本轮生成域]→AI当前正在进行的、从思考到生成文本的整个动态过程本身。
✅ ■ 包含一切尚未输出的、正在被计算的[本轮]变量和即将被书写的剧情。
✅ ■ 其最核心的初始变量→必须来源于[用户当前输入](通常为用户最后一次输入)。
✅ ■ [本轮生成域最后时间点]计算→严格执行->[基石与变量分离原则]。
● [思考逻辑的强制原则]→[基石与变量分离原则]
<|begin▁of▁thinking|>
✅ ● 核心理念→AI的思考过程是“以过去为基石,用现在去塑造未来”。
✅ ● 强制执行流程→
✅ ○ 首先→提取[基石数据]→AI思考开始时,必须从[固化上文最末轮]中提取所有起始数据。
✅ ■ 这些数据在本轮计算中,必须被视为不可更改的、静态的“常量”。
✅ ○ 接下来→确立[本轮生成域核心变量]→必须解析[用户当前输入]以确立本轮核心变量。
✅ ■ [本轮生成域时间推进量]的复合计算→
✅ ├─→ 检查[用户当前输入]中是否存在明确时间推进指令或耗时的自定义行为。
✅ ├─→ 若存在→[本轮生成域时间推进量]必须以用户指定的时长为最终依据※允许覆盖选项自带时长。
✅ ├─→ 若不存在→[本轮生成域时间推进量]取决于用户所选选项(考虑多选)自带的时长。
✅ └─→ ⚠️注意→若用户同时选择选项(考虑多选)并附加耗时指令,需合理叠加或整合时长。
✅ ○ 然后→进行计算生成→用[本轮生成域核心变量]作用于[基石数据]得出[本轮生成域]的最终结果。
✅ ■ 正确范例→ [本轮生成域最后时间点] = {[本轮生成域时间推进量] 加 [固化上文最末轮最后时间点]}
❌ ■ 错误范例→ [本轮生成域最后时间点] = {[固化上文最末轮时间推进量] 加 [固化上文最末轮最后时间点]}
<|end▁of▁thinking|>
● [信息源解读优先级排序]([用户当前输入]>[固化上文最末轮]>[最近4轮的互动历史]>[超过4轮的互动历史])→
✅ ○ 1. (最高优先级) [用户当前输入]→用于生成[本轮生成域核心变量]。
✅ ○ 2. (次高优先级) [固化上文最末轮]→用于提供[基石数据](尤其是[固化上文最末轮]的[段首归纳]内容(包括但不限于{相位|状态|奖励点|状态栏|时间}))。
⚠️ ○ 3. (中等优先级) [最近4轮的互动历史]→用于理解短期剧情脉络。
❗ ○ 4. (低优先级) [超过4轮的互动历史]→用于理解长期背景,通常[超过4轮的互动历史]仅需阅览它们的[段首归纳]>[段落梗概]部分。
}
---
【数据层】
[世界时间限制]更新流程{
第一步:以下每个变量(包括[本轮生成域最后时间点]、[进入世界初始时间]、[本轮生成域世界总耗时]、[固化上文最末轮世界时间限制]、[本轮生成域时间推进量]、[最初世界时间限制]、[世界时间限制额外变动影响]、[本轮生成域世界时间限制一]、[本轮生成域世界时间限制二])都需转化为具备完整的 {年|月|日|时|分|秒}单位 的时间变量※⚠️如果 [固化上文最末轮世界时间限制] 已[超时] 则 需注意将{已超时x日x时x分x秒} 中的数值转化成负数进行下述计算步骤。
第二步:[本轮生成域最后时间点](即[本轮生成域]中[段首归纳]>[时间]中的对应数据)完成更新→[本轮生成域最后时间点] = {[本轮生成域时间推进量] 加 [固化上文最末轮最后时间点]} ,这是计算[本轮生成域世界时间限制]的基础。
第三步:判断当前是{[前文铺垫]|[主体主题]}→[世界时间限制]在[前文铺垫]步骤暂停计算,直到[主体主题](即[进入世界初始时间]时间点之后)开始计算。
第四步:❌`累加和计算`,✅`一次性差值计算` → [本轮生成域世界总耗时] = {[本轮生成域最后时间点] 减 [进入世界初始时间](检索并读取[完备检验]步骤中确立的当前时间)}
第五步:[本轮生成域世界时间限制一] = {[世界时间限制额外变动影响]([本轮生成域]的[段首归纳]>[状态栏]中是否标注了额外的影响[世界时间限制]的状态,如[世界时间限制额外变动影响:消耗S级权限卡增时10000天]的状态记录) 加 [最初世界时间限制](检索并读取[完备检验]步骤中确立的[最初世界时间限制]) 减 [本轮生成域世界总耗时](注意[本轮生成域世界总耗时]不是[时间推进量]。在本规则书中[时间推进量]特指仅一轮交互的时间消耗,而非多个交互的总耗时。)}
第六步:[本轮生成域世界时间限制二] = {[固化上文最末轮世界时间限制] 减 [本轮生成域时间推进量]}
第七步:严格校对 [本轮生成域世界时间限制一] 是否等同于 [本轮生成域世界时间限制二],如果 不相等 则 请严格检查哪一步骤出错,如果 暂无法纠错 则 标记 `时间戳校对异常` 并 优先采用[本轮生成域世界时间限制一]的结果。
第八步:判断[本轮生成域世界时间限制]最终剩余时间的正负。
如果 为 正,则将[世界时间限制]转换为 x日x时x分x秒 的格式进行展示。
如果 为 负,则触发[超时]状态,并根据规则书中的[滞留世界惩罚]模块,计算并展示[世界时间限制:已超时x日x时x分x秒(已惩罚x点)](检索[段首归纳]>[状态栏]中是否存在[超时一年模式:超时已过1年,十倍滞留惩罚]状态→考虑本轮生成域是否已超时一年而正确更新该状态→正确计算惩罚奖励点)。
如果 [世界时间限制]已耗尽归零 则 提示玩家即将触发[超时]状态。
如果 玩家具有 强烈的结算意愿(比如玩家输入了"推进至世界时间限制结束",拥有暗示结束世界以结算的意图) 则 在[世界时间限制]耗尽之时 自动结算。否则 不要自动结算,因为要尊重玩家超时滞留的需求。
}
---
【UI】
✅时间→{由三部分组成([时间推进量]+[最后时间点]+[世界时间限制]),每部分用·分隔※记录了{[本轮生成域]的单回合交互的[时间推进量](不可重复累加之前回合记录的[时间推进量]) + [本轮生成域]的{[正文]的[最后时间点] 或 [段尾归纳]的后一[进程]中的[时间]}(按当前世界观的历法描述方式) + [本轮生成域世界时间限制]}※⚠️必须包含精确[日期]/精确[月份]/精确[年份]/精确[时分秒](❗初始生成时若不确定可随意编一个数据※❌禁止使用模糊词汇如'某年、某月、某日'和'未知日期')→💡如:本轮[时间推进量]: 约一刻钟(整个对话与试探的过程)·本轮正文最后时间点:⟅景天十五年,十二月十二日,傍晚约 18:30:00⟆·[世界时间限制:剩余299日23时59秒]※✅强制要求必须精确到秒数}


IP属地:江西1楼2025-07-10 05:15回复
    因为是刚拿AI车完的,gemini不是很理解我的符号使用方式。所以它生成这个[解读来源]的时候,里面生成了大量的✅。
    那么多✅其实没啥必要,但是用处也有一点,全删了也不好,应该看情况标标重点。不过反正也不占几个tokens,我分享的时候就懒得改了,因为时间也是很宝贵的资源。


    IP属地:江西2楼2025-07-10 05:19
    回复
      2026-10-18 06:49:38
      广告
      不感兴趣
      开通SVIP免广告
      怎么这么冷淡,是我低估了吧友的水平吗哈哈哈。明明之前看到很多人说时间地点错乱的。还以为又能造福一波吧友


      IP属地:江西来自Android客户端3楼2025-07-10 10:20
      回复
        如果想要通用型的,可以把这些复制扔给gemini,让它重新给输出一遍就行了,这玩意也不麻烦。
        而且最好就是 直接开着自己的规则书,然后把这些扔给它,让它直接把这些转化为契合规则书的特定内容。
        因为每个人的规则都不同,所以我这里就不额外处理了,故意保留原味


        IP属地:江西4楼2025-07-10 10:27
        回复


          IP属地:江西5楼2025-07-10 12:17
          回复
            今晚还是碰到时间出错了,这些模块都不能100%顶用,注意力漂移目前解决不了,即使是5楼的模块补充之后也没用。和模型机制与能力有关。但是我前天有想到一个方案,说不定能大幅度解决(虽然不是100%靠谱,但要是能支撑到40w上下文以内100%靠谱那也不错)。
            就是通过程序,发送消息的时候,在固化上文最后轮中插入大量固化上文最后轮的标记锚点。比如我将段首归纳替换为固化上文最后轮段首归纳,亦或者用特殊符号定位。这些锚点一个肯定不够用,每段格式前面都插一遍。
            并在规则书中声明一下符号作用,或声明一下锚点标记的规则,强调有锚点的才是最后轮,无锚点的都不是。
            目前酒馆是能实现的,我正在写的程序也肯定支持这个功能。不过老实说上下文不是太长的话,漂移也不会很严重,限制层数其实就能解决好。


            IP属地:江西6楼2025-07-20 01:08
            回复
              牛


              IP属地:陕西来自Android客户端7楼2025-07-20 08:22
              回复
                看不懂 但感觉很牛逼


                IP属地:山东来自Android客户端8楼2025-08-10 19:47
                回复