【大模型】数字人 Sonic 的环境配置和使用

一、Sonic 的简单介绍

Sonic是由腾讯和浙江大学联合开发的开源数字人技术框架。它能够通过音频驱动肖像图片生成生动的面部表情和口型动作,从而制作出高度逼真的数字人口播视频,广泛应用于虚拟主播、数字客服等场景,具有高效、低成本的特点。

  • 作者:由腾讯和浙江大学的研究团队开发。
  • GitHub链接https://github.com/jixiaozhong/Sonic
  • 发布年份:2025年。
  • 主要功能
    • 音频驱动:仅凭声音精准控制虚拟人的面部表情、唇部动作和头部运动,生成逼真又流畅的视频。
    • 上下文增强音频学习:提取长时间片段的音频知识,提供面部表情和唇部运动的先验信息。
    • 运动解耦控制器:独立控制头部和表情运动,实现更自然的动画效果。
    • 时间感知位置移位融合:融合全局音频信息,生成长时间稳定的视频。
    • 多样化视频生成:支持不同风格的图像和多种分辨率的视频生成。
  • 应用场景
    • 虚拟主播:可用于虚拟主播的视频生成,让虚拟主播能够根据音频内容做出自然的表情和动作。
    • 动画制作:帮助动画创作者快速生成动画角色的口型和表情动画,提高制作效率。
    • 游戏开发:在游戏中生成逼真的NPC表情和动作,增强游戏的沉浸感。
    • 社交媒体:为社交媒体平台生成个性化的数字人视频内容,吸引用户关注。

二、Sonic 的环境配置

  1. 工程下载

    bash 复制代码
    git clone https://github.com/jixiaozhong/Sonic.git
    cd Sonic
  2. 虚拟环境安装与激活

    bash 复制代码
    conda create -n Sonicpython=3.10
    conda activate Sonic
  3. 环境自动安装
    要求:需要支持 CUDA 的 NVIDIA GPU。该模型在单个 32G GPU 上进行了测试。本人使用 Tesla V100-SXM2-32GB
    系统:Linux
    然后项目目录下运行如下命令。

    bash 复制代码
      pip3 install -r requirements.txt
  4. 模型的下载
    该项目使用的模型官网提供的是通过huggingface下载。方便起见,推荐使用modelscope下载。由于模型比较大,实际操作建议设置下载路径,下载到数据盘中。下面是我实际设置的路径【/opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic】,自己使用时修改为想要存放的路径即可。

    复制代码
    pip install modelscope
    modelscope download --model zeabur/comfyui-sonic --local_dir /opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic/sonic
    modelscope download --model stabilityai/stable-video-diffusion-img2vid-xt --local_dir /opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic/stable-video-diffusion-img2vid-xt
    modelscope download --model openai-mirror/whisper-tiny --local_dir /opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic/whisper-tiny

    下载结束后,确保路径【/opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic】下的结构如图:

    复制代码
    /opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic/
    ├── RIFE/
    │   └── flownet.pkl
    ├── Sonic/
    │   ├── audio2bucket.pth
    │   ├── audio2token.pth
    │   ├── configuration.json
    │   ├── ...
    │   └── unet.pth
    ├── stable-video-diffusion-img2vid-xt/
    │   └── ...
    ├── whisper-tiny/
    │   └── ...
    └── yoloface_v5m.pt

    然后在工程的目录下创建文件夹【checkpoints】然后创建软连接

    bash 复制代码
    mkdir checkpoints
    ln -s  /opt/ai-platform/lldataset/240/modelscope/modelscope/hub/Sonic/* checkpoints
    ls -l checkpoints   ## 查看信息


    补充,当我们删除【checkpoints】,仅仅删除了软连接,不会影响到连接路径下的文件。

  5. 工程的运行
    参考官方命令:

    bash 复制代码
    python3 demo.py \
    '/path/to/input_image' \
    '/path/to/input_audio' \
    '/path/to/output_video'

    个人运行命令如下

    bash 复制代码
    python3 demo.py \
    'data/2d5d485a216668e6e75f7b52b92a6b46.jpeg' \
    'data/3月26日-1.MP3' \
    'data/3月26日-1.mp4'

    工程运行期间,可能会报错缺少对应的库,直接 pip install 安装即可。

三、Sonic的数字人的测试


使用显卡Tesla V100-SXM2-32GB,生成30s的视频,耗时20分钟。

正确运行结束后,终端如下图:

生成视频时,查看gpu使用情况如下图,需要约16G显存。


3.2 效果测试

先上测试结论】:

  1. 上传图片人物占比无硬性要求:上传的图片,人物可以漏出任意比例。相较于echomimic_v2 的必须露出上半身的要求,使用体验很佳。
  2. 侧面人物图片 可以生成对口型视频。
  3. 卡通人物 可以生成对口型视频。

测试1 】一个小女孩。

生成的数字人如下图:

测试2】文学泰斗。


生成的数字人如下图:

四、Sonic 的数字人使用体验

【记录日期】2025.3.27
【使用体验】实际使用效果不会一眼假,已经很贴近真人,但整个视频中可能存在个别帧稍显不流畅,值得深入研究、测试和使用。

五、Sonic 的 ComfyUI 版本

后续补充。

相关推荐
thesky1234561 天前
27届大模型岗面试准备(五):预训练全流程拆解——从数据清洗到 Tokenizer 再到 PT 的每
人工智能·面试·大模型·预训练·tokenizer
就是一顿骚操作1 天前
Agent Loop 入门到深入:从 ReAct 到 LangGraph、Agents SDK 与 MCP
人工智能·大模型·llm·论文解读·ai agent
就是一顿骚操作1 天前
Hermes Agent 入门到深入:会学习的开源 AI Agent 是怎么工作的
人工智能·大模型·论文解读·ai agent·hermes agent
程序员-李俞1 天前
从主题到可编辑 PPT:AI 演示文稿生成系统的任务编排、异步队列与质量验收
人工智能·gpt·ai作画·大模型·aigc·ppt·ai api
绵满2 天前
"Scaling Teams or Scaling Time? Memory Enabled Lifelong Learning in LLM Multi-Agent Systems" 论文笔记
大模型·多智能体
stereohomology2 天前
实战微调排版细节:豆包Seed 2.1 Turbo 不弱于GLM5.2?
人工智能·大模型·对比·why不coding
会思想的苇草i2 天前
oMLX 部署本地大模型
大模型·ai编程·开发·本地部署·omlx
梦想三三2 天前
LangChain模型调用与多轮对话完整实战
阿里云·langchain·大模型·api
程序员三明治2 天前
【AI】RAG 生成阶段的最后一公里:Prompt 设计、幻觉抑制与引用对齐
java·人工智能·ai·大模型·llm·prompt·rag