复读机预警:Codex 一口气问了我 200 个问题怎么办?
在 AI 辅助设计的流程中,我们追求的是“逻辑闭环”,但有时候 AI 的“敬业”程度会让你感到恐怖。最近在 skills 社区有一个流传甚广的“惨案”(Issue #44):一位开发者在使用基于 Codex 模型的技能进行架构对齐时,AI 似乎陷入了某种逻辑递归,一口气疯狂抛出了 200 个问题。
这种“提问爆炸”不仅让开发者瞬间崩溃,更暴露出在复杂决策树扫描时,如果缺乏反馈终止逻辑和上下文权重控制,AI 助手会从“专家”变成“复读机”。
💡 报错现象总结:在使用
grill-me或类似的架构扫描技能时,AI 无法识别已解决的逻辑分支,导致针对同一细节反复追问,或是在决策树末梢陷入无限发散。现象表现为对话框被海量问号淹没(Issue #44),系统 Load 飙升,甚至因单次回复 Token 溢出导致进程挂起。
决策树的“死循环”:为什么 AI 会停不下来?
从底层架构来看,Agent Skills 的提问逻辑是基于对当前上下文的“不确定性”评估。当 AI 判定你的方案中存在未定义的模糊地带时,它会触发提问机制。
问题在于,像 Codex 这样的模型在处理长上下文时,如果**惩罚项(Frequency Penalty)**配置不当,或者技能本身的指令集没有设定“最大问题阈值”,AI 就会因为试图捕捉每一个极小概率的边缘 case 而陷入递归。
# Issue #44 现场还原:
AI: 你打算如何处理用户并发?
User: 用 Redis 分布式锁。
AI: 那 Redis 宕机了怎么办?
User: 用主从架构。
AI: 那主从切换时的毫秒级数据丢失怎么办?
... (此处省略 197 个嵌套问题)
AI: 那如果机柜起火了怎么办?
这种“无限抬杠”模式在工程实践中毫无意义,它把架构设计变成了哲学思辨。
深度剖析:决策树闭环逻辑的失效根源
在 skills 的源码逻辑中,提问深度是由 decision-tree-resolver 模块控制的。
| 评估指标 | 正常逻辑 (Closed Loop) | 故障状态 (Infinite Loop) |
|---|---|---|
| 逻辑粒度 | 识别到核心路径已覆盖,自动转入总结 | 试图穷举所有原子级的物理可能性 |
| 反馈机制 | 用户回答后,该分支标记为 resolved |
AI 无法正确解析用户的简短回答,认为仍是 pending |
| 终止阈值 | 单轮提问不超过 5-8 个核心问题 | 无限制,直接冲向 Token 极限 |
问题的核心在于 skills 早期版本对“不确定性”的定义过于严苛。当 AI 无法在本地资源库(Bundled Resources)中找到对应的工程模版时,它会默认用户也没有想好,从而开启“夺命连环问”。
如何手动掐断 AI 的“提问狂热”?
如果你不幸遇到了这种 200 问的极端情况,除了直接 Ctrl + C,你还可以通过以下硬核手段进行干预:
- 注入“强制终结”指令:在对话中明确输入
Stop interviewing. Summarize current consensus and flag remaining risks.。这能强制 AI 从提问模式切换到总结模式。 - 修改本地
grill-me配置:找到技能对应的prompt.md,在指令末尾手动添加Constraint: Never ask more than 5 questions per turn. Focus only on high-level architectural blockers.。 - 上下文重置(Nuclear Option):如果对话已经彻底混乱,建议提取已有的结论,新开一个会话。AI 往往会因为历史记录中的“提问模式”产生惯性。
这种手动干预虽然能解决燃眉之急,但无法根治 AI 在逻辑扫描时的“偏执”。
给 AI 装上“限速器”
真正的工程化工具应该懂得分寸。架构师的时间是宝贵的,AI 应该在关键决策上提供帮助,而不是在细枝末节上浪费精力。
为了解决用户提出的的递归难题,我已经在 GitCode 发布了 《Agent Skills:防 AI 抽风与决策树权重优化补丁》。这份配置引入了“动态问题权重”机制,能自动过滤那些低概率的干扰性提问,并将最大提问数限制在合理的工程范围内。访问 GitCode,领取这份防抽风参数配置单,让你的 AI 助手恢复理性。
[查看 GitCode 提供的“防 AI 抽风”参数配置单,让架构评审回归高效。]
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0150- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0111