HeyGem ai数字人本地部署(服务端linux+客户端windows)

HeyGem ai数字人本地部署(服务端linux+客户端windows)

linux部署服务端

  1. 配置docker-cmpose.yml文件
networks:
  ai_network:
    driver: bridge

services:
  heygem-tts:
    image: guiji2025/fish-speech-ziming
    container_name: heygem-tts
    restart: always
    runtime: nvidia
    environment:
      - NVIDIA_VISIBLE_DEVICES=0
      - NVIDIA_DRIVER_CAPABILITIES=compute,graphics,utility,video,display
    ports:
      - '18180:8080'
    volumes:
      - ./heygem_data/heygem_data/voice/data:/code/data   #./heygem_data/heygem_data/ 需要作为Samba的共享目录
    command: /bin/bash -c "/opt/conda/envs/python310/bin/python3 tools/api_server.py --listen 0.0.0.0:8080"
    networks:
      - ai_network
  heygem-asr:
    image: guiji2025/fun-asr
    container_name: heygem-asr
    restart: always
    runtime: nvidia
    privileged: true
    working_dir: /workspace/FunASR/runtime
    ports:
      - '10095:10095'
    command: sh /run.sh
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    networks:
      - ai_network
  heygem-f2f:
    image: guiji2025/heygem.ai
    container_name: heygem-f2f
    restart: always
    runtime: nvidia
    privileged: true
    volumes:
      - ./heygem_data/heygem_data/face2face:/code/data
    environment:
      - PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:512
    deploy:
      resources:
        reservations:
          devices:
            - capabilities: [gpu]
    shm_size: '8g'
    ports:
      - '8383:8383'
    command: python /code/app_local.py
    networks:
      - ai_network
  1. 在docker-compose.yml所在目录下,在通过docker-compose启动容器
docker-compose up -d
  1. 启动成功,通过docker ps查看进程
    在这里插入图片描述

  2. 进入heygem-tts容器内config目录

docker exec -it heygem-tts /bin/bash
cd config
vim config.py
  1. 修改对应部分数据为本机IP
    在这里插入图片描述

linux 配置Samba

如果在 Windows11 家庭中文版 系统中没有 NFS 服务 或 NFS 客户端 选项,所以我们选择使用 Samba 共享替代 NFS。

示例为在 CentOS 8 上安装和配置 Samba

  1. 安装 Samba:

    dnf install samba samba-client samba-common -y
    
  2. 将docker-compose文件设置的数据存储文件为 Samba 共享目录:

mkdir -p ./heygem_data #建议写绝对路径
chmod 777 ./heygem_data #建议写绝对路径
  1. 配置 Samba 共享:
    编辑 /etc/samba/smb.conf 文件,在文件末尾添加以下内容:

    [heygem]
            path = /mnt/disk0/HeyGem/heygem_data
            browseable = yes
            writable = yes
            guest ok = no
            create mask = 0777
            directory mask = 0777
            valid users = @sambashare
    
  2. 创建 Samba 用户:

useradd sambashare #sambashare为conf文件设置的用户名
smbpasswd -a sambashare

按提示设置 Samba 用户的密码。

  1. 启动 Samba 服务:

    systemctl start smb
    systemctl enable smb
    systemctl start nmb
    systemctl enable nmb
    
  2. 配置防火墙:

firewall-cmd --permanent --add-service=samba
firewall-cmd --reload
  1. 在 Windows 客户端上访问 Samba 共享
  • 打开我的电脑,选择映射网络驱动器

在这里插入图片描述

  • 其中, 192.168.23.183 是 CentOS 8 服务器的 IP 地址
    在这里插入图片描述

  • 按提示输入 Samba 用户名和密码(在 CentOS 上创建的 Samba 用户)。

  • 成功连接后,你就可以像访问本地文件夹一样访问 Samba 共享目录了。

在这里插入图片描述

客户端部署

  1. 克隆https://github.com/GuijiAI/HeyGem.ai.git 代码

  2. 修改配置文件src\main\config\config.js
    在这里插入图片描述

​ 192.168.23.183 为linux服务端的ip地址

  1. 修改音视频存储的路径为Samba 挂在的客户端
    在这里插入图片描述

​ K: 是网络驱动器的路径,根据自己设置的进行配置

  1. 重新打包编译客户端
npm run build:win
  1. 打包完目录下会生成一个dist文件
    在这里插入图片描述

  2. 直接运行HeyGem-1.0.2-setup.exe安装客户端

  3. 运行效果如下
    在这里插入图片描述

### HeyGEM 分离方法及其实现方式 HeyGEM 是一种基于人工智能技术的工具,主要用于处理多媒体数据(如视频和音频)。其核心功能之一是对输入的视频文件进行分离操作,即将视频中的视觉部分(即无声音的视频流)与听觉部分(即音频流)分开存储并进一步处理。 #### 视频分离的核心原理 视频本质上是由一系列图像帧组成的序列,并附带同步播放的音频轨道。HeyGEM 的分离过程主要依赖于以下两个阶段: 1. **解码与提取** 使用 FFmpeg 或类似的媒体处理库对原始视频文件进行解码,分别提取其中的视频流和音频流[^2]。此过程中会生成两份独立的数据文件:一份用于保存纯视频画面,另一份则专门记录音频信号。 2. **路径映射与配置调整** 在 Linux 系统环境下部署时,需通过修改 `deploy/docker-compose.yml` 文件来指定本地目录作为数据挂载点。例如,在实际应用中可以设置如下参数以定义音频数据的目标位置: ```yaml volumes: - d:/xxx/heygem_data/voice/data:/code/data ``` 这一配置确保了分离后的音频能够被正确写入到预设路径下以便后续模型训练或其他用途[^3]。 #### 技术栈支持 为了完成上述任务,项目内部集成了多个服务模块协同工作,具体涉及以下几个关键脚本组件: - **model.js**: 负责管理机器学习算法框架下的各类神经网络结构实例化以及超参初始化等工作; - **video.js & voice.js**: 提供针对不同媒介形式的具体业务逻辑封装接口函数集合体;前者专注于静态图片或者动态影像素材加工转换流程控制而后者侧重声波特征捕捉分析计算等方面的功能扩展能力提升效果显著[ ^ ]. 综上所述, hey gem实现了高效的视音频拆分解决方案不仅限于此还包括更多高级特性等待探索发现!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值