← 返回信息流
GitHub 热榜GitHub Trending · 日·7 天前

Airi:自托管的AI伴侣平台

原标题:moeru-ai/airi
TypeScript40,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 虚拟角色领域的几个核心痛点:

  1. 交互的被动性与局限性:现有的主流平台(如 Character.ai、JanitorAI)或本地工具(如 SillyTavern)主要局限于文本聊天或简单的视觉冒险游戏。用户无法让 AI 真正“看到”屏幕内容或参与复杂的游戏逻辑。
  2. 数据与体验的封闭性:以 Neuro-sama 为代表的顶级 AI 虚拟主播虽然具备游戏直播和实时互动能力,但其代码未开源,用户只能在直播期间被动观看,无法在离线后继续交互或自定义其行为。
  3. 部署与性能的平衡难题:许多 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》的能力。
    • 屏幕感知:能够“看到”用户正在编写的代码或观看的视频,实现边聊天边看屏幕的互动。
  • Memory(记忆系统)

    • 纯浏览器数据库:支持 DuckDB WASM 和 pglite,实现纯前端的数据持久化。
    • Alaya 记忆模块:正在开发中的高级记忆系统,用于长期记忆管理。
  • Ears(听觉与语音识别)

    • 支持浏览器音频输入及 Discord 频道音频输入。
    • 客户端侧语音识别(Client-side Speech Recognition)和说话检测(Talking Detection)。
  • Mouth(语音合成)

    • 集成 ElevenLabs 等高质量语音合成服务,提供自然的语音反馈。
  • Body(形象与动画)

    • 多模型支持:同时支持 Live2DVRM 格式模型。
    • 自动化动画:具备自动眨眼、自动注视(Auto look at)、空闲眼神移动等微表情功能。
    • 跨平台渲染:利用 WebGPU、WebAudio、WebAssembly 等技术,在浏览器中实现高性能渲染。

亮点 / 与同类相比

  1. Web 技术栈与原生性能的混合架构

    • 不同于完全依赖浏览器的方案,AIRI 的桌面版默认支持 NVIDIA CUDAApple Metal(通过 HuggingFace 和 candle 项目),无需复杂的环境依赖即可调用本地 GPU 进行推理。
    • 同时保留 Web 技术优势,支持 PWA(渐进式 Web 应用),可在移动端运行,并利用 Web Workers/WebSocket 处理后台任务。
  2. 深度游戏集成能力

    • 这是 AIRI 最显著的差异化优势。它不仅仅是聊天,还能通过 RCON API 等工具直接控制《Factorio》等游戏的服务器,甚至通过计算机视觉技术理解游戏画面。
  3. 模块化与开源生态

    • 项目拆分为多个子仓库(如 drizzle-duckdb-wasmautorioVelin 等),允许开发者按需引入组件。
    • 支持广泛的 LLM 提供商,从 OpenAI 到开源的 Ollama、vLLM、SGLang,用户可自由选择后端。
  4. 低门槛的参与方式

    • 即使不熟悉 Vue.js 或 TypeScript,艺术家、设计师或 VRChat 头像设计师也可以参与。项目欢迎 React、Svelte 等其他前端框架的开发者通过子目录扩展功能。

适合谁用 / 上手

适合人群:

  • AI 爱好者与开发者:希望研究 WebGPU 推理、RAG 记忆系统或游戏 AI 交互的工程师。
  • VTuber 制作人与 3D 艺术家:需要 Live2D/VRM 模型控制、动画绑定工具链的专业人士。
  • 寻求个性化数字伴侣的用户:希望拥有完全私有化、可自定义、能玩游戏且具备长期记忆的 AI 角色的个人用户。
  • 技术尝鲜者:对 Nix 包管理、Capacitor 移动端部署感兴趣的技术极客。

上手指南:

  1. 环境准备

    • 推荐使用 pnpm 进行包管理。
    • 安装依赖:pnpm i
  2. 启动开发服务器

    • Web 版本(浏览器)
      pnpm dev
      
    • 桌面版(Electron):需仔细阅读 CONTRING.md 配置环境,通常涉及原生库依赖。
    • 移动端(Capacitor)
      pnpm dev:pocket:ios --target <DEVICE_ID>
      
  3. Nix 用户一键运行

    • 如果系统启用 Flakes,可直接运行:
      nix run github:moeru-ai/airi
      
    • 在 NixOS 上可能需要进入 FHS 环境以解决共享库路径问题:
      nix develop .#fhs
      pnpm dev:tamagotchi
      
  4. 配置 LLM

    • 项目支持通过 xsai 配置多种后端。推荐用户使用 AIHubMixOpenRouter 以获取广泛的模型支持,也可自行部署 OllamavLLM302.AI 等本地/私有服务。
  5. 文档与贡献

    • 详细开发指令请参考 CONTRIBUTING.md
    • 文档站点提供多语言支持(包括简体中文),可通过 Crowdin 参与翻译改进。
查看原文 →github.com