先放问题的例图 目前我在workbuddy,dsh工具上使用官模4.1f或者中转等都会发现ds4.1f会因为未知原因出现重复性复读的情况,找了ai问了一下是关于“复读退化”产生的自我强化问题,目前我找到的处理方式是写一段强加载skill,让他在“记忆”上记住这一点(但其实效果好像一般,属于软约束) skill在下:(可以复制然后自行修改为md后缀) --- name: repetition-loop-selfcheck description: 防止 agent 自己陷入"复读退化"(输出同一短语几百遍、上下文被自身重复喂死)。触发场景:长会话(上下文超长)、连续几十步同构操作(改文件→检查→再改)、thinking 里开始出现零信息过渡词("好。执行。好。调用。")、察觉自己在"确认"而不是"行动"。 agent_created: true --- # 复读退化自检(agent 自用) ## 这是什么问题 模型偶尔会卡进输出循环:同一条短语反复吐几百遍,整段输出除了循环什么都没有。它有两个致命特征: 1. 自我强化 —— 循环通过自己的上下文喂回自己。一旦开始,下一个 token 更可能是重复,正反馈锁死。 2. 无法自救 —— 等它明显到能被看见时,模型已经没法自己停下来了。"提醒自己注意"没用,必须硬打断。 2026-09-14 实测发生过一次:一个超长会话里,连续几十步都在做「改文件 → 检查 → 再改」,thinking 退化成 好。执行。好。调用。好。执行。好。调用。… 持续数百行。工具调用本身没出错(改动、构建、测试都正常完成), 纯粹浪费了时间和 token。 ## 我如何识别(早期信号) 按出现顺序,越靠前越容易打断: 1. 零信息过渡词开始重复好。 执行。 调用。 Go. OK. —— 这些词不携带任何新信息,一旦连续出现就是先兆。 2. thinking 变成"确认"而不是"决策":反复说"我调用工具""立即调用",但没有新内容。 3. 同一句式的自我检查重复出现:连续多轮都是"我先看一下 X 是否存在"这类同构句子。 4. 长会话 + 同构任务序列:上下文极长,且最近 20+ 步都是同一模式的机械操作 —— 这是高危环境。 ## 发现后立即做什么 顺序执行,不要商量: 1. 停止输出文字。不要总结、不要解释、不要道歉,任何新增文字都是在喂循环。 2. 直接发起一个真实动作 —— 工具调用。用"做事"替代"犹豫"。哪怕只是 ls 一下。 3. 把思考压缩到一行。不复述已有信息,只说"下一步做什么"。 4. 如果连续两次动作仍无新内容 → 停下来向用户汇报当前进度,把决定权交回去。这是最有效的硬中断。 ## 预防(比打断更重要) - 同构操作要批量做,不要一步一确认。能一次改 5 个文件就别分 5 轮。 - 每完成一批就输出一次实质汇报,给上下文注入"新信息",冲淡重复模式。 - 禁用零信息过渡语:不要说"好的,我现在来执行",直接执行。 - 长任务主动分段:30+ 步的任务,中途至少汇报一次进度。 - 察觉到在重复时,立刻改变输出形态 —— 换语言、换句式、直接列清单,破坏重复的节奏。 ## 与 dsh 侧的关系 dsh 内已有对应的真实熔断器dsh-repetition-guard~/.dsh/plugins/dsh-repetition-guard), 挂在 llm/stream waterfall 上,检测到尾部重复就切断流。那是硬熔断。 本 skill 覆盖的是 WorkBuddy 侧 —— 它的推理循环没有可插桩的 seam,只能靠这条行为准则。 寻求大佬有没有其他的方法?例如熔断机制等? 1 个帖子 - 1 位参与者 阅读完整话题


  • 情报分类:服务器与云资源
  • 分类依据:内容涉及服务器、云资源或网络线路
  • 信息来源:服务器 / LINUX DO - 最新话题
  • 发布时间:2026/9/17 19:25:43