半小时搭起你的第一个数字人助理:Fay 开源数字人框架从克隆仓库到本地跑通
【免费下载链接】Fayfay是一个帮助数字人(2.5d、3d、移动、pc、网页)或大语言模型(openai兼容、deepseek)连通业务系统的agent框架。项目地址: https://gitcode.com/GitHub_Trending/fay/Fay
你有一场直播,想让数字人替你盯弹幕、答问题,Fay 开源数字人框架就是干这个的。它把数字人和大语言模型连进业务系统。这篇文章带你从克隆仓库开始,半小时在本地跑通第一条对话。
本文路线图
| 环节 | 预计耗时 | 产出物(你会拿到什么) |
|---|---|---|
| 克隆仓库、进目录 | 5 分钟 | 本地 Fay 仓库,三个版本分支齐全 |
| 切换版本分支、装依赖 | 15 分钟 | 选定版本(以助理版为例)的可运行环境 |
| 改配置、本地启动 | 10 分钟 | 本地跑通的对话面板,第一条问答走通 |
以下所有步骤基于 Fay 助理版(fay-assistant-edition 分支)编写,命令中标注"示例"的部分以分支内说明为准。
环境准备:克隆 Fay 数字人仓库前先备好的东西
| 最低要求 | 推荐配置 | |
|---|---|---|
| 系统 | Windows / macOS / Linux | 同左 |
| 算力 | 无独显,接云端 OpenAI 兼容接口即可 | 带独显,可上 vLLM / FastChat 本地推理 |
| 其他 | 模型 API Key、稳定网络 | 同左,另备一个 TTS 引擎的 Key |
打开终端,把仓库克隆到本地:
git clone https://gitcode.com/GitHub_Trending/fay/Fay然后进入项目目录:
cd Fay注意:当前默认分支是一份 README 入口页,真正能跑的代码在三个独立分支里,README.md 开头就列了各版本的对应入口,照着选就行。
它是什么、怎么分工
Fay 是开源的数字人 agent 框架:把 2.5D、3D、移动端、PC、网页端的数字人,或 OpenAI 兼容、DeepSeek 等大语言模型,接到你的业务系统上,负责听懂、思考、开口、调工具。
| 定位 | 关键能力 | 适合谁 |
|---|---|---|
| 助理版(fay-assistant-edition) | 语音对话、设备控制、PDF 本地知识库 | 个人助理、客服答疑 |
| 带货版(fay-sales-edition) | B站/微信视频号弹幕监听、情感分析、弹幕合规检查 | 直播电商、虚拟销售 |
| agent 版(fay-agent-edition) | 自主决策,调用知识库、网页检索、python 执行器等工具 | 自动化办公、主动联系场景 |
一句话读懂:语音先被 ASR 变成文字,大模型决定直接回答还是调工具,最终回复经 TTS 变回声音,或直接驱动数字人形象。你真正要做的只有两件:接哪个模型、渲染哪个形象。
装到能用:装依赖、改配置的最小步骤
切换版本分支:拿到真正的代码
目的:默认分支只有入口页,代码在各版本分支里。
# 以助理版为例;带货版、agent 版把分支名换成对应名称(分支名来自 README 的版本入口) git checkout fay-assistant-edition成功的标志:git branch当前分支前带*,目录里出现该版本完整的项目文件,而不只是一份 README。
装依赖(示例)
目的:给 Python 建一个干净环境,装上该版本声明的依赖。
# 示例:具体依赖文件名以分支内 README 说明为准 python -m venv venv # Windows 执行 venv\Scripts\activate,macOS/Linux 执行 source venv/bin/activate pip install -r requirements.txt成功的标志:终端没有报错,pip list能看到刚装上的核心包。
改配置:只动三处
目的:让服务知道用哪个模型、什么声音。
打开版本目录里的配置文件(具体文件以该分支 README 为准),只需动这几项:
- 大模型:OpenAI 兼容接口(或 DeepSeek)的 base_url 和 API Key。base_url 别留空,README 更新记录里明确修过空 base_url 报错。
- TTS:任选一个引擎(gptsovits、Azure 或阿里云)并填好对应 Key。
- ASR/唤醒:不用麦克风就先关掉,其余保持默认。
成功的标志:保存配置没有格式报错。
先本地跑通,再谈部署
本地启动验证:一条命令看到对话面板
# 示例:入口脚本以版本目录内实际文件为准 python main.py启动后,终端会打印一个监听地址。用浏览器打开http://localhost加终端显示的端口号。看到助理版的对话面板,输入一句话,得到文字或语音回复——这次启动就算跑通了。
部署要点:服务和渲染拆开
- 大模型走 API 时,Fay 是一个独立 Python 服务,单进程即可;上本地模型时,vLLM 或 FastChat 是另一个进程。
- 数字人渲染端(UE5、MetaHuman Stream、网页)通过流连接 Fay,可以放在另一台机器。
- 多开实例时,每个实例单独分配端口,前面挂一个负载均衡。
它能替你做什么
直播带货:主播在 B站开播,人不在时让数字人盯弹幕。
# 示例:观众弹幕问"这个有黑色吗",带货版先做格式与违禁词检查,再回复商品参数个人助理:你在工位上不想碰鼠标,直接对 PC 说设备控制指令。
# 示例:对助理版说"开灯",它调用设备控制工具并返回执行结果知识库答疑:客服团队拿产品手册 PDF,不想逐条答重复问题。
# 示例:手册放进知识库后,问"退货期限是几天",回答由本地知识库(pdf)工具给出卡住了先看这里:数字人框架高频问题速查
| 现象 | 原因 | 处理 |
|---|---|---|
| 配置空 base_url 时启动报错 | gpt 代理配置兼容问题 | 升级到包含 2024.07.10 更新的版本,README 已记录修复 |
| TTS 前几个字不读 | 早期 TTS 截断问题 | 升级到 2024.07.03 之后的版本 |
| agent 版历史记录为空时报错 | 历史读写初始化问题 | 升级到 2024.07.10 之后的版本 |
| 页面白屏 | 早期渲染问题,更新日志多次优化 | 先升级到最新提交再复现 |
| 本地模型显存吃紧 | 整模型直推 | 改用 vLLM / FastChat 部署(助理版支持) |
接下来
本文覆盖了克隆仓库、切换版本分支、装依赖、改配置和本地跑通,还没覆盖 UE5 与 MetaHuman Stream 形象对接、vLLM 本地模型部署、知识库 RAG 的完整配置,这些细节以各版本分支内的 README.md 为准。想跟进每个版本的更新记录,直接看仓库 README 里的更新日志;有改动想提回来,从对应版本分支拉代码即可。
【免费下载链接】Fayfay是一个帮助数字人(2.5d、3d、移动、pc、网页)或大语言模型(openai兼容、deepseek)连通业务系统的agent框架。项目地址: https://gitcode.com/GitHub_Trending/fay/Fay
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考