【大模型】数字人 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 版本

后续补充。

相关推荐
laopeng30121 小时前
Spring AI ToolCalling 扩展模型能力边界
java·人工智能·大模型·spring ai
放羊郎1 天前
OpenCV、YOLO与大模型的区别与关系
人工智能·opencv·yolo·大模型
姚家湾2 天前
MCP 学习笔记(1)
大模型·mcp
素雪风华2 天前
大模型LLMs框架Langchain之工具Tools
langchain·大模型·tools·llms·langchain工具包
喜欢吃豆2 天前
LLaMA-Factory使用实战
人工智能·大模型·json·llama
whltaoin2 天前
《2核2G阿里云神操作!Ubuntu+Ollama低成本部署Deepseek模型实战》
ubuntu·阿里云·大模型·ollama
青花瓷3 天前
office_word中使用宏以及DeepSeek
人工智能·大模型·word·deepseek
哦豁灬4 天前
deepseek(2)——deepseek 关键技术
大模型·llm·deepseek
余俊晖4 天前
Qwen-VL系列多模态大模型技术演进-模型架构、训练方法、数据细节
人工智能·大模型·多模态·qwen