rayenfeng/riko_project
The public version of the Riko Project
解决的问题
许多 AI 伙伴感觉很死板或依赖云服务,且难以定制。Riko 提供了一个紧凑的开源基础(不到 500 行代码),其个性、语音和外观均可通过单个配置文件进行控制。它将标准的聊天脚本转化为一种实体存在:您大声说话,她大声回答,并且她的 3D 虚拟形象会同步移动嘴唇,这一切都在您自己的电脑上完成。
工作原理
核心循环是:按下 Enter 开始录音,说话,再次按下 Enter 停止。语音通过本地的 Faster-Whisper 或在线的 Groq Whisper 转换为文本。该转录内容发送至 OpenAI GPT(任意模型,默认为 gpt-4.1-mini)生成回复。回复通过 GPT-SoVITS(本地语音克隆)或 Fish Audio(云端语音)转换为语音片段。最后,浏览器中显示的 VRM 虚拟形象使用 three.js 和 three-vrm 播放该片段并同步口型。每个步骤都在独立的文件中(asr.py, llm.py, tts.py, viewer.py),main.py 在循环中运行该序列。对话历史记录存储在 chat_history.json 中,以便她能记住之前的对话。
适用人群
此开源版本旨在为那些希望拥有一个简洁、可读的基础代码库,以便定制属于自己的 AI 伙伴的开发者和爱好者提供支持。它需要一定的终端操作能力(uv 和 Python),以及 OpenAI(可选 Fish Audio 或 Groq)的 API 密钥。它支持 Windows 10/11 或安装了 Python 3.11+ 的 Linux 系统。如果您更喜欢无代码体验或想要最新功能,README 中提供了付费选项(Patreon 上的完整源码或桌面应用程序)。
特点
- 按键通话语音输入:按下 Enter,说话,再次按下 Enter。
- 使用本地 Faster-Whisper 或云端 Groq 进行语音转文本。
- 由 OpenAI GPT 提供回复,支持您选择的任何模型。
- 使用 GPT-SoVITS(本地语音克隆)或 Fish Audio(云端)生成语音。
- 浏览器中的 VRM 虚拟形象支持口型同步;拖动旋转,右键拖动移动,滚动缩放。
- 所有个性、虚拟形象和语音设置均在一个 YAML 文件 (character_config.yaml) 中。
- 设置检查器,可报告缺失的密钥、服务器或文件。
- 总代码库不到 500 行,采用 MIT 许可。
- 聊天记录保存到您控制的文件中。
相关
- 项目
- 项目
- 项目
- 项目