![图片[1]-AI时代,老夫掐指一算,你缺个AI 赛博女友!无需 API、完全免费、实时语音互动,零延迟打造专属 AI 数字女友,附本地部署教程!](https://www.mohe-sc.com/wp-content/uploads/2026/08/AI时代,老夫掐指一算,牛马你缺个AI-赛博女友!无需-API、完全免费、实时语音互动,零延迟打造专属-AI-数字女友,附本地部署教程!-1024x576.jpg)
近两年,随着大语言模型、语音合成(TTS)、数字人驱动和实时口型同步技术不断成熟,越来越多开发者开始尝试打造属于自己的 AI 数字人。相比传统聊天机器人,如今的 AI 不仅能够理解上下文、进行自然对话,还可以拥有专属形象、实时语音、表情动作,甚至像真人一样与你进行面对面交流。
不过,市面上大多数 AI 陪伴产品依然存在不少限制,例如需要持续支付 API 费用、聊天次数受限、响应速度受网络影响,或者用户数据需要上传到云端,难以满足对隐私和低延迟有较高要求的用户。
而近期备受关注的 LiveTalking 开源项目,则提供了一套更加完整的解决方案。它支持 本地部署、实时语音交互、数字人口型同步、声音克隆、多模型扩展以及 WebRTC 低延迟推流,开发者可以结合本地大语言模型,打造一位真正属于自己的 AI 数字女友、虚拟主播或智能数字助手,无需长期依赖第三方云服务
部署成功是什么样的?
项目部署完成在本地是以一个本地网页展示的,背景右侧是数字人,中间是语音球。你对着麦克风说话,赛博女友(男友)会用你克隆(指定)的音色和你互动聊天,嘴型跟着运动,有着丰富的表情和动作!理论上借助AI可以无限扩展后宫的数量。
![图片[2]-AI时代,老夫掐指一算,你缺个AI 赛博女友!无需 API、完全免费、实时语音互动,零延迟打造专属 AI 数字女友,附本地部署教程!](https://pic.turnfish.top/images/2026/08/06/AIAI--API-AI-0.jpg)
LiveTalking 是什么?
LiveTalking 是一套面向实时数字人的开源框架,定位于 实时交互式 AI 数字人平台。项目采用模块化设计,可自由接入本地或远程大语言模型、TTS 引擎、数字人口型驱动模型以及多种视频输出方式,支持二次开发和私有化部署。
相比传统 AI 聊天工具,LiveTalking 更关注实时互动体验,可实现文字、语音、数字人形象和口型同步的一体化输出。
LiveTalking 核心能力
| 功能模块 | 功能说明 |
|---|---|
| 实时 AI 对话 | 支持本地或远程大模型,实现自然语言实时交流。 |
| 数字人口型同步 | 根据语音自动驱动人物嘴型,实现更真实的说话效果。 |
| 声音克隆 | 支持接入多种 TTS 引擎,打造专属声音。 |
| 低延迟交互 | 基于 WebRTC,实现接近实时的视频互动体验。 |
| 多模型扩展 | 支持 Wav2Lip、MuseTalk、ER-NeRF 等数字人模型。 |
| 多种输出方式 | 支持浏览器、RTMP 推流及虚拟摄像头输出。 |
为什么越来越多人开始本地部署 AI 数字人?
过去,大多数 AI 数字人产品依赖云端 API,不仅长期使用成本较高,还会受到网络延迟、接口限制以及隐私安全等因素影响。随着开源模型不断成熟,本地部署逐渐成为越来越多开发者的选择。
本地部署相比云端有哪些优势?
| 对比项目 | 云端 API | 本地部署 |
|---|---|---|
| 使用成本 | 按 Token 或次数计费 | 一次部署,长期使用 |
| 响应速度 | 受网络影响 | 本地推理,延迟更低 |
| 数据隐私 | 数据上传云端 | 数据保留本地 |
| 可定制能力 | 功能有限 | 可自由修改模型和工作流 |
| 扩展能力 | 依赖官方接口 | 可接入各种开源模型 |
LiveTalking 支持哪些核心技术?
LiveTalking 并不是单一模型,而是一套完整的数字人框架,可自由组合不同 AI 模块。
LiveTalking 技术架构
| 模块 | 主要作用 |
|---|---|
| LLM(大语言模型) | 负责理解用户输入并生成对话内容,可接入 Qwen 等模型。 |
| TTS 语音合成 | 支持 EdgeTTS、GPT-SoVITS、CosyVoice 等多种语音方案。 |
| 数字人驱动 | 使用 Wav2Lip、MuseTalk、ER-NeRF 等模型生成口型动画。 |
| 视频推流 | 支持 WebRTC、RTMP 及虚拟摄像头等输出方式。 |
| 插件系统 | 支持开发者扩展 Avatar、TTS、Output 等模块。 |
不只是 AI 赛博女友,还能打造更多数字人应用
虽然很多用户将 LiveTalking 用于打造”AI 赛博女友”,但它的应用范围远不止于此。
| 应用场景 | 使用价值 |
|---|---|
| AI 数字女友 | 实时聊天、语音互动、个性化陪伴。 |
| AI 数字男友 | 构建个性化虚拟角色。 |
| AI 虚拟主播 | 直播互动、实时播报。 |
| 企业数字员工 | 智能客服、业务咨询、接待服务。 |
| 教育培训 | AI 教师、在线教学、课程讲解。 |
| 品牌 IP | 打造品牌数字形象,提高用户互动体验。 |
LiveTalking 支持哪些数字人模型?
为了兼顾不同硬件配置和应用需求,LiveTalking 已支持多个主流数字人驱动模型。
本地部署需要哪些环境?
官方建议使用较新的 Python 与 CUDA 环境,并根据显卡选择对应的 PyTorch 版本。同时,项目提供 Docker 等多种部署方式,方便开发者快速搭建测试环境。
| 环境 | 推荐配置 |
|---|---|
| Python | 3.12 及以上 |
| CUDA | 12.x(根据显卡环境选择) |
| 系统 | Windows / Linux |
| 部署方式 | Conda、Docker、本地部署均可 |
硬件要求(实测参考)
| 配置 | 推荐程度 | 说明 |
|---|---|---|
| 内存 | 16G(可运行) | 64G最佳体验 |
| 硬盘 | 60G(SSD) | 80G最佳体验 |
| 16G+ 显存 | 最佳体验 | 可同时跑大模型+口型+语音 |
| RTX 3060 8G/12G | 可运行 | wav2lip模型,基础流畅 |
| RTX 3080 / 4070 及以上 | 推荐 | 更流畅,支持更高画质模型 |
我用的是 RTX 3090(24 GB)。显存不够的话后面会说怎么换小点的模型。(换小点的模型其实影响不大,因为是语言模型无需编程)
本地部署教程:
1、配置 WSL
新建文件 C:\Users\你的用户名\.wslconfig(没有就创建),内容:
[wsl2]
memory=32GB
networkingMode=mirrored
[experimental]
hostAddressLoopback=true
内存按自己机器改,一般给物理内存的一半。
hostAddressLoopback=true 是整个教程里最隐蔽的一个开关。
没有它,后面的 WebRTC 连接会永远失败,而且报错完全看不出原因——浏览器只显示一句莫名其妙的 JSON 解析错误,ICE 候选列表是空的。我在这上面卡了一个多小时。
2、lama.cpp + 大模型
- 模型(按显存选):
| 显存 | 推荐模型 |
|---|---|
| 16 GB 以上 | Qwen3-14B-Instruct-Q4_K_M |
| 8–16 GB | Qwen3-8B-GGUF 选 Q4_K_M |
| 8 GB 以下 | Qwen3-4B-GGUF |
3、模型下载:
- 点击下面的模型网盘下载连接,下载适合的模型
llama.cpp 解压后,在根目录新建 models 文件夹,把 .gguf 丢进去。
4、启动
- CMD 里执行(路径按自己的改):
llama-server -m E:\llama.cpp\models\Qwen3-14B-Instruct-Q4_K_M.gguf ^
-np 1 -c 8192 -fa on --temp 1.0 --top-p 0.95 ^
--host 0.0.0.0 --port 8090
启动后这个窗口不要关。
参数说明:--host 0.0.0.0 必须加,否则 WSL 里访问不到-c 8192 上下文长度。语音对话每轮就两三句,8K 足够,调大只会白吃显存--temp 1.0 温度。默认值偏保守,调高一点回复更活泼
开启 WSL2/Hyper-V 之后,Windows 会随机预留一批端口,落在里面的端口谁都绑不上,而且
netstat 看不到任何占用——你会以为是玄学。查一下自己的保留区间:
netsh interface ipv4 show excludedportrange protocol=tcp
5、下载数字人底图
- 不想麻烦的可以直接使用我下方提供的数字人底图,直接保存下载即可。
- 想自己生成的话也可以,用 Flux / ChatGPT Image 都行,提示词:
Cinematic portrait photography, 16:9 landscape composition.
A young East Asian woman in her early twenties with long, straight, jet-black hair hanging naturally;
she is seated in a dimly lit room at night, framed from the waist up.
[Composition] The subject is positioned in the right third of the frame, body slightly angled toward the camera, gazing directly into the lens.
The left two-thirds of the frame consist of expansive, dark negative space, approaching pure black.
[Lighting] The sole light sources are the cool glow of a screen from the front-left and a low-color-temperature desk lamp;
light and shadow define her face, with the right cheek receding into shadow and soft, warm rim lighting tracing the edges of her hair.
[Pose/Expression] Lips naturally closed; expression calm and relaxed. Hands should not obscure the chin or mouth.
[Texture] Shallow depth of field, soft film grain, low-contrast low-key aesthetic, and realistic skin texture.
电影感人像摄影,16:9 横版构图。
一位二十出头的东亚年轻女性,乌黑长直发自然垂落,
坐在夜晚昏暗的房间里,上半身入镜。
【构图】人物位于画面右侧三分之一处,身体略微侧向镜头,视线看向镜头。
画面左侧三分之二为大片暗部负空间,几乎接近纯黑。
【光线】唯一光源来自左前方的屏幕冷光与一盏低色温台灯,
面部形成明暗交界,右侧脸颊隐入阴影,发丝边缘有柔和暖色轮廓光。
【状态】嘴唇自然闭合,表情平静放松。手不要遮挡下巴与嘴部。
【质感】浅景深,柔和胶片颗粒,低对比暗调,真实皮肤质感。
负面提示词:
张嘴, 说话, 露齿, 正面平光, 明亮背景, 高对比, 过曝, 人物居中,
多人, 手遮挡嘴部, 文字, 水印, 塑料皮肤, 过度磨皮, 卡通, 3D渲染
构图很关键。 人物靠右、左边留大片暗部,是为了给中间的语音球和文字留位置。而且暗光侧脸能很好地掩盖口型模型的画质短板。
6、ComfyUI 生成数字人视频
- 下载安装 ComfyUI,进去后在模型面板里选 Wan2.2,直接点开会自动下载模型。
参数
| 项 | 值 |
|---|---|
| width × height | 704 × 896 |
| duration | 5 秒 |
| fps | 25 |
| prompt_enhance | 关闭 |
提示词:
只需要这一段
有些教程会让你生成 idle / listening / speaking 三段视频。那是”状态切换”方案用的——不做真口型同步,只是按对话状态切换预录片段。
我们做的是真口型同步,嘴部由模型实时生成,只需要一段闭嘴的底版视频。 生成三段纯属浪费时间。
⚠️ 三个必踩的坑
1. prompt_enhance 必须关掉。 它会用 LLM 把你的提示词扩写成”文生视频”描述,整个场景会被重新想象。我第一次没关,输入是一张室内人像,输出变成了夜景窗户前穿蓝衬衫的另一个人。
2. 输出宽高比要贴近输入图。 输入竖图、输出设成横版的话,模型要凭空补出左右两大块内容,必然跑飞。
3. 提示词只写动作,绝不重复描述外观。 一旦重新描述人物长相,模型会照着文字重新合成,而不是让你那张图动起来。
另外,Wan2.2 原生就是 5 秒(81 帧 @16fps)。设成 20 秒它会分段生成,每段都从同一张图起,动作会明显重复。
7、录参考音频(声音克隆)
这一步决定了她的声音是谁。跳过的话音色是默认的,而且每次回复都会漂。录一段 5–15 秒的目标音色:干净、无背景音、单人说话、语气自然。保存为 wav 或 mp3,放到桌面的 AI 文件夹,命名 ref.wav。把这段录音说的原话逐字记下来,后面要填进配置里,错一个字都会影响克隆质量。
情绪也会被克隆。 我用的那段带撒娇和抱怨的语气,克隆出来的所有回复都会带这个基调。想要中性效果就换一段平铺直叙的录音。
8、下载一键部署包
下载本文附带的部署包,解压到桌面新建的 AI 文件夹。
| 文件 | 用途 |
|---|---|
install-voice.sh | 语音对话部分一键安装 |
start-voice.sh | 语音服务启动 / 停止 / 日志 |
start-livetalking.sh | 口型服务启动 / 停止 |
avatar-sync.js | 音频转发 + 数字人背景层 |
wav2lip256.pth | 口型模型权重 |
wav2lip256_avatar1.tar.gz | 官方示例形象(用来验证链路) |
后两个是 LiveTalking 的模型文件,原本要去 Google Drive 下载。我一并打包进来了,省得折腾。
把第四步的 idle.mp4 和第五步的 ref.wav 也放进这个文件夹,最终结构:
C:\Users\你的用户名\Desktop\AI\
├── install-voice.sh
├── start-voice.sh
├── start-livetalking.sh
├── avatar-sync.js
├── wav2lip256.pth
├── wav2lip256_avatar1.tar.gz
├── idle.mp4 ← 你自己生成的
└── ref.wav ← 你自己录的
9、安装 WSL2
PowerShell(管理员)运行下列代码:
wsl --update
wsl --install -d Ubuntu-24.04
装完重启电脑,让第一步的 .wslconfig 生效,重启后打开 Ubuntu 终端,设置用户名密码,然后验证显卡直通:
nvidia-smi
⚠️ WSL 里不要装显卡驱动
驱动只装 Windows 侧。在 WSL 里 apt install nvidia-driver 会覆盖掉直通的 libcuda.so,GPU 直接不可用。
10、把文件拷进 WSL
Ubuntu 终端里
# 1. 拷贝(把 LINGDU 换成你的 Windows 用户名)
mkdir -p ~/setup
cp -r "/mnt/c/Users/LINGDU/Desktop/AI/." ~/setup/
cd ~/setup
ls -la
# 2. 转换行尾 —— 关键步骤
sudo apt update && sudo apt install -y dos2unix
dos2unix *.sh
# 3. 加执行权限
chmod +x *.sh
为什么要转行尾,文件在 Windows 上存过就会变成 CRLF 行尾,直接执行会报:
bad interpreter: /usr/bin/env bash^M: No such file or directory
⚠️ 不要在 /mnt/c 下直接跑
跨文件系统读写慢一个数量级,而且 chmod +x 在 Windows 分区上不生效。必须拷到 ~ 再执行。
11、安装语音对话部分
脚本会自动完成:系统依赖 → Python 3.12 环境 → speech-to-speech(含 VAD / Whisper / Qwen3-TTS)→ 前端页面 → 打补丁。
大概 10–20 分钟,取决于网速,装完把参考音频放到位:
ffmpeg -i ~/setup/ref.wav -ac 1 -ar 16000 -c:a pcm_s16le ~/s2s/ref.wav
# 确认格式:必须是 pcm_s16le / 16000 / 1 声道
ffprobe -v error -show_entries stream=sample_rate,channels,codec_name \
-show_entries format=duration -of default=nw=1 ~/s2s/ref.wav
然后把录音原话填进配置:
sed -i 's|^REF_TEXT=.*|REF_TEXT="靠杯了,你终于上线了,我既开心又有点怨你,嗯;小雅一个人在这里等你,等的都快委屈死了!"|' ~/setup/start-voice.sh
grep -n "^REF_TEXT=" ~/setup/start-voice.sh
原话必须逐字一致。 差一个字都会影响克隆质量,语气词「嗯」「啊」也要照录音写上。
先单独测一次
浏览器打开:http://localhost:7860/ 点中间的球,允许麦克风,说句话试试。
12、安装口型同步(LiveTalking)
新开一个 Ubuntu 终端:
mkdir -p ~/livetalking && cd ~/livetalking
git clone https://github.com/lipku/LiveTalking.git
cd LiveTalking
uv venv --python 3.10 .venv-lt
source .venv-lt/bin/activate
uv pip install torch==2.5.0 torchvision==0.20.0 torchaudio==2.5.0 \
--index-url https://download.pytorch.org/whl/cu124
uv pip install -r requirements.txt
sudo apt install -y ffmpeg libgl1 libglib2.0-0
13、放置模型
模型已经在部署包里了(第八步一起拷进 ~/setup 了),直接就位:
cd ~/livetalking/LiveTalking
# 权重 —— 注意要改名成 wav2lip.pth
cp ~/setup/wav2lip256.pth models/wav2lip.pth
# 官方示例形象
tar -xzf ~/setup/wav2lip256_avatar1.tar.gz -C data/avatars/
# 确认
ls -lh models/ && ls data/avatars/
wav2lip256.pth 必须重命名成 wav2lip.pth,代码里是写死的路径,名字不对会报 FileNotFoundError。
这两个文件原本要去 LiveTalking README 里的 Google Drive 下载,我已经打包进部署包了。想自己下的话链接在他们仓库首页。
14、先用官方形象验证
source .venv-lt/bin/activate
python app.py --transport webrtc --model wav2lip \
--avatar_id wav2lip256_avatar1 \
--stun 'stun:stun.l.google.com:19302'
打开 :http://localhost:8010/index.html, 点「开始连接」,等人物出画,在右侧文本框输入一句中文点发送。
人物动 + 有声音 + 嘴型跟着动,这一层就通了。
同时看终端日志里的 inferfps 和 finalfps,两个都要 ≥25 才算实时。我这里是 92 / 25。
15、换成自己的数字人形象
LiveTalking 自带网页生成工具,打开 http://localhost:8010/avatar.html
| 字段 | 填什么 |
|---|---|
| 算法模型 | Wav2Lip |
| Avatar ID | wav2lip256_myavatar(保留 wav2lip256_ 前缀) |
| 视频文件 | 你的 idle.mp4 |
点「提交生成任务」,等右侧任务列表显示 COMPLETED(很快,几十秒)。
文件选择器里找 WSL 路径的话,地址栏输入:
\\wsl$\Ubuntu-24.04\home\你的用户名\setup
16、用新形象重启
Ctrl+C 停掉,改用你的 avatar ID:
cd ~/setup
AVATAR_ID=wav2lip256_myavatar ./start-livetalking.sh
觉得好用就直接改进脚本,省得每次输:
sed -i 's/wav2lip256_lingdu/wav2lip256_myavatar/' ~/setup/start-livetalking.sh
如果你的形象是手托腮的姿势,重点看说话时手和下巴交界处会不会出糊边——口型模型替换的是嘴部区域,手越过下颌线就可能出鬼影。手放低一点就没问题。
17、正式启动
启动顺序(三个窗口,顺序不能反)
① Windows CMD —— 大模型
llama-server -m E:\llama.cpp\models\Qwen3-14B-Instruct-Q4_K_M.gguf ^
-np 1 -c 8192 -fa on --temp 1.0 --host 0.0.0.0 --port 8090
② Ubuntu 窗口 A —— 口型服务
cd ~/setup && ./start-livetalking.sh
③ Ubuntu 窗口 B —— 语音服务
cd ~/setup && ./start-voice.sh
18、一键启动脚本
每次开三个窗口有点烦,桌面建个 启动.bat:
@echo off
start "llama-server" cmd /k "cd /d E:\llama.cpp && llama-server -m E:\llama.cpp\models\Qwen3-14B-Instruct-Q4_K_M.gguf -np 1 -c 8192 -fa on --temp 1.0 --host 0.0.0.0 --port 8090"
timeout /t 25
start "livetalking" wsl -d Ubuntu-24.04 -- bash -lc "cd ~/setup && ./start-livetalking.sh"
timeout /t 30
wsl -d Ubuntu-24.04 -- bash -lc "cd ~/setup && ./start-voice.sh"
timeout /t 10
start http://localhost:7860/
19、排错速查
| 现象 | 处理 |
|---|---|
bad interpreter: ^M | dos2unix *.sh |
| WebRTC 一直连不上 | .wslconfig 加 hostAddressLoopback=true,然后 wsl --shutdown |
Unexpected non-whitespace character after JSON | 服务端 500 了,去看服务端终端的报错 |
malformed uri: invalid scheme | --stun 不能传空字符串 |
| 说话完全没反应 | 前端 NOISE GATE 拖到最左 |
| 抢答严重 | MIN_SILENCE_MS 调到 1200 |
| 回复文不对题 | 见上一条,同时确认没开实时转写 |
| 音色每次都变 | 语音合成模型要用 -Base 版本,不是 -CustomVoice |
| 声音像变声器 | 改 avatar-sync.js 里的 sampleRate(我这里是 16000) |
| 端口绑不上但 netstat 看不到占用 | Hyper-V 保留端口,换个端口 |
| GPU 100% 但没进度 | 显存溢出到内存了。NVIDIA 控制面板 → 管理 3D 设置 → 关掉”CUDA 系统内存回退策略” |
| 麦克风没反应 | 必须走 localhost 或 HTTPS,用内网 IP 拿不到麦克风权限 |
| 休眠唤醒后连不上 | wsl --shutdown 重启一次 |
| 端口被占用起不来 | ./start-voice.sh stop 再启动 |
20、显存不够怎么办
| 改动 | 省 |
|---|---|
| 大模型换 Qwen3-8B | ~3 GB |
| 大模型换 Qwen3-4B | ~6 GB |
STT_MODEL=medium(改 start-voice.sh) | ~1.5 GB |
-c 4096(缩短上下文) | ~1 GB |
语音对话场景对模型能力要求不高——回复本来就控制在两三句,8B 和 14B 的差别听感上很难分辨,但延迟收益很明显。
LiveTalking 更适合哪些用户?
| 用户类型 | 推荐理由 |
|---|---|
| AI 开发者 | 快速搭建数字人及 AI Agent 项目。 |
| 独立开发者 | 构建个性化 AI 陪伴应用。 |
| 数字人创业团队 | 降低开发成本,提高可扩展性。 |
| 直播团队 | 打造 AI 主播及实时互动直播。 |
| 企业用户 | 部署智能客服、数字员工及品牌 IP。 |
总结:开源数字人正在进入本地 AI 时代
随着大语言模型、语音合成和数字人技术不断成熟,AI 陪伴已经从单纯的文字聊天,逐步发展为集 语音、视频、数字形象和实时互动 于一体的综合体验。
LiveTalking 的出现,不仅降低了 AI 数字人的部署门槛,也让开发者能够通过本地部署、自定义模型和插件扩展,构建更加自由、安全且低延迟的数字人应用。对于希望打造 AI 虚拟女友、AI 主播、数字员工或其他实时交互产品的开发者来说,它提供了一套完整且开放的技术框架。






![年底收官巨献,AIGC行业全平台设计工具网站正式上线,助力创作者突破创作瓶颈,开启高效创作之旅[已下线]-MOHE素材库-设计行业的乐园,各类素材的矿山!](https://www.mohe-sc.com/wp-content/uploads/2024/12/Ai.turnfish.top_-800x450.jpg)
![百度网盘直链解析彻底解除百度云限速限制[利用IDM工具在线解析网页版]-MOHE素材库-设计行业的乐园,各类素材的矿山!](http://mohe-sc.com/wp-content/uploads/2021/07/baiduwangpan-400x273.png)

![关于本站启用[注册邀请码]的说明-MOHE素材库-设计行业的乐园,各类素材的矿山!](https://www.mohe-sc.com/wp-content/uploads/2022/10/2023_09xI0Dxg_-800x448.png)






暂无评论内容