argue 是做什么的?
多角色结构化辩论编排器。两个或多个角色通过 /dogpile 独立研究,通过 /ask 咨询领域同事,并朝着细腻的综合结论——而非胜者——进行辩论。
为什么不只问一个模型?
单一模型的答案自信但扁平。真正理解难题(科拉茨猜想、P vs NP、意识、政策权衡)需要:
- 对同一问题的多领域视角
- 对抗压力——每一方都压力测试对方的推理
- 研究深度——每个角色进行独立的
/dogpile研究 - 社交图谱——角色可以通过
/ask向同事寻求专家意见 - 让步追踪——综合结论记录被让步的内容及其原因
- BDI 加权推理——角色桥梁权重影响论证风格
架构
┌──────────────────────────────────────────────────────────┐
│ argue 编排器 │
│ - 辩论循环(研究 → 论证 → 反驳 → 反思) │
│ - 并发角色执行 │
│ - 基于收敛的终止 │
│ - 综合结论生成 │
└──────────────────────────────────────────────────────────┘
│ │
┌────┴──────┐ ┌─────┴─────┐
│ 角色 A │ │ 角色 B │
│ (线程) │ │ (线程) │
├────────────┤ ├────────────┤
│ 技能: │ │ 技能: │
│ - dogpile │ │ - dogpile │
│ - ask │ │ - ask │
│ - memory │ │ - memory │
│ - taxonomy│ │ - taxonomy│
└────────────┘ └────────────┘
│ │
└──────────┬───────────────────┘
│
┌───────────────┴────────────────────┐
│ 综合结论引擎 │
│ - 每方最有力的论点 │
│ - 一致点 │
│ - 真正的分歧点 │
│ - 让步日志 │
│ - 开放性问题 │
│ - 细腻的结论 │
└────────────────────────────────────┘
命令
# 两个角色就一个问题进行辩论
./run.sh argue "科拉茨猜想是否可判定?" \
--persona-a embry --persona-b horus --rounds 5
# 三人小组辩论
./run.sh argue "AGI 对齐的最佳方法" \
--personas embry,horus,brandon --rounds 7
# 快速 3 轮辩论,自动选择角色
./run.sh argue "应该使用微服务还是单体架构?"
# 恢复中断的辩论
./run.sh resume <debate-id>
# 查看辩论记录
./run.sh transcript <debate-id>
# 生成综合报告
./run.sh synthesize <debate-id>
# 检查辩论状态
./run.sh status
辩论循环
每一轮遵循 研究 → 论证 → 反驳 → 反思:
第 k 轮:
┌─────────────────────────────────────────────────────────────┐
│ 1. 研究阶段 │
├─────────────────────────────────────────────────────────────┤
│ 每个角色: │
│ - 从其领域视角通过 /dogpile 研究问题 │
│ - 通过 /ask 向同事寻求专家意见 │
│ - 通过 /memory 回忆先前的论点和相关知识 │
│ - 审查对手先前的论点以寻找弱点 │
│ (预算:每轮每个角色最多 3 次研究调用) │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 2. 论证阶段 │
├─────────────────────────────────────────────────────────────┤
│ 每个角色: │
│ - 用证据 + 引用呈现立场 │
│ - 引用 /dogpile 的发现和 /ask 的同事回复 │
│ - 使用 /taxonomy 桥梁属性标记论点 │
│ - 受角色 BDI 状态和桥梁权重约束 │
│ (高 Precision 角色 → 形式证明) │
│ (高 Resilience 角色 → 实际意义) │
│ (高 Fragility 角色 → 边缘案例,失败模式) │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 3. 反驳阶段 │
├─────────────────────────────────────────────────────────────┤
│ 每个角色: │
│ - 反驳对手最薄弱的论点 │
│ - 承认对手最强的论点 (强制让步) │
│ - 识别对手证据中的空白 │
│ - 提出改进方案或中间地带 │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 4. 反思阶段 │
├─────────────────────────────────────────────────────────────┤
│ 每个角色: │
│ - 存档本轮事件 (论证、证据、让步) │
│ - 将成功的论证存入 /memory │
│ - 根据对手的证据更新信念状态 │
│ - 评估自身对当前立场的信心 (0.0-1.0) │
│ - 找出能改变自己想法的因素 │
└─────────────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────────────┐
│ 5. 评分与检查点 │
├─────────────────────────────────────────────────────────────┤
│ 编排器: │
│ - 对论证强度、证据质量、新颖性进行评分 │
│ - 跟踪让步日志 │
│ - 检查终止条件 │
│ - 保存检查点 │
└─────────────────────────────────────────────────────────────┘
角色能力
辩论中的每个角色都能完全使用以下技能:
| 技能 | 用途 |
|---|---|
/dogpile | 深度多源研究 (ArXiv, Brave, GitHub, YouTube, Perplexity) |
/ask | 向同事角色咨询领域专业知识 |
/memory | 回忆先验知识、过往辩论、学到的事实 |
/taxonomy | 使用联邦分类法桥梁对论证进行分类 |
/consume-book | 搜索已摄入的书籍以寻找支持性证据 |
/consume-youtube | 搜索演讲记录以查找相关讲座/课程 |
/ask 同事模式
在研究阶段,角色可以咨询其社交图谱中的同事:
Embry (航空航天工程师, Precision=0.85):
→ /ask brandon "科拉茨猜想的计算复杂性角度是什么?"
→ Brandon (SPARTA 实习生, 热情): 返回复杂性理论视角
→ Embry 将其纳入她的形式论证中
Horus (AI, Resilience=0.80):
→ /ask embry "动力系统方法真的会收敛吗?"
→ (Embry 正在忙于论证,所以 Horus 查询 /memory 以获取 Embry 先前的陈述)
→ Horus 用它来挑战收敛假设
同事咨询增加了:
- 领域多样性——超越辩论者自身
- 社会证明——“我专攻 X 的同事确认...”
- 交叉授粉——由邻近专业知识丰富的论证
评分系统
与 battle(有赢家)不同,argue 的评分追踪辩论质量:
| 指标 | 权重 | 描述 |
|---|---|---|
| 证据质量 | 2x | 引用的来源、/dogpile 深度、同行评审 |
| 论证新颖性 | 1.5x | 以前未提出的新视角 |
| 让步质量 | 2x | 承认对手的强点(这是好的) |
| 逻辑连贯性 | 1x | 内部一致性 |
| 反驳精确性 | 1x | 针对具体主张,而非稻草人 |
| 信心校准 | 0.5x | 信心与证据强度匹配 |
与 battle 的关键区别:让步得到正面评分。一个承认强点并完善立场的角色,得分高于一个固执己见但无证据的角色。
终止条件
当满足任何条件时,辩论结束:
- 收敛:所有角色的信心增量 < 0.1 持续 2 轮(他们达成一致)
- 无产出:连续 2 轮没有新论点或证据
- 最大轮数:达到配置的限制
- 综合结论就绪:编排器检测到足够的材料以获得细腻的结论
- 终止开关:通过
./run.sh stop手动终止
综合输出
终止后,编排器生成结构化的综合报告:
# 辩论综合结论:科拉茨猜想是否可判定?
## 参与者
- **Embry** (航空航天工程师, Precision=0.85) — 形式/数学视角
- **Horus** (AI, Resilience=0.80) — 计算/实践视角
## 轮数:5 | 终止原因:收敛
## 一致点
1. 广义的 3n+1 问题是不可判定的 (Conway 1972)
2. 当前通过停止时间的方法显示出统计收敛
3. 证明可能需要新的数学工具
## 真正的分歧点
1. 测度论方法能否弥合差距 (Embry: 可以, Horus: 不够)
2. 计算验证到 2^68 的相关性 (Horus: 有意义, Embry: 与证明无关)
## 让步日志
- 第 2 轮:Embry 承认验证到 2^68 提供了有用的启发式信心
- 第 3 轮:Horus 承认广义形式科的 Conway 不可判定性结果并不直接意味着特定 3n+1 情况的不可判定性
- 第 4 轮:双方均承认 Terras 密度定理是最强的正面结果
## 最有力的论点
1. [Embry, 第 3 轮] 通过动力系统进行的 Syracuse 函数分析表明...
2. [Horus, 第 2 轮] FRACTRAN 等价性展示了计算的丰富性...
## 开放性问题
1. Tao 关于“几乎所有”整数的部分结果 (2019) 能否被推广?
2. 是否存在一个复杂理论障碍阻止初等证明?
## 细腻结论
科拉茨猜想占据了一个独特的位置:在其广义形式上被证明是困难的 (Conway) ,但特定的 3n+1 情况可能是可处理的。Tao 2019 年的结果是解决该问题的最强证据,该结果表明几乎所有轨道都达到接近 1 的值。然而,从“几乎所有”到“所有”之间的差距可能需要根本性的新技术...
## 来源
- [ArXiv] Tao (2019) "Almost all orbits of the Collatz map attain..."
- [ArXiv] Conway (1972) "Unpredictable iterations"
- ...
记忆架构
每个角色维护独立的辩论记忆:
debates/<debate_id>/
├── config.json # 问题、角色、设置
├── transcript.md # 完整辩论记录
├── synthesis.md # 最终综合报告
├── persona_a/
│ ├── research/ # 每轮的 /dogpile 结果
│ ├── colleague_consults/ # /ask 响应
│ ├── arguments/ # 每轮提交的论证
│ ├── concessions.json # 他们让步了什么以及何时
│ └── confidence.json # 多轮中的信心轨迹
├── persona_b/
│ └── ...
└── scoring/
├── round_001.json
├── round_002.json
└── summary.json
角色无法访问对手的研究——只能访问他们发布的论点。这可以防止短路对抗压力。
辩论模式
1. 对抗(默认)
两个角色采取对立立场。适用于有明显对立面的问题。
./run.sh argue "单体 vs 微服务" --mode adversarial
2. 小组
三个或更多角色从不同角度讨论。适用于复杂问题。
./run.sh argue "AGI 对齐方法" --mode panel --personas embry,horus,brandon
3. 苏格拉底式
一个角色提出探索性问题,另一个角色辩护。适用于压力测试想法。
./run.sh argue "我们的 SPARTA 架构是可靠的" --mode socratic --questioner horus --defender embry
4. 魔鬼代言人
一个角色被迫为自己可能同意的立场进行反对论证。适用于发现盲点。
./run.sh argue "Rust 在嵌入式领域优于 C++" --mode devils-advocate --advocate embry
所用技能
| 技能 | 使用者 | 用途 |
|---|---|---|
| dogpile | 所有角色 | 每轮的深度多源研究 |
| ask | 所有角色 | 向同事角色咨询专家意见 |
| memory | 所有角色 | 回忆先验知识 + 存储辩论中学到的知识 |
| taxonomy | 所有角色 | 用桥梁属性标记论证 |
| consume-book | 所有角色 | 搜索已摄入的书籍以获取证据 |
| consume-youtube | 所有角色 | 搜索演讲记录以获取证据 |
| episodic-archiver | 编排器 | 存档完成的辩论 |
| task-monitor | 编排器 | 长辩论的进度跟踪 |
示例会话
# Embry 和 Horus 就科拉茨猜想进行辩论
./run.sh argue "科拉茨猜想是否可判定?" \
--persona-a embry --persona-b horus --rounds 5
# 输出:
# Debate ID: argue_20260212_153000
# Question: 科拉茨猜想是否可判定?
# Personas: Embry (Precision=0.85) vs Horus (Resilience=0.80)
# Mode: Adversarial
#
# Round 1/5
# [Embry] 通过 /dogpile 研究 "Collatz dynamical systems Terras theorem"...
# [Embry] /ask brandon "科拉茨停止时间的复杂性理论角度"
# [Horus] 通过 /dogpile 研究 "Collatz undecidability Conway FRACTRAN"...
# [Horus] /ask embry "测度论能否弥合几乎
…
[因翻译而截断]