ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

AIRI 开源项目深度解读:自托管 AI 虚拟伙伴的多 Stage 架构与 Web 技术底座

AIRI 开源项目深度解读:自托管 AI 虚拟伙伴的多 Stage 架构与 Web 技术底座 AIRI 开源项目深度解读自托管 AI 虚拟伙伴的多 Stage 架构与 Web 技术底座【免费下载链接】airi Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-samas altitude. Capable of realtime voice chat, Minecraft, Factorio playing. Web / macOS / Windows supported.项目地址: https://gitcode.com/GitHub_Trending/ai/airiAIRI 是一个受 Neuro-sama 启发的开源 AI 虚拟角色cyber-waifu / 数字生命体项目目标是让每个人都能自托管、随时随地带在身边的数字伙伴。本指南基于仓库内 docs/README.vi.md 展开结合仓库源码与配置文件系统讲解 AIRI 的项目定位、以 Web 技术为核心的跨端架构、Stage Web / Stage Tamagotchi / Stage Pocket 三种形态的开发与运行方式、LLM 供应商生态以及当前能力路线图读完即可了解如何从零启动并深入定制这套系统。项目定位把Neuro-sama变成你自己拥有的一瓶灵魂AIRI 的灵感直接来源于 VTuber [Neuro-sama]——一位能一边玩游戏、一边与观众实时互动聊天的虚拟主播。原文档指出这类数字人类digital human体验固然惊艳但闭源意味着直播结束后你无法再与她交互。Character.ai、JanitorAI 或自托管的 SillyTavern 等方案能解决角色扮演与聊天却做不到陪你打游戏、看你写代码、边玩边聊。AIRI 给出的答案是让你拥有属于自己的数字实体随时、随地、低成本。它不是一个聊天壳子而是一整套以 LLM 为大脑、以 VRM / Live2D 为身体、以 Web 能力为神经网络的完整虚拟角色运行时。核心设计用 Web 技术栈搭建的数字生命体与多数 VTuber 项目不同AIRI 从第一天起就围绕一组开放 Web 标准构建见原文档Điều này có nghĩa là...小节WebGPU浏览器内的 GPU 计算与渲染为本地推理与 3D 渲染铺路WebAudio音频输入输出的底层处理支撑实时语音链路Web Workers把音频、推理等重任务移出主线程避免阻塞 UIWebAssembly让 ONNX Runtime、Transformers.js 等本地推理运行时可以在浏览器中执行WebSocket连接桌面端 server channel、Discord 语音、游戏机器人等外部通道。这些标准直接体现在仓库依赖中根目录 pnpm-workspace.yaml 的 catalog 里可以看到onnxruntime-web、huggingface/transformers、ricky0123/vad-web、mediapipe/tasks-vision等 Web 端 AI 运行库apps/stage-web/src/main.ts 则展示了 Stage Web 如何以 Vue 3 Pinia Tres.js 组装出整个应用。值得强调的是原文档明确区分了两种运行形态浏览器版只是能力演示证明这些能力在 browser / webview 中可行桌面版才是性能完全体——借助 HuggingFace 的candle项目桌面版默认可调用NVIDIA CUDA与Apple Metal进行本地加速而无需用户手工管理复杂的原生依赖图形、布局、动画与插件系统仍复用 Web 技术以便扩展。多 Stage 应用架构仓库采用 pnpm monorepo 组织根目录 package.json 声明了apps/**、packages/**、integrations/**、server/**等工作区。原文档给出了一张清晰的架构图完整复刻如下这条链路揭示了几个关键设计三个前端 Stage 共享同一套stage-ui组件库与core-agent/core-character领域层桌面端通过server-runtime提供本地服务端通道server-sdk成为浏览器端与桌面运行时之间的桥梁Discord、Minecraft 等集成也走server-sdk从而让不同入口Web、桌面、聊天机器人共享同一套大脑逻辑。托管后端Caddy api-server auth-server PostgreSQL Redis对应 server/ 目录下的 api / auth 两个服务。安装与快速开始一键安装桌面版原文档给出三种平台包管理器安装方式可直接使用Windows 使用 wingetwinget install MoeruAI.AIRI或使用 Scoopscoop bucket add airi https://github.com/moeru-ai/airi scoop install airi/airimacOS 使用 Homebrew Cask无需自定义 tapbrew install --cask airi从源码启动开发环境项目要求 pnpm根 package.json 声明packageManager: pnpm11.24.0。原文档给出的最简启动流程pnpm i pnpm dev其中pnpm dev实际执行的是pnpm -r -F proj-airi/stage-web dev即默认启动Stage Web浏览器版。postinstall钩子会先安装 simple-git-hooks 并构建全部 packages因此首次安装耗时较长属正常现象。桌面版开发请先阅读贡献指南配置正确的环境后再使用下面的命令。Stage 开发详解Stage Web浏览器版apps/stage-web 是对外演示的浏览器版本。启动命令与根pnpm dev等价pnpm dev需要 HTTPS例如调试麦克风权限时可用pnpm dev:web:httpsVite 会通过 mkcert 生成本地证书见 apps/stage-web/package.json 中的dev:https脚本。在 apps/stage-web/src/main.ts 可以看到它的运行时组装路由采用 vue-router 自动路由 虚拟布局状态管理使用 Pinia通过proj-airi/stage-ui/libs/pinia的setupSynced做跨标签页同步i18n 使用 vue-i18n3D 场景使用 Tres.js。值得一提的细节是当部署到 HuggingFace Space 这类无法配置 SPA fallback 的环境时代码会根据VITE_APP_TARGET_HUGGINGFACE_SPACE环境变量自动切换到createWebHashHistory()hash 路由。Stage Tamagotchi桌面版apps/stage-tamagotchi 是 Electron 桌面版也是功能最完整的形态。启动命令pnpm dev:tamagotchi对应脚本electron-vite dev见 apps/stage-tamagotchi/package.json。它的 electron.vite.config.ts 展示了主进程 / preload / renderer 三段式构建main将server-runtime打包进主进程并提供vendor-debug、vendor-h3手动分块避免 side-effect 污染主入口preload同时产出index与beat-sync两个入口renderer复用stage-ui、stage-pages、stage-layouts等共享包并内置 Live2D SDK 下载与模型资源下载插件DownloadLive2DSDK与Download(...)模型来源与缓存目录见配置内stageUIAssetsRoot/sharedCacheDir。开发模式下 renderer 会注入import.meta.env.RUNTIME_ENVIRONMENT electron与URL_MODE server生产模式则切换为URL_MODE file——这正是开发时连 server 通道、生产时走本地文件的两种资源寻址策略。Tamagotchi 还内置了 Nix 支持。原文档说明启用 flakes 后可直接运行nix run github:moeru-ai/airi对应的 Nix 打包定义位于仓库根目录 flake.nix、default.nix 与 nix/ 目录含assets-hash.txt、pnpm-deps-hash.txt等锁定文件。在 Wayland 环境下如需 X11 兼容可用pnpm dev:tamagotchi:xwayland。Stage Pocket移动版实验性apps/stage-pocket 是基于 Capacitor 的移动端形态目录内同时含android/与ios/原生工程。原文档给出了完整的 iOS 联调流程。先启动 Pocket 的 Web 开发服务器pnpm dev:pocket启动后会输出本机局域网地址类似ROLLDOWN-VITE v7.3.0 ready in 1073 ms ➜ Local: https://localhost:5273/ ➜ Network: https://ip-will-be-here:5273/ ➜ Vue DevTools: Open https://localhost:5273/__devtools__/ as a separate window ➜ Vue DevTools: Press Option(⌥)Shift(⇧)D in App to toggle the Vue DevTools ➜ UnoCSS Inspector: https://localhost:5273/__unocss/随后通过环境变量把开发服务器地址注入 Capacitor 并打开 XcodeCAPACITOR_DEV_SERVER_URLhttps://your-ip-address:5273 pnpm open:iosXcode 打开后点击 Run 即可在 iPhone 上运行。apps/stage-pocket/capacitor.config.ts 展示了这一机制的实现server字段仅在设置了CAPACITOR_DEV_SERVER_URL时启用并强制cleartext: falseappId 会按平台自动切换为ai.moeru.airi_pocketAndroid或ai.moeru.airi-pocketiOS。原文档还提醒了一个移动端联网要点Pocket 在无线模式下要连接桌面端的 server channel 时需要以 root 权限启动 Tamagotchi然后在settings/connections中开启 secure websocketsudo pnpm dev:tamagotchi文档站与版本发布文档站基于 Vitepress 构建见根 package.json 中dev:docs脚本指向proj-airi/docs本地预览pnpm dev:docs发布新版本时使用 bumpp 批量更新 monorepo 版本号npx bumpp --no-commit --no-tag仓库当前版本为0.12.0-beta.5见根 package.json 与各 Stage 的 package.json。大脑覆盖 30 家 LLM 供应商AIRI 的 LLM 接入层由xsai提供一个类似 Vercel AI SDK 但更轻量的实现见原文档致谢部分。原文档完整列出了已支持与待支持的供应商这里完整保留已支持[x]AIHubMix推荐OpenRoutervLLMSGLangOllama302.AIOpenAIAnthropic ClaudeDeepSeekQwenGoogle GeminixAIGroqMistralCloudflare Workers AITogether.aiFireworks.aiNovitaZhipu智谱SiliconFlowStepfunBaichuanMinimaxMoonshot AIModelScopePlayer2Tencent Cloud腾讯云Xiaomi Mimo小米 MiMo待支持PR 欢迎Azure OpenAI APIAWS ClaudeAmazon BedrockSparks讯飞星火Volcano Engine火山引擎这一列表在依赖层面有迹可循xsai/generate-text、xsai/generate-speech、xsai/generate-transcription、xsai-ext/providers等被 apps/stage-web/package.json 与 apps/stage-tamagotchi/package.json 同时引用说明三种 Stage 共享同一套 provider 抽象。能力路线图听、说、身体原文档以清单形式呈现了当前进度完整继承如下大脑游戏Minecraft ✅、Factorio ✅WIP已有 PoC 与 demo、Kerbal Space Program ✅稍后公布、Helldivers 2 ⬜进行中聊天Telegram ✅、Discord ✅记忆浏览器内数据库DuckDB WASM / pglite✅、Memory Alaya ⬜WIP浏览器内本地推理WebGPU⬜麦克风 / 音频输入 ✅、Discord 音频输入 ✅、客户端语音识别 ✅、客户端正在说话检测 ✅声音多供应商 TTSElevenLabs、Microsoft / Azure Speech、OpenAI 兼容 TTS、阿里云百炼、本地 Kokoro TTS ✅身体VRM 支持与模型控制 ✅VRM 动画眨眼、自动视线跟随、idle 眼球运动 ✅Live2D 支持与模型控制 ✅Live2D 动画眨眼、自动视线跟随、idle 眼球运动 ✅这份路线图在源码中有直接对应packages/model-driver-lipsync、packages/model-driver-magic-live2d、packages/model-driver-mediapipeWeb 端视线/面部驱动、packages/stage-ui-live2d、packages/stage-ui-threeVRM/Three.js 渲染以及integrations/discord-botDiscord 语音通道。记忆侧的 DuckDB WASM 封装则沉淀为packages/drizzle-duckdb-wasm与packages/duckdb-wasm两个可独立复用包。服务端通道与生态集成AIRI 的独特之处在于把本地运行时与远程入口统一到一条 server channel 上桌面端内置的packages/server-runtime充当本地服务端packages/server-sdk提供客户端 SDK浏览器、移动端、机器人共享同一套协议packages/server-runtime/src/server-ws/airi/下的 codec、routing、responses 及其对应测试文件即该协议实现。原文档还列举了大量子项目与相关生态Awesome AI VTuberAI VTuber 项目精选列表unspeech统一/audio/transcriptions与/audio/speech的代理服务类似LiteLLM 但面向 ASR/TTShfupHuggingFace Spaces 部署打包工具xsai-transformers为 xsAI 提供 Transformers.js 的实验性 providerWebAI: Realtime Voice Chat从零实现 VAD STT LLM TTS 的实时语音示例AIRI Factorio / Factorio RCON API /autorio/tstl-plugin-reload-factorio-mod让 AIRI 玩 Factorio 的整套工具链Velin用 Vue SFC Markdown 编写易维护的 LLM 状态 promptdemodel加速从多种推理运行时加载模型与数据集inventory集中管理模型目录与默认供应商配置的后端服务MCP Launcher像 Ollama 之于模型那样一键创建并启动任意 MCP 服务器SAD关于在浏览器中自托管与运行 LLM 的文档与笔记其中与仓库强相关、可进一步深挖的包括 integrations/discord-bot、integrations/minecraft含大量认知/技能/调试模块依赖 mineflayer 生态、integrations/telegram-bot、integrations/satori-bot含 Drizzle 迁移以及 integrations/twitter-services。原文档也列出了一些功能侧重点各异的同类开源项目如擅长 VRM/WebXR 的 amica、擅长系统与 API 集成的 eliza 等可作为横向参考。安全提示与参与方式原文档以醒目的 WARNING 强调AIRI 项目不发行任何官方加密货币或 token参与前请仔细核实信息。这一点与项目自托管、用户拥有的理念一致——你获得的是可运行、可修改的代码与模型而非任何投机资产。项目目前仍处于早期开发阶段正在寻找各类贡献者。值得注意的是原文档特意说明即使你不熟悉 Vue.js、TypeScript 或本项目工具链也可以以画师、设计师或直播组织者身份参与如果你偏爱 React、Svelte 或 Solid同样欢迎——可以在仓库中开辟子目录添加你想为 AIRI 试验的功能。当前亟需的领域包括Live2D 建模、VRM 建模、VRChat avatar 设计、计算机视觉、强化学习、语音识别、语音合成、ONNX Runtime、Transformers.js、vLLM、WebGPU、Three.js 与 WebXR。详细的开发指南见 .github/CONTRIBUTING.md。结语从仓库结构可以推断AIRI 走的是一条Web 技术打底、原生能力增强、多入口共享大脑的路线三种 Stage 共享stage-ui与core-agent桌面端以server-runtime充当本地中枢server-sdk让 Discord、Minecraft、Telegram 等外部通道与前端共用同一套 agent 逻辑LLM 层通过 xsai 覆盖三十余家供应商语音层覆盖云端与本地 TTS身体层同时支持 VRM 与 Live2D 并内置眨眼、视线跟随等动画。对于希望构建属于自己的数字伙伴的开发者而言这份仓库既是可开箱运行的完整应用也是一套值得逐层拆解参考的模块化架构范本。【免费下载链接】airi Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achieve Neuro-samas altitude. Capable of realtime voice chat, Minecraft, Factorio playing. Web / macOS / Windows supported.项目地址: https://gitcode.com/GitHub_Trending/ai/airi创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表