先看结论:两条链的差别在起点

数字人常被当作一个统一的技术类别,好像只要有了嘴型自然的形象,接上不同的台词就能扮演任何角色。但把工作流摊开来看,主播和教练的差异从第一个环节就开始了。

主播链的输入是外部世界的事件:比赛里的进球、犯规、换人、比分变化。这些事件与用户无关,所有人看到的事实必须一致。教练链的输入是用户自己的身体:摄像头里的画面、手机或智能鞋里的传感器信号,每个用户、每一次动作都不同。

一条链关心“世界发生了什么”,另一条链关心“你刚才做了什么”。所以它们后面的模块、出错的方式、允许的延迟,几乎都不一样。

主播链:从体育数据到个性化分发

按顺序,主播链可以写成七个环节:

  1. 体育数据:来自结构化赛事数据与事件流,带有时间戳与来源。
  2. AI理解:识别哪些是有效事件、哪些是重复或待确认的信息,把它们对应到具体球员、球队和比赛阶段。
  3. 内容规划:决定这一刻该讲什么,是进球回放、数据补充,还是战术小结。
  4. 文字生成:把规划好的要点变成播报稿,数字与人名从槽位取值,而不是靠模型记忆。
  5. 语音生成:把稿件合成语音,处理术语读音与语速。
  6. 数字人驱动:根据语音生成口型、表情和简单的手势。
  7. 个性化分发:在允许的范围内,按用户关注的球队或深度调整内容的侧重。

这条链的核心约束是事实先于表达。前四步都在保证“说的是对的”,后三步才是“说得像人”。为什么事实约束这么重要,可以参考AI体育主播最难的是别把比赛讲错一文中的展开。

教练链:从摄像头到动作演示

教练链同样可以拆成几个环节:

  1. 摄像头与传感器:采集视频、加速度、心率等输入,并记录画面质量与佩戴状态。
  2. 姿态分析:提取骨骼关键点,计算关节角度、动作轨迹、节奏和左右差异。
  3. 技术问题识别:把数值变化转成“哪里做得不对”,比如下蹲时髋部没有充分后移。
  4. 反馈生成:从多个问题里挑最重要的一个,换成用户能听懂、下一次能改的一句话。
  5. 数字人动作演示:只演示与用户动作不同的部分,而不是从头播放一遍标准动作。

这条链的核心约束是看得准,并且说得对时机。姿态分析里的遮挡、视角和深度误差,会直接影响后面的判断。更细的分析方法见数字人教练如何把动作数据变成可执行的反馈

对照表:同一个数字人,两条不同的链

对照维度 主播链 教练链
输入赛事数据、事件流 摄像头画面、传感器信号
面向对象 大量观众,事实一致 单个用户,因人而异
核心判断 事件是否确认,哪些事实可用 动作哪里错,哪个问题最重要
文字的来源 槽位与结构化事实 动作分析结果加教学话术
常见出错点 数据过期、实体混淆、数字写错 关键点误检、遮挡、误判动作阶段
延迟的含义讲了已经过期的内容 纠正了一个已经过去的动作
出错后的处理 撤回、更正、保守表述 降低反馈强度、改为训练后总结
个性化 只调整侧重,不改事实 反馈内容本身就是个性化的

需要说明,表里只是设计层面的归纳,不含任何实测数值。

两条链交汇的地方

看到差异之后,也要看到共用的部分,否则就成了两套互不相干的系统。两条链在下面几处会汇合:

  • 语音与口型:无论是播报还是教学,最后一步都是把文字变成语音,再驱动口型与表情。这一段可以共用同一套引擎,但语气与语速的参数不同。
  • 形象与风格:形象层负责“像不像同一个品牌的数字人”,它不应该影响事实和判断。
  • 体育知识:战术术语、动作要点、规则说明,两边都需要,最好由同一份知识库维护。
  • 用户偏好:用户喜欢简短的提示还是详细的解释,这种偏好在两条链里都有用,但要注意它只能影响表达方式,不能改变事实或安全建议。

延迟:同一个词,两种问题

“延迟”这个词在两条链里含义不同,处理方式也不同。

主播链的延迟,本质上是事件确认与播出之间的时间差。稍微慢一点通常可以接受,但把已经变化的比分当作现在的比分讲出来,就是事实错误。合理的设计是先给保守的表述,确认后再补充,并且允许更正。这个取舍在AI主播慢两秒和说错一句话的比较里讨论过。

教练链的延迟,则和动作阶段绑定。举例来说,下蹲动作的最低点只持续一瞬间,如果等分析完再提醒,用户可能已经站起来了。所以教练链的一部分反馈应放到“动作之间”的间隙,或者放到训练后总结,而不是硬要即时说出来。

一个举例:同一晚上的两次调用

假设某位用户晚上先看了一场比赛,第二天早上做训练。前一晚,主播链在处理事件流时,遇到一次“进球待确认”的信息,先用“球进了,正在等待确认”这样的保守表述,确认之后再补充球员与时间。第二天早上,教练链在处理摄像头画面时,发现连续几次下蹲的膝盖内扣,于是选择在这组动作结束后给出一条提醒,而不是每一次都说。

两次调用用的是同一个数字人形象,但走的是完全不同的链:一条围绕“事实确认”,一条围绕“动作与时机”。这个例子的场景与数字均为示意,用来说明链路的差别,不代表某个已实现的功能效果。

个性化分发:为什么只放在主播链的末尾

主播链的最后一步是个性化分发,这个位置是有意安排的。如果把个性化放在前面,比如按用户偏好去挑选“事实”,就可能让不同用户看到互相矛盾的比赛描述。放在末尾,意味着事实、事件和数字已经确定,个性化只做三件事:

  • 决定讲多深:有人只要比分和一句话点评,有人愿意听到传球网络与跑位的细节。
  • 决定先讲谁:关注某支球队的用户,先听到他关心那一队的变化。
  • 决定用什么节奏:简短提示还是完整讲解。

教练链则相反,反馈本身就依赖个体:同样是下蹲,不同人的关节活动度、训练水平和当天状态不同,最应该纠正的问题也不同。所以教练链的个性化发生在“判断”环节,而不是最后一步。这也解释了为什么两条链不能共用同一个“个性化模块”。

失败时各自怎样退回

一条工作流是否可靠,主要看出错时怎样处理。

主播链的常见退路有:数据源中断时,暂停实时播报,切换到只说已确认的信息;实体匹配不确定时,用“某位球员”这样的泛指,而不是猜一个名字;语音合成失败时,退回文字字幕。

教练链的常见退路有:画面质量太差、关键点置信度低时,不给出具体纠正,只提示调整机位与光线;识别结果在相邻帧之间跳变时,把反馈推迟到训练后总结;用户出现明显疲劳或动作严重变形时,优先建议降低强度或结束训练,如果有不适,应停止训练,必要时咨询专业医生。

两条链的退路都指向同一个原则:宁可少说,也不要说错

设计上的几个原则

从两条链的对照里,可以归纳出江南体育官网在设计数字人工作流时的几条原则:

  1. 先分链,再共用末端:不要用一套逻辑硬套两类任务,只在语音、口型与形象层共用。
  2. 每一环都能降级:数据不确定就用保守表述,动作识别不可靠就改成训练后总结。
  3. 事实与表达分层:个性化只能改变说法与侧重,不能改变比分、阵容或安全建议。
  4. 保留可追溯性:主播的每个数字应能对应到数据来源,教练的每条反馈应能对应到具体的动作片段。
这里描述的是工作流的设计思路。具体环节的实现程度、准确率与延迟,以后续公布的信息为准,官网不会把示意场景当作实测结果。

小结

把体育数字人拆成主播链与教练链,并不是为了增加复杂度,而是为了让每条链只解决自己的问题:一条守住事实,一条看准动作。共用的只有末端的语音、口型与形象,以及底下的体育知识与用户偏好。这也是江南体育官网整理数字人相关内容的出发点。