Airi:自托管的AI伴侣平台
原标题:moeru-ai/airi
TypeScript★ 40,192 stars+56 今日
速览
Airi是一个自托管的AI伴侣项目,旨在打造拥有独立灵魂的虚拟角色,支持Web、macOS和Windows平台。其核心亮点包括实时语音聊天、Minecraft和Factorio等游戏的自动化游玩能力,致力于实现类似Neuro-sama的高智能交互体验。
AI 深度解读
这是什么
AIRI(由 moeru-ai 组织维护)是一个旨在复刻类似 Neuro-sama 的开源 AI 虚拟角色项目。它不仅仅是一个聊天机器人,而是一个拥有“灵魂容器”概念的数字化身(Digital Human / Cyber Waifu),旨在让用户能够随时随地拥有并控制自己的 AI 伴侣。
该项目主语言为 TypeScript,在 GitHub 上已获得极高关注度(★40192+)。与传统的 AI 聊天平台不同,AIRI 强调本地化部署、多模态交互以及游戏内实时互动能力。它构建在一个庞大的子项目生态系统之上(由 @proj-airi 组织管理),涵盖了 RAG(检索增强生成)、记忆系统、嵌入式数据库、Live2D 工具链等模块。
解决的问题
AIRI 主要解决了当前 AI 虚拟角色领域的几个核心痛点:
- 交互的被动性与局限性:现有的主流平台(如 Character.ai、JanitorAI)或本地工具(如 SillyTavern)主要局限于文本聊天或简单的视觉冒险游戏。用户无法让 AI 真正“看到”屏幕内容或参与复杂的游戏逻辑。
- 数据与体验的封闭性:以 Neuro-sama 为代表的顶级 AI 虚拟主播虽然具备游戏直播和实时互动能力,但其代码未开源,用户只能在直播期间被动观看,无法在离线后继续交互或自定义其行为。
- 部署与性能的平衡难题:许多 Web 技术驱动的 VTuber 项目牺牲了性能以换取跨平台兼容性,或者因依赖复杂的环境配置(如 CUDA、特定驱动)劝退普通用户。AIRI 试图在 Web 技术的灵活性与原生性能之间找到平衡。
核心功能
AIRI 的功能架构分为感知(Ears)、大脑(Brain)、记忆(Memory)、表达(Mouth)和躯体(Body)五个维度:
-
Brain(大脑与游戏能力):
- 支持主流 LLM API(通过
xsai库集成),包括 OpenAI、Anthropic Claude、Llama、Qwen 等。 - 游戏交互:具备玩《Minecraft》、《Factorio》(PoC 可用)、《Kerbal Space Program》以及合作游玩《Helldivers 2》的能力。
- 屏幕感知:能够“看到”用户正在编写的代码或观看的视频,实现边聊天边看屏幕的互动。
- 支持主流 LLM API(通过
-
Memory(记忆系统):
- 纯浏览器数据库:支持 DuckDB WASM 和 pglite,实现纯前端的数据持久化。
- Alaya 记忆模块:正在开发中的高级记忆系统,用于长期记忆管理。
-
Ears(听觉与语音识别):
- 支持浏览器音频输入及 Discord 频道音频输入。
- 客户端侧语音识别(Client-side Speech Recognition)和说话检测(Talking Detection)。
-
Mouth(语音合成):
- 集成 ElevenLabs 等高质量语音合成服务,提供自然的语音反馈。
-
Body(形象与动画):
- 多模型支持:同时支持 Live2D 和 VRM 格式模型。
- 自动化动画:具备自动眨眼、自动注视(Auto look at)、空闲眼神移动等微表情功能。
- 跨平台渲染:利用 WebGPU、WebAudio、WebAssembly 等技术,在浏览器中实现高性能渲染。
亮点 / 与同类相比
-
Web 技术栈与原生性能的混合架构:
- 不同于完全依赖浏览器的方案,AIRI 的桌面版默认支持 NVIDIA CUDA 和 Apple Metal(通过 HuggingFace 和 candle 项目),无需复杂的环境依赖即可调用本地 GPU 进行推理。
- 同时保留 Web 技术优势,支持 PWA(渐进式 Web 应用),可在移动端运行,并利用 Web Workers/WebSocket 处理后台任务。
-
深度游戏集成能力:
- 这是 AIRI 最显著的差异化优势。它不仅仅是聊天,还能通过 RCON API 等工具直接控制《Factorio》等游戏的服务器,甚至通过计算机视觉技术理解游戏画面。
-
模块化与开源生态:
- 项目拆分为多个子仓库(如
drizzle-duckdb-wasm、autorio、Velin等),允许开发者按需引入组件。 - 支持广泛的 LLM 提供商,从 OpenAI 到开源的 Ollama、vLLM、SGLang,用户可自由选择后端。
- 项目拆分为多个子仓库(如
-
低门槛的参与方式:
- 即使不熟悉 Vue.js 或 TypeScript,艺术家、设计师或 VRChat 头像设计师也可以参与。项目欢迎 React、Svelte 等其他前端框架的开发者通过子目录扩展功能。
适合谁用 / 上手
适合人群:
- AI 爱好者与开发者:希望研究 WebGPU 推理、RAG 记忆系统或游戏 AI 交互的工程师。
- VTuber 制作人与 3D 艺术家:需要 Live2D/VRM 模型控制、动画绑定工具链的专业人士。
- 寻求个性化数字伴侣的用户:希望拥有完全私有化、可自定义、能玩游戏且具备长期记忆的 AI 角色的个人用户。
- 技术尝鲜者:对 Nix 包管理、Capacitor 移动端部署感兴趣的技术极客。
上手指南:
-
环境准备:
- 推荐使用
pnpm进行包管理。 - 安装依赖:
pnpm i
- 推荐使用
-
启动开发服务器:
- Web 版本(浏览器):
pnpm dev - 桌面版(Electron):需仔细阅读
CONTRING.md配置环境,通常涉及原生库依赖。 - 移动端(Capacitor):
pnpm dev:pocket:ios --target <DEVICE_ID>
- Web 版本(浏览器):
-
Nix 用户一键运行:
- 如果系统启用 Flakes,可直接运行:
nix run github:moeru-ai/airi - 在 NixOS 上可能需要进入 FHS 环境以解决共享库路径问题:
nix develop .#fhs pnpm dev:tamagotchi
- 如果系统启用 Flakes,可直接运行:
-
配置 LLM:
- 项目支持通过
xsai配置多种后端。推荐用户使用 AIHubMix 或 OpenRouter 以获取广泛的模型支持,也可自行部署 Ollama、vLLM 或 302.AI 等本地/私有服务。
- 项目支持通过
-
文档与贡献:
- 详细开发指令请参考
CONTRIBUTING.md。 - 文档站点提供多语言支持(包括简体中文),可通过 Crowdin 参与翻译改进。
- 详细开发指令请参考
查看原文 →github.com
