返回 MCP 目录
public公开dns本地运行

personalive

PersonaLive是一个基于AI的实时肖像动画系统,支持通过摄像头实时驱动或离线视频处理生成生动的虚拟形象,适用于直播等场景。

article

README

🚀 人物动态直播动画系统(PersonaLive)

用于直播的富有表现力的肖像动画系统

本系统是一款强大的工具,能实现实时的肖像动画驱动,支持离线视频处理,具备多语言界面和多种实用功能,为直播和动画制作带来全新体验。

Docker License Python CUDA

English | 简体中文 | 繁體中文 | 日本語

✨ 主要特性

  • 🎥 实时动画:通过网络摄像头实时驱动肖像动画。
  • 📁 离线处理:根据参考图像和驱动视频生成动画视频。
  • 🌐 多语言界面:支持英语、简体中文、繁体中文和日语。
  • 🌙 黑暗模式:提供护眼的黑暗主题。
  • 📸 截图与录制:可捕获和录制动画输出。
  • 🖥️ 全屏模式:带来沉浸式的全屏体验。
  • 📊 GPU 监控:实时显示 GPU 状态并进行内存管理。
  • 🔌 REST API:提供完整的 API 并带有 Swagger 文档。
  • 🤖 MCP 支持:支持用于 AI 助手的模型上下文协议。

🚀 快速开始

Docker(推荐)

# 拉取一体化镜像(包含所有模型权重)
docker pull neosun/personalive:allinone

# 运行
docker run -d --gpus all -p 7870:7870 --name personalive neosun/personalive:allinone

# 访问
open http://localhost:7870

Docker Compose

services:
  personalive:
    image: neosun/personalive:allinone
    ports:
      - "7870:7870"
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
docker compose up -d

📦 安装指南

前提条件

  • 具有 12GB 以上显存的 NVIDIA GPU。
  • 安装了 NVIDIA 容器工具包的 Docker。
  • 或者:Python 3.10 和 CUDA 12.1。

方法 1:Docker 一体化安装(最简单)

docker pull neosun/personalive:allinone
docker run -d --gpus all -p 7870:7870 neosun/personalive:allinone

方法 2:使用卷挂载的 Docker 安装

# 克隆仓库
git clone https://github.com/neosun100/personalive.git
cd personalive

# 下载权重
python tools/download_weights.py

# 挂载权重运行
docker run -d --gpus all -p 7870:7870 \
  -v $(pwd)/pretrained_weights:/app/pretrained_weights \
  neosun/personalive:latest

方法 3:本地开发安装

# 克隆仓库
git clone https://github.com/neosun100/personalive.git
cd personalive

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

# 安装依赖
pip install -r requirements_base.txt
pip install -r requirements_api.txt

# 下载权重
python tools/download_weights.py

# 构建前端
cd webcam/frontend && npm install && npm run build && cd ../..

# 运行
python app.py

⚙️ 配置

环境变量

| 变量 | 默认值 | 描述 | |------|--------|------| | PORT | 7870 | 服务器端口 | | HOST | 0.0.0.0 | 监听地址 | | GPU_IDLE_TIMEOUT | 600 | GPU 空闲超时时间(秒) | | ACCELERATION | xformers | 加速模式(none/xformers/tensorrt) |

.env 文件示例

PORT=7870
HOST=0.0.0.0
GPU_IDLE_TIMEOUT=600
ACCELERATION=xformers

💻 使用示例

Web 界面

  1. 打开 http://localhost:7870。
  2. 选择或上传参考肖像。
  3. 点击“融合参考”以准备模型。
  4. 允许访问网络摄像头并点击“开始动画”。
  5. 移动面部以驱动动画!

离线模式

  1. 切换到“离线模式”选项卡。
  2. 上传参考图像(PNG/JPG)。
  3. 上传驱动视频(MP4)。
  4. 设置最大帧数并点击“处理”。
  5. 下载结果视频。

REST API

# 健康检查
curl http://localhost:7870/health

# GPU 状态
curl http://localhost:7870/api/gpu/status

# 离线处理
curl -X POST http://localhost:7870/api/process/offline \
  -F "reference_image=@portrait.png" \
  -F "driving_video=@video.mp4"

完整的 API 文档:http://localhost:7870/docs

🔧 技术细节

技术栈

  • 后端:FastAPI、PyTorch、Diffusers
  • 前端:SvelteKit、TailwindCSS
  • AI 模型:Stable Diffusion、LivePortrait
  • 加速:xFormers、TensorRT(可选)

项目结构

personalive/
├── app.py                 # 主应用程序
├── gpu_manager.py         # GPU 资源管理器
├── mcp_server.py          # MCP 服务器
├── src/                   # 核心模型
├── webcam/                # 前端与流媒体
├── configs/               # 配置文件
├── tools/                 # 实用脚本
└── pretrained_weights/    # 模型权重

🤝 贡献

欢迎贡献代码!请随时提交拉取请求。

  1. 分叉仓库。
  2. 创建功能分支(git checkout -b feature/amazing)。
  3. 提交更改(git commit -m 'Add amazing feature')。
  4. 推送到分支(git push origin feature/amazing)。
  5. 打开拉取请求。

📋 变更日志

v1.0.0 (2026-01-04)

  • 🎉 初始版本发布
  • ✨ 实时网络摄像头动画
  • ✨ 离线视频处理
  • ✨ 多语言界面(英语/中文/繁体中文/日语)
  • ✨ 黑暗模式支持
  • ✨ 截图与录制
  • ✨ 带有 Swagger 的 REST API
  • ✨ MCP 支持
  • 🐳 Docker 一体化镜像

📄 许可证

本项目采用 MIT 许可证 - 详情请参阅 LICENSE 文件。

⭐ 星标历史

Star History Chart

🙏 致谢

本项目基于 GVC Lab 的 PersonaLive。特别感谢原作者。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端