三种信号,三种“时间”

先看一个具体的对照。画面是连续的像素流,一般每秒几十帧;游戏 Telemetry(游戏遥测,即从游戏内部或回放中解析出的坐标、血量、技能状态等结构化数据)是按 tick 更新的表格,频率和帧率并不一致;队伍语音则是不定时出现的音频,一句话可能持续一两秒,还夹着噪声与抢话。三种信号看似同时在描述“这一刻”,实际上采样节奏、延迟和语义粒度都不同。

这也解释了为什么不能把它们简单串接进一个大模型的输入里。画面告诉你视野与空间关系,Telemetry 给出精确状态,语音里藏着意图与沟通,缺了其中任何一种,判断都会偏;而把它们不加区分地塞进同一个序列,模型又很难分清哪一部分该相信。这个思路在 多模态电竞模型 一文里有整体介绍,这里专门讲 PA真人在输入侧的工程细节。

视觉编码音频编码Telemetry 表格事件序列对齐融合融合统一表示
图:四类输入分别编码后在统一时间轴上对齐,再融合成统一表示,供分析、复盘与直播等下游任务使用。

各模态怎样编码

视觉方面,通用视频大模型对游戏画面并不占优。公开基准 EgoEsportsQA 里,当时最好的 Video-LLM 也只有 71.58% 的准确率,模型在基础感知上强于深度战术推理。原因不难想象:高速、高信息密度的画面里,血条、小地图、击杀提示都很小,通用编码器容易错过。所以更稳的做法,是先用专用检测器把关键元素读出来,例如公开研究里有人用 YOLO 一类检测器在 Dota 2 小地图上识别英雄图标、恢复可见性信息,再把结构化结果交给上层。

音频要分两条线:一条是转写文字,需要游戏术语与选手名的自定义词典;另一条是声学特征,如音量、语速、停顿。前者提供“说了什么”,后者提供“语气有多急”。Telemetry 与事件序列则更接近表格数据,可以按时间窗口整理成向量,或直接以事件“词”的形式喂给序列模型;类似 player2vec 把游戏事件当作词、用 Transformer 学习表示的思路,正好适用。PA真人平台把这些不同来源的输出统一成带时间戳的事件与向量,再进入融合层。

时间对齐:难点往往在这里

对齐的核心是给每一种输入打上同一个时钟。理想情况下,回放文件本身带有统一的时间轴;实际中,直播画面带编码与传输延迟,语音走另一条链路,数据接口又有自己的抖动。假设画面比 Telemetry 晚 1.2 秒到达,模型在“同一秒”里看到的画面,其实对应上一秒的数据,如果不校正,就会把先手击杀读成“反应太慢”之类的错误结论。

常见的处理方式有三种:第一,以某个可信来源为基准时钟,其他模态做偏移校正;第二,用共同事件作锚点,比如一次击杀同时出现在画面提示与数据里,用它反推偏移;第三,在窗口上做容错,而不是逐帧精确对齐,让模型在前后几百毫秒内自行匹配。对复盘来说,这些偏差还能事后校准;对直播来说,只能在延迟预算内尽量做好。

融合:早融合、晚融合与折中

方式 做法 优点 风险
早融合 各模态特征先拼接,再一起进入模型 能学到跨模态的细微关联对缺失与错位敏感,训练成本高
晚融合各模态独立给结论,再综合判断 容错好,可解释性强,便于替换某个模块 可能漏掉需要联合才能看出的模式
折中(中间融合) 先分别编码,在中层通过注意力交互 兼顾关联与模块化设计与调参复杂

实践里没有唯一答案。PA真人的实践是,实时链路偏向晚融合与折中方案,因为它们对缺失更宽容;事后复盘可以用更重的联合模型换取细节。相关研究也给了旁证:VALORANT 回合结果预测的初步结果显示,加入战术事件标签后的效果好于只用原始小地图,说明先抽取结构化特征再融合,通常比让模型直接吞画面更有效。

缺失模态与延迟:把“坏天气”当作常态

多模态系统最常见的意外,是其中一路信号不在。观战画面可能被切到别的视角,队伍语音在很多比赛里根本拿不到,数据接口也可能因版本更新而失效。如果模型训练时总是四种信号俱全,一旦缺一种,表现就会明显掉档。所以训练时往往会故意随机遮掉某个模态,让模型学会在信息不完整时依然给出保守判断,同时把“缺了什么”作为输入告诉后面的模块。

延迟则要分配预算:编码要多快、融合要多快、输出前要不要等最慢的一路。直播场景通常不会等最慢的那路,而是先出快速结论,等信号补齐再修订。也因此,多模态输入并不是“越多越好”,而是要问:这个任务真的需要哪几路,缺了哪一路可以接受。下一步的问题就是这么多信息如何长时间保存,见 长上下文与事件记忆

小结多模态输入的关键不是把画面、数据和语音都塞进模型,而是为每种信号选合适的编码方式,在统一的时间轴上对齐,再按可信度融合,并为缺失和延迟提前设计降级方案。PA真人AI大模型的做法,是让每个模态先能独立成立,融合只负责把它们连接起来。