ChatdollKit

让 3D 模型秒变能听会说的 AI 聊天角色

ChatdollKit 是一个基于 Unity 的开源框架,旨在将 3D 模型(如 VRM 模型)快速转化为具备语音交互能力的聊天机器人。它解决了开发者从零构建虚拟助手或 AI 角色时面临的复杂集成问题,提供了从语音识别、对话引擎到口型同步、表情动画的完整流水线。核心能力包括:支持 Azure、ChatGPT、Google 等多种对话服务,内置语音合成与识别模块,可自动生成自然的口型和眨眼等微表情,并支持自定义动画和交互逻辑。通过简单的配置,开发者即可让 3D 角色具备听、说、看、答的能力,适用于虚拟偶像、游戏 NPC、教育助手等场景。项目基于 C# 编写,与 Unity 生态无缝衔接,社区活跃,文档齐全。

开源 free 对话助手
访问官网 ↗ GitHub ↗ 文档 ↗
GitHub 星标 ★ 1225
维护状态 较活跃
是否开源 是
定价模式 free

项目数据

分类对话助手
开发团队uezo
所属国家
官网地址
定价模式free
价格说明开源项目,Apache-2.0许可证,可免费使用和修改,无付费版本。
访问状态
是否开源是
开源协议Apache-2.0
主要语言C#
技术栈/模型3d-model,ai-companion,azure,chatbot,chatgpt,unity,unity3d,virtualassistant,vrm,waifu
GitHub 星标★ 1225
30天Star增速
HF 下载量
上线时间2020-03-21 00:00:00
最近更新2026-09-23 00:00:00
维护状态较活跃
中文支持
访问方式
移动端支持
综合评分
收录时间2026-08-09
浏览次数6

使用教程

难度:进阶 约 30 分钟 部署方式:库/依赖 7 步

⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。

环境要求

  • Unity 编辑器(ChatdollKit 为 Unity 框架,支持 Windows/Mac/Linux/iOS/Android/VR/AR/WebGL 等平
  • 一个 VRM 格式的 3D 模型(用于新建带 VRM 模型的项目)
  • OpenAI API Key(演示场景的对话、语音合成、语音识别都读取它)
  • 可用的麦克风设备(WebGL 平台不支持麦克风,需改用 ChatdollMicrophone)

安装与启动步骤

  1. 1创建 Unity 项目

    在 Unity 中新建项目。注意:不要使用 SRP(Scriptable Render Pipeline)项目模板,因为依赖的 UniVRM 不支持 SRP。

  2. 2导入依赖

    按 README 说明先导入 ChatdollKit 及其依赖(README 未给出具体导入命令,请参照官方仓库与教学视频)。

  3. 3打开演示场景

    导入依赖后,在项目中打开场景 Demo/Demo08,用于快速验证框架是否可用。

  4. 4选择虚拟形象对象

    在 Demo08 场景的层级面板中选中名为 AIAvatarVRM 的对象,准备在 Inspector 上配置服务组件。

  5. 5配置 OpenAI API Key

    在 AIAvatarVRM 对象的 Inspector 中,分别为 ChatGPTService、OpenSpeechSynthesizer、OpenAISpeechListener 三个组件填入同一个 OpenAI API Key。

  6. 6在编辑器中运行

    点击 Unity 编辑器的 Play 按钮运行。若音量不合适可调整麦克风音量滑块。

  7. 7说出唤醒词测试

    对麦克风说唤醒词(如 hello / こんにちは)或长度超过 3 个字符的词,模型应回复 "Hi there!" 之类的内容。

关键配置

配置项必填说明示例
OpenAI API Key是供对话服务、语音合成与语音识别组件使用sk-xxxxxxxxxxxxxxxx
Wake Word否唤醒词,在 Inspector 设置,说出后模型开始应答hello
Microphone Volume否麦克风音量滑块,按实际收音效果调整1

如何确认成功

点击 Play 后模型出现待机动画与眨眼;说唤醒词或超过 3 个字符的词,模型会回复 "Hi there!"。

常见问题

Q:为什么 README 强调不要用 SRP 项目模板?

A:ChatdollKit 依赖的 UniVRM 不支持 Scriptable Render Pipeline,使用 SRP 模板会导致模型相关功能无法正常工作。

Q:WebGL 上麦克风不能用怎么办?

A:WebGL 不支持麦克风,README 建议改用与 WebGL 兼容的 ChatdollMicrophone 组件。

Q:WebGL 下 OVRLipSync 不可用?

A:改用 uLipSync,并在主脚本中把 modelController.SpeechController.HandlePlayingSamples 指向 uLipSync 的 OnDataReceived 回调。

Q:WebGL 构建后程序卡在 await?

A:WebGL 不支持线程,内置 Async/Await 不生效,README 建议改用 UniTask。

注意事项

  • 不要使用 SRP 项目模板,UniVRM 不支持 SRP。
  • WebGL 构建需 5-10 分钟(取决于机器性能),且调试困难,错误不会显示堆栈信息。
  • WebGL 中 HTTP 请求需要配置 CORS,且不支持 MP3 等压缩音频格式,语音合成请使用 WAV。
  • 若要在消息窗口显示多字节字符(如日文/中文),需导入含多字节字符的字体并设置到消息窗口。

核心亮点

  • 开箱即用:提供完整的语音识别、对话、口型同步流水线,几行代码即可接入 ChatGPT 等 LLM
  • 高度可定制:支持自定义动画、表情和交互逻辑,适配 VRM 等主流 3D 模型格式
  • 多平台支持:基于 Unity,可发布到 Windows、Mac、移动端及 VR 设备

不足之处

  • 依赖外部云服务(如 Azure、ChatGPT),需要网络和 API Key,离线场景受限
  • 文档/社区待观察:部分高级功能示例较少,新手可能需自行摸索

适用场景

  • 虚拟偶像/主播:让 3D 角色在直播中实时与观众对话
  • 游戏 NPC:为 RPG 或社交游戏中的角色赋予智能对话能力
  • 教育/陪伴:开发能互动的虚拟老师或 AI 伴侣

替代项目

Inworld AI、Convai、RPG Talk

项目介绍

ChatdollKit 是数字人3D领域的开源项目,由 uezo 开发,2020 年首次发布。

在全站 13,014 个收录项目中,它的 GitHub 星标数(1,225)位列前 30%,在数字人3D分类中处于中上游。

项目保持着较活跃的维护节奏,最近一次代码更新于 2026-09-23。Apache-2.0许可证,可免费使用和修改,无付费版本。

它主要面向的使用场景是:虚拟偶像/主播:让3D角色在直播中实时与观众对话。同类可对比的替代方案包括 Inworld AI、Convai、RPG Talk。

上一篇:handcrafted-persona-engine

下一篇:Soul-of-Waifu

同类项目推荐

A3D 开源

在 three.js 里直接调用 AI 生成纹理和素材,边建模边生成

3D x AI hybrid editor, built with three.js

★ 129 2026-08-09
cube 开源

用一句话生成 3D 模型,在 Roblox 里快速落地 AI 创作

Roblox Foundation Model for 3D Intelligence

★ 1254 2026-08-09
AG3D 开源

用2D图片直接生成3D虚拟人,告别昂贵扫描

Official code release for ICCV2023 paper AG3D: Learning to Generate 3D Avatars from ···

★ 272 2026-08-09
GameFactory-3A 开源

一条命令生成 3A 游戏资产,从模型到视频全自动

A comprehensive open-source 3A game-generation skill and asset framework.

★ 798 2026-08-21