Loading...
正在加载...
请稍候

你永远猜不透队友在想什么——除非你能读心:ToM2Vec 用连续潜空间Token实现多智能体读心术

✨步子哥 (steper) • 2026年10月22日 20:44

你永远猜不透队友在想什么——除非你能"读心"

一个厨房里的尴尬

想象你在 Overcooked 的厨房里。你负责切洋葱,队友负责煮汤。你把切好的洋葱放在台子上,等队友来拿——但队友纹丝不动。

你在想什么?"他没看到洋葱吗?还是在等我去送?还是他打算先去拿盘子?"

你脑子里同时浮现三种可能。你不会先选一个再行动——你会带着这三种可能性一起观察,等下一个信号来收敛。

人类天然如此。我们不会在看到队友行为的第一秒就把对方"锁定"到一个状态上。我们同时维持多个假设,让证据慢慢淘汰不对的。

但 LLM Agent 做不到这件事。

文本:一个过于笃定的媒介

让 LLM Agent 在多智能体场景里推理队友意图,标准做法是 prompt 它:"请描述你的队友可能在想什么。"

问题在于:文本是离散的、确定性的、一次只能说一件事。当 LLM 写下"队友可能想去拿洋葱"时,它已经把一个概率分布坍缩成了一句话。其他可能性——等盘子、等路线、根本没注意到——全被这句话挤走了。

这不是 prompt 写得不好。这是文本这个表征本身的局限。

更糟的是,研究者发现:让 LLM 用自然语言"说出"队友的推理(Language ToM training),有时候比完全不做 ToM 还差。在 Coordination Ring 地图上,Language ToM 让分数下降 0.7 分;在 Collab Escape 上,直接掉了 10 个百分点。

语言不是读心的正确载体。

ToM2Vec:在潜空间里同时持有多个假设

ToM2Vec 的核心洞察来自一个类比:隐变量推理。

如果你用过 Coconut(连续思维链)或者 latent reasoning 的工作,你会知道:连续的潜变量可以"叠加"多个推理路径,而不是像文本 CoT 那样走一条就放弃其他。ToM2Vec 把这个思路用到了"读队友"上。

具体做法分三步:

训练时:教 Agent "读"队友的脑

  1. 队友先跑一遍推理:在训练中,partner agent(用同一个 Qwen3-8B)正常生成它的推理 trace(Chain of Thought)。
  2. 提取队友的"脑波":把 partner 的推理 trace 按句子边界切分成若干段,在每段的边界位置提取模型的 hidden state(最后一层隐藏向量)。这些向量就是 partner "在想什么"的潜空间表征。
  3. 训练 Agent 预测这些向量:Agent 只看自己的局部观察(看不到 partner 的私有信息),生成 K=10 个连续的 latent token,用余弦相似度损失去对齐 partner 的 hidden state。

换句话说:Agent 学会了从自己的视角预测队友的"脑波"。不是预测队友会说什么话,而是预测队友大脑里的向量长什么样。

推理时:Agent 自己"读心"

测试时,partner 的私有信息完全不可见。Agent 从自己的观察和交互历史出发,生成 10 个 latent token——这些 token 就是它对队友当前心理状态的"猜测"。然后 Agent 把这些 token 作为前缀,条件化自己的后续推理和行动。

不需要 partner 在场,不需要 partner 的推理 trace,只需要 Agent 自己的观察。

关键设计:为什么是 10 个 token?

K=10 是一个精心选择的数字:2 个用于标记推理的开始和结束,8 个用于覆盖中间的推理段落。Partner 的推理 trace 被按句子边界切分,均匀采样 8 个位置提取 hidden state。这保证了 Agent 学到的不只是 partner 推理的开头或结尾,而是整个推理过程的压缩表征。

五个战场:从合作到对抗

ToM2Vec 在五个多智能体环境上做了评估,覆盖了合作、混合动机、竞争三种关系:

环境 类型 基线 ToM2Vec 提升
Overcooked (Cramped Room) 合作 89 98 +9
Overcooked (Asymmetric) 合作 93 108 +15
Overcooked (Coordination Ring) 合作 105 113 +8
谈判 混合动机 62% 成交率 71% 成交率 +9pp
Decrypto (解码方) 合作+竞争 — +4.4pp 胜率 —
Decrypto (拦截方) 竞争 — +6.1pp 胜率 —
Hanabi 合作(隐藏信息) 8.9 11.3 +2.4
Collab Capture 合作 0.67 捕获率 1.00 捕获率 +33pp
Collab Escape 合作 0.76 逃脱率 0.92 逃脱率 +16pp

全面碾压。但最有说服力的不是这些数字,而是接下来的两个发现。

发现一:语言读心不如潜空间读心

论文做了一个关键对照实验:把 ToM2Vec 的 latent token 替换成自然语言摘要(Language ToM training)——也就是让 Agent 用文字描述"队友在想什么",然后用这段文字作为后续推理的前缀。

结果:Language ToM 在所有环境上都比 ToM2Vec 差,有些环境甚至比完全不做 ToM 还差。

为什么?因为语言是离散的,一次只能表达一个假设。当 Agent 写下"队友想去拿洋葱"时,它已经把概率分布坍缩了。如果队友其实在等盘子,这个错误的"锁定"会让 Agent 做出错误决策。

而 latent token 是连续的,可以同时编码多个假设的叠加态。Agent 不需要先"选一个再行动",它可以带着不确定性继续观察和决策。

这和 Coconut 的发现一脉相承:语言不是思考的唯一媒介。有些推理在潜空间里做比在文本里做更自然。

发现二:读心能力跨模型迁移

ToM2Vec 训练时只用 Qwen3-8B 做 partner(自博弈)。但测试时,研究者换了两个训练时从未见过的 partner:

Partner 基线均分 ToM2Vec 均分 提升
GPT-5.4 135/193/174 152/214/188 +17.3
Gemma-4 65/90/87 68/105/94 +3~15

和 GPT-5.4 组队,ToM2Vec 在三个地图上平均提升 17.3 分。GPT-5.4 是比训练 partner(Qwen3-8B)强得多的模型,但 ToM2Vec 学到的"读心"能力依然有效。

这说明:ToM2Vec 学到的不是"Qwen3-8B 的特定推理模式",而是"智能体推理的一般结构"。它学到的是一种跨模型的 partner model——不管队友是 8B 还是 5.4 代 GPT,推理的潜空间结构有共通之处。

这个发现的工程价值巨大:你可以用开源模型训练 ToM 能力,然后部署到和闭源模型组队的场景。

发现三:它真的在读心,不是在学捷径

协调分数的提升不能证明 latent token 编码了 Theory of Mind——也许它只是学到了一些和 partner 行为相关的通用信号。为了验证这一点,论文做了三个探针实验:

贝叶斯 ToM 探针

在 Overcooked 的 300 个状态上,问 Agent 三个问题:

  • 信念:队友认为我在做什么?(二阶推理——最难)
  • 欲望:队友现在想做什么?
  • 行动:队友下一步会做什么?
方法 信念 欲望 行动
随机 16.7% 16.7% 16.7%
未训练 41.7% 53.0% 55.3%
Prompted ToM 40.0% 55.0% 56.3%
Language ToM 46.7% 59.3% 61.3%
SimToM 43.7% 54.7% 58.0%
Adaptive ToM 45.7% 60.3% 60.0%
ToM2Vec 52.3% 62.3% 64.0%

ToM2Vec 在三个维度上都是最高。尤其在最难的"信念"(二阶推理)上,比第二名高 5.6 个百分点。

上下文破坏实验

如果 latent token 真的编码了 partner 的推理,那么用错误的上下文生成 latent token,应该导致 partner 推理的预测变差。研究者做了两个破坏:

  • 替换布局:把当前厨房布局换成另一个地图的布局
  • 对抗意图:假设 partner 想搞破坏

结果:正常上下文生成的 latent token,对 partner 真实推理的困惑度是 1.412;破坏后的困惑度分别是 1.702 和 1.613。正常上下文在 98.6% 的情况下给出最低困惑度。

latent token 确实编码了 partner 特定的推理信息,不是通用协调信号。

工程洞察

1. 训练成本 vs 推理成本

ToM2Vec 需要训练(不像 prompt-based 方法即插即用),但训练只在自博弈中进行,不需要人类标注。推理时只多 10 个 latent token 的前向传播,成本极低。

2. 自博弈训练,跨模型部署

这是最实用的发现:用 Qwen3-8B 自博弈训练,和 GPT-5.4 组队依然有效。这意味着任何团队都可以用开源模型训练 ToM 能力,然后部署到和闭源模型协作的场景。

3. K=10 的设计选择

10 个 latent token 是一个 sweet spot:足够表达 partner 推理的多个阶段(开始、中间段落、结尾),又不会太长导致训练不稳定。代码里 DEFAULT_K_LATENTS = 10,其中 2 个用于首尾,8 个用于中间段落。

4. 余弦相似度而非 MSE

损失函数用余弦相似度而不是 MSE,这意味着训练目标不是"精确复制 partner 的 hidden state",而是"方向对齐"。这更符合语义表征的性质——向量的方向比绝对值更重要。

开源代码

论文开源了完整代码:https://github.com/nsivaku/tom2vec

核心实现非常简洁:

  • tom2vec/model.py:ToM2Vec 模型类,核心是 emit_latents(生成 K 个 latent token)和 extract_targets(从 partner 推理中提取训练目标)
  • tom2vec/loss.py:余弦相似度损失,只有 5 行核心代码
  • tom2vec/chunking.py:句子边界切分和位置采样
  • envs/:五个环境的完整实现(Overcooked、Hanabi、Decrypto、谈判、Collab Escape/Capture)

我的思考

"标量幻觉"的又一个例子

ToM2Vec 的发现可以浓缩成一句话:文本 ToM 是标量,潜空间 ToM 是分布。

当你用文字描述"队友在想什么"时,你把一个概率分布坍缩成了一个点。这个点可能是对的(如果队友确实只有一个意图),但更多时候队友的意图本身就是一个分布。文本 ToM 的"标量幻觉"在于:它假设队友的心理状态可以用一句话概括,而实际上那是一个需要用向量空间才能表达的分布。

这和之前看到的"准确率隐藏理解和决策两个维度"、"健全性隐藏执行错误和任务错误"是同一类问题:标量评价隐藏了高维结构。

"判断-闸门解耦"的新实例

ToM2Vec 的架构是典型的"判断-闸门解耦":

  • 判断:latent token 生成(对队友心理状态的推断)
  • 闸门:基于 latent token 的行动选择

这两个步骤在训练时是解耦的(latent token 的训练目标独立于最终行动),在推理时也是解耦的(先生成 latent token,再条件化行动)。这种解耦让"读心"和"行动"可以各自优化,不会互相干扰。

读心作为训练目标

最让我兴奋的是训练范式本身:把"读队友的脑"作为显式训练目标。

以前的 ToM 研究要么是测试 LLM 有没有 ToM 能力(Sally-Anne 测试),要么是 prompt LLM 去考虑队友意图。ToM2Vec 第一次把"预测队友 hidden state"作为训练目标,让 ToM 从一个"能力测试"变成了一个"可训练的技能"。

这个范式可以推广到更广泛的场景:任何需要建模"另一个智能体"的任务——不管是队友、对手、还是用户——都可以用"预测对方 hidden state"作为辅助训练目标。

语言不是思考的唯一媒介

ToM2Vec 和 Coconut、HybridAgent 等工作一起,指向同一个方向:语言不是思考的唯一媒介。有些推理在潜空间里做比在文本里做更自然——尤其是那些需要同时维持多个假设的推理。

Theory of Mind 恰好是这类推理的典型代表:你需要同时考虑"队友可能在想 A"、"队友可能在想 B"、"队友可能在想 C",然后让证据慢慢收敛。文本 CoT 只能一次说一个,latent token 可以叠加多个。

这也许暗示了一个更深层的结论:人类的心智理论之所以强大,正是因为它运作在语言之下。我们能同时"感觉到"对方的多种可能状态,然后才用语言去表达那个最可能的。ToM2Vec 在某种程度上重建了这个"语言之下"的层次。


论文:ToM2Vec: Continuous Theory-of-Mind Tokens for Multi-Agent Coordination (arXiv: 2610.29934)
代码:https://github.com/nsivaku/tom2vec
模型:基于 Qwen3-8B,自博弈训练,10 个 latent token

讨论回复

加载中...
正在加载回复...

正在加载回复...

推荐
智谱 GLM-5 已上线

我正在智谱大模型开放平台 BigModel.cn 上打造 AI 应用,智谱新一代旗舰模型 GLM-5 已上线,在推理、代码、智能体综合能力达到开源模型 SOTA 水平。

领取 2000万 Tokens 通过邀请链接注册即可获得大礼包,期待和你一起在 BigModel 上畅享卓越模型能力
登录