AI开源项目
文章目录
- Heygem
- 项目介绍
- 本地部署
- OpenManus
- 项目介绍
- 本地部署
Heygem
项目介绍
好消息!Heygem 在 GitHub 上开源了!不过,只是前端界面开源,感觉更像是来 GitHub 刷一波知名度。不过这依然是个值得关注的工具。让我们先来看看它的官方介绍:
Heygem 是一款专为 Windows 系统打造的完全离线视频合成工具。它能精确克隆你的外貌和声音,将你的形象数字化。通过文字或语音驱动虚拟化身,你可以轻松制作视频。无需网络连接,在保护隐私的同时,享受高效便捷的数字体验。
官网:https://heygem.ai/
项目地址:https://github.com/GuijiAI/HeyGem.ai
核心功能:
- 精准外貌与语音克隆
借助先进的 AI 算法,Heygem 高精度捕捉五官、轮廓等特征,构建逼真的虚拟模型。同时,它还能克隆语音,捕捉人声的细微特征,支持多种语音参数设置,打造高度相似的音色效果。 - 文字及语音驱动的虚拟化身
通过自然语言处理技术,Heygem 能将文本转化为流畅自然的语音,驱动虚拟化身开口“说话”。你也可以直接输入语音,虚拟化身会根据语音的节奏和语调,同步做出相应的动作和表情,表现更加生动。 - 高效视频合成
数字人视频画面与声音高度同步,口型匹配自然流畅,智能优化音视频效果,带来极佳的视听体验。 - 多语言支持
支持八种语言脚本:英语、日语、韩语、中文、法语、德语、阿拉伯语和西班牙语,满足全球化需求。
主要优势:
- 完全离线操作:无需联网,保护用户隐私,避免数据泄露风险。
- 用户友好:界面简洁直观,即使是技术小白也能快速上手。
- 多模型支持:支持导入多种模型,并通过一键启动包管理,灵活适配不同创作场景。
技术支撑:
- 语音克隆技术:基于 AI 生成与样本高度相似的语音,涵盖语调、语速等细节。
- 自动语音识别:将语音转化为文本,让计算机“听懂”你的指令。
- 计算机视觉技术:用于面部识别和唇部运动分析,确保唇形与语音完美匹配。
更棒的是,Heygem 还支持通过 Docker 进行本地部署,部署后甚至可以批量生成视频!
本地部署
部署文档:https://github.com/GuijiAI/HeyGem.ai/blob/main/README_zh.md
问题记录:
问题1:docker-compose up -d
时 报错:Error response from daemon: unknown or invalid runtime name: nvidia
解决方案:配置 Docker 使用 runtime: nvidia
docker-compose.yml:
heygem-f2f:
image: guiji2025/heygem.ai
container_name: heygem-f2f
restart: always
runtime: nvidia
privileged: true
volumes:
- d:/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
打开 Docker Desktop 的设置。
在左侧菜单中选择 Docker Engine。
在配置文件中添加或修改以下内容:
{
"default-runtime": "nvidia",
"runtimes": {
"nvidia": {
"path": "nvidia-container-runtime",
"runtimeArgs": []
}
}
}
保存并重启 Docker。
问题2:heygem-f2f 启动失败,Containers一直显示restating
查看容器日志:
2025-03-23 10:23:53 File "/usr/local/python3/lib/python3.8/site-packages/torch/cuda/__init__.py", line 302, in _lazy_init
2025-03-23 10:23:53 torch._C._cuda_init()
2025-03-23 10:23:53 RuntimeError: Unexpected error from cudaGetDeviceCount(). Did you run some cuda functions before calling NumCudaDevices() that might have already set an error? Error 500: named symbol not found
容器无法正确访问 GPU 或 CUDA 库。定位:
# 宿主机检查
python -c "import torch; print(torch.version.cuda);print(torch.__version__);print(torch.cuda.is_available());"
11.8
2.6.0+cu118
True
# 容器检查:使用docker run启动一个临时容器进行配置检查
docker run --rm guiji2025/heygem.ai python -c "import torch; print(torch.version.cuda);print(torch.__version__);print(torch.cuda.is_available());"
/usr/local/python3/lib/python3.8/site-packages/torch/cuda/__init__.py:141: UserWarning: CUDA initialization: Unexpected error from cudaGetDeviceCount(). Did you run some cuda functions before calling NumCudaDevices() that might have already set an error? Error 500: named symbol not found (Triggered internally at ../c10/cuda/CUDAFunctions.cpp:108.)
return torch._C._cuda_getDeviceCount() > 0
11.8
2.2.2+cu118
False
# 进入容器检查
docker run --rm --gpus all -it guiji2025/heygem.ai bash
>>> import torch
>>> torch.cuda.device_count()
1
一般考虑的是cuda和驱动、pytorch不匹配,但是我这里是官方的容器,所以不太需要考虑这种情况。而且实际容器里是访问的到宿主机的GPU的。
最终结论是docker Desktop的问题。显卡的驱动太新了, 解决的方案就是下载新的desktop版本:https://docs.docker.com/desktop/release-notes/#4310
参考:https://blog.csdn.net/qq_43367614/article/details/141300909
OpenManus
项目介绍
OpenManus,由 MetaGPT 团队精心打造的开源项目,于2025年3月发布。它致力于模仿并改进 Manus 这一封闭式商业 AI Agent 的核心功能,为用户提供无需邀请码、可本地化部署的智能体解决方案。换句话说,OpenManus 就像一位全能的数字助手,能够在你的本地设备上运行,随时听候差遣,完成各种复杂任务。
它的出现,打破了技术领域的高墙,让每一位开发者都有机会站在同一起跑线上,快速实现诸如代码生成、数据分析、网络信息检索等复杂任务的自动化处理。无论你是独立开发者,还是大型团队的一员,OpenManus 都能为你提供强大的支持,让你专注于创造性的核心工作,而非将时间浪费在重复性任务上。
项目地址:https://github.com/mannaandpoem/OpenManus
OpenManus 项目目录结构
OpenManus/
├── app/ # 核心应用目录
│ ├── agent/ # 智能体实现模块
│ │ ├── base.py # 基础智能体接口定义
│ │ ├── manus.py # 主要智能体实现
│ │ ├── planning.py # 任务规划模块
│ │ ├── react.py # 反应式决策模块
│ │ ├── swe.py # 软件工程相关能力
│ │ └── toolcall.py # 工具调用处理模块
│ ├── flow/ # 流程控制模块
│ │ ├── base.py # 流程管理基础类
│ │ ├── flow_factory.py # 流程工厂
│ │ └── planning.py # 任务规划流程
│ ├── tool/ # 工具集合模块
│ │ ├── base.py # 工具基础接口
│ │ ├── browser_use_tool.py # 浏览器操作工具
│ │ ├── file_saver.py # 文件操作工具
│ │ ├── google_search.py # 搜索工具
│ │ └── python_execute.py # Python代码执行工具
│ ├── prompt/ # 系统提示词模块
│ │ ├── manus.py # Manus智能体提示词
│ │ ├── planning.py # 规划相关提示词
│ │ └── toolcall.py # 工具调用提示词
│ └── config.py # 配置管理
├── config/ # 配置文件目录
│ ├── config.example.toml # 配置文件示例
│ └── config.toml # 实际配置文件
├── main.py # 主程序入口
├── run_flow.py # 流程运行脚本
├── setup.py # 项目安装配置
└── requirements.txt # 项目依赖列表
本地部署
部署文档:https://gitcode.com/mannaandpoem/OpenManus/blob/main/README_zh.md