编程 告别"恐怖谷"!国产开源SentiAvatar:0.3秒生成6秒动作,让数字人终于有了"灵魂"

2026-04-21 07:40:01 +0800 CST views 13

告别"恐怖谷"!国产开源SentiAvatar:0.3秒生成6秒动作,让数字人终于有了"灵魂"

3D数字人嘴在动但表情僵硬、手在挥但和说话内容完全脱节——这种"提线木偶"式的违和感正在被终结。国产开源框架SentiAvatar实现了0.3秒生成6秒连贯动作,让数字人真正"活"了起来。

项目简介

SentiAvatar 是由 AI 初创公司 SentiPulse(思维光谱)联合中国人民大学高瓴人工智能学院共同推出的国内首个交互式3D数字人框架,已于2026年4月全球开源。

  • GitHub:https://github.com/SentiAvatar/SentiAvatar
  • 论文:https://arxiv.org/abs/2604.02908
  • 数据集:https://huggingface.co/datasets/Chuhaojin/SuSuInterActs
  • 模型权重:https://huggingface.co/Chuhaojin/SentiAvatar
  • 项目主页:https://sentiavatar.github.io/
  • 许可:开源(具体License见仓库)

为什么需要这个项目?

和3D数字人对话时,你一定经历过这种诡异时刻:

  • 嘴在动,但表情像戴了面具
  • 手在挥舞,但和说话内容完全脱节
  • 动作僵硬重复,看久了陷入"恐怖谷"

问题根源在于:人类沟通从来不只是语言或动作的单一呈现。一个耸肩表达无奈,一个点头传递认同,微微扬起的眉毛暗示怀疑——这些非语言信号是真实交流中不可或缺的关键维度。

传统方案要么只关注语音对口型,要么动作是预设的固定模板,无法做到"语义+节奏"的双重对齐。

SentiAvatar 如何解决这个问题?

核心理念:三层统一

SentiAvatar 认为真正的交互式数字人需要实现三个层次的统一:

生理层(面部肌肉运动)
  ↓
心理层(情感状态)
  ↓
行为层(肢体语言)

通过多维度端到端训练,实现自然流畅的情感表达和智能互动。

技术架构:Plan-then-Infill

SentiAvatar 采用了创新的双通道并行架构,将高层语义规划与底层韵律插值解耦:

多模态输入(语音+文本+动作标签)
  │
  ├─ 身体动作通道 ─────────────────┐
  │   LLM Motion Planner           │
  │   (Qwen2-0.5B微调)             │
  │   → 稀疏关键帧Token             │
  │   → Body Infill Transformer     │
  │     (HuBERT音频驱动插帧)         │
  │                                │
  ├─ 面部表情通道 ─────────────────┤
  │   直接绕过LLM规划               │
  │   → Face Infill Transformer     │
  │     (音频特征→面部Token)         │
  │                                │
  └──────────────→ RVQVAE Decoder ←┘
                   离散Token → 连续动作序列

三阶段流水线

  1. Motion VQ-VAE:将连续动作编码为离散Token(4层残差码本,每层512个码字)
  2. LLM Motion Planner:基于Qwen2-0.5B微调,根据动作标签+音频Token预测稀疏关键帧(每4帧1个)
  3. Audio-Aware Infill Transformer:用HuBERT音频特征在关键帧间插值,实现与语音节奏的逐帧对齐

数据集:SuSuInterActs

为了解决高质量数据稀缺的问题,团队构建了 SuSuInterActs 数据集:

维度数据
对话片段21,000段
总时长37小时
采集方式光学动作捕捉
帧率20 FPS
关节数63(25身体+20左手+20右手)
面部表情ARKit 51维BlendShape
划分训练19K / 验证635 / 测试1479

这是中文对话场景下最大的3D数字人高质量动作数据集

Motion Foundation Model

在预训练阶段,团队在超过20万条异质动作序列上训练通用运动先验,涵盖奥运运动、仿生动作等专项类别,扩展了动作先验的覆盖边界。

性能表现

🏆 刷新SOTA

数据集指标SentiAvatar次优基线
SuSuInterActsR@143.64%~22%(接近2倍)
BEATv2FGD4.941-
BEATv2BC8.078-

⚡ 实时性能

  • 0.3秒生成6秒连贯动作
  • 支持无限多轮流式对话
  • 动作与语音逐帧同步

快速上手

环境要求

  • Python 3.10
  • Conda
  • GPU(推理需要)

安装步骤

# 克隆项目
git clone https://github.com/SentiAvatar/SentiAvatar.git
cd SentiAvatar

# 创建环境
conda create -n sentiavatar python=3.10 -y
conda activate sentiavatar

# 安装依赖
pip install -r requirements.txt

下载模型权重

# 方式1:使用 git lfs
git lfs install
git clone https://huggingface.co/Chuhaojin/SentiAvatar checkpoints/

# 方式2:使用 huggingface-cli
pip install huggingface_hub
huggingface-cli download Chuhaojin/SentiAvatar --local-dir checkpoints/

数据集下载

# 从 HuggingFace 下载
git lfs install
git clone https://huggingface.co/datasets/Chuhaojin/SuSuInterActs

开源内容清单

SentiAvatar 一口气开源了三样东西:

内容说明链接
SentiAvatar 框架完整推理代码 + 训练代码GitHub
SuSu 3D角色模型配套的数字人角色GitHub
SuSuInterActs 数据集37小时多模态对话数据HuggingFace

团队背景

作者机构
靳楚灏(项目负责人)人大高瓴人工智能学院 + SentiPulse
张睿(共同一作)SentiPulse
高清哲、史浩宇、吴大宇等人大高瓴 / 内蒙古大学
宋睿华(通讯作者)人大高瓴人工智能学院

适用场景

  • 🎮 游戏NPC:让游戏角色自然对话,告别预设动作循环
  • 📺 虚拟主播:实时驱动3D虚拟形象,表情和动作与语音同步
  • 🎓 教育培训:创建自然互动的虚拟教师
  • 🤖 AI助手:赋予AI可视化的"身体",提升交互体验
  • 🎬 影视预览:快速生成角色动作预览

总结

SentiAvatar 的核心贡献可以概括为:

  • 国内首个交互式3D数字人框架,全球开源
  • Plan-then-Infill架构,语义规划与韵律插值解耦
  • 37小时高质量中文数据集,填补行业空白
  • 0.3秒生成6秒动作,实时性能领先
  • 双刷SOTA,R@1接近次优基线2倍
  • 模型+数据集+角色模型全部开源

如果你在做数字人相关的工作,这个项目绝对值得深入研究和使用。

GitHub:https://github.com/SentiAvatar/SentiAvatar ⭐ Star一下!

复制全文 生成海报 开源 数字人 AI 3D 动画 GitHub 人大

推荐文章

nuxt.js服务端渲染框架
2024-11-17 18:20:42 +0800 CST
Elasticsearch 条件查询
2024-11-19 06:50:24 +0800 CST
避免 Go 语言中的接口污染
2024-11-19 05:20:53 +0800 CST
JavaScript设计模式:发布订阅模式
2024-11-18 01:52:39 +0800 CST
使用 `nohup` 命令的概述及案例
2024-11-18 08:18:36 +0800 CST
MySQL 主从同步一致性详解
2024-11-19 02:49:19 +0800 CST
Vue3中的事件处理方式有何变化?
2024-11-17 17:10:29 +0800 CST
filecmp,一个Python中非常有用的库
2024-11-19 03:23:11 +0800 CST
平面设计常用尺寸
2024-11-19 02:20:22 +0800 CST
前端项目中图片的使用规范
2024-11-19 09:30:04 +0800 CST
Go中使用依赖注入的实用技巧
2024-11-19 00:24:20 +0800 CST
js一键生成随机颜色:randomColor
2024-11-18 10:13:44 +0800 CST
ElasticSearch简介与安装指南
2024-11-19 02:17:38 +0800 CST
如何在 Vue 3 中使用 TypeScript?
2024-11-18 22:30:18 +0800 CST
程序员茄子在线接单