moeru-ai/airi

GitHub: moeru-ai/airi

开源的 AI 虚拟伴侣框架,支持实时语音交互、VRM/Live2D 模型控制及 Minecraft/Factorio 游戏游玩。

Stars: 20569 | Forks: 1932

Project AIRI

重现 Neuro-sama,一个承载 AI 老婆 / 虚拟角色灵魂的容器,将她们带入我们的世界。

[加入 Discord 服务器] [在线体验] [简体中文] [日本語] [Русский] [Tiếng Việt] [Français] [한국어]

AIRI - A container of cyber living souls, re-creation of Neuro-sama | Product Hunt moeru-ai%2Fairi | Trendshift

你是否曾梦想拥有一个能与你一起玩耍、交谈的赛博生命体(电子老婆、电子宠物)或数字伴侣? 借助现代大型语言模型(如 [ChatGPT](https://chatgpt.com) 和著名的 [Claude](https://claude.ai))的力量,让一个虚拟存在与我们进行角色扮演和聊天,对每个人来说都已经是轻而易举的事情。像 [Character.ai (亦称 c.ai)](https://character.ai) 和 [JanitorAI](https://janitorai.com/) 这样的平台,以及像 [SillyTavern](https://github.com/SillyTavern/SillyTavern) 这样的本地运行环境,已经为基于文字聊天或视觉冒险游戏般的体验提供了足够好的解决方案。 也许你已经知道 [Neuro-sama](https://www.youtube.com/@Neurosama) 了。她是目前最棒的虚拟主播,能够玩游戏、聊天,并与你和观众互动。也有人将这类存在称为“数字人类”。**遗憾的是,由于它并未开源,一旦她的直播下线,你就无法再与她互动了**。 因此,本项目 AIRI 在此提供了另一种可能性:**让你轻松地、随时随地拥有属于你的数字生命和赛博生活**。 ## 我们发布的开发日志与近期更新 - [开发日志 @ 2026.02.16](https://airi.moeru.ai/docs/en/blog/DevLog-2026.02.16/) 于 2026年2月16日 - [开发日志 @ 2026.01.01](https://airi.moeru.ai/docs/en/blog/DevLog-2026.01.01/) 于 2026年1月1日 - [开发日志 @ 2025.10.20](https://airi.moeru.ai/docs/en/blog/DevLog-2025.10.20/) 于 2025年10月20日 - [开发日志 @ 2025.08.05](https://airi.moeru.ai/docs/en/blog/DevLog-2025.08.05/) 于 2025年8月5日 - [开发日志 @ 2025.08.01](https://airi.moeru.ai/docs/en/blog/DevLog-2025.08.01/) 于 2025年8月1日 - [梦境日志 0x1](https://airi.moeru.ai/docs/en/blog/dreamlog-0x1/) 于 2025年6月16日 - ...更多内容请见 [文档站点](https://airi.moeru.ai/docs/en/) ## 本项目有何特别之处? 与其他 AI 驱动的 VTuber 开源项目不同,アイリ 从第一天起就构建了对多种 Web 技术的支持,例如 [WebGPU](https://www.w3.org/TR/webgpu/)、[WebAudio](https://developer.mozilla.org/en-US/docs/Web/API/Web_Audio_API)、[Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers)、[WebAssembly](https://webassembly.org/)、[WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSocket) 等。 这意味着 **アイリ 能够在现代浏览器和设备上运行**,甚至在移动设备上也能运行(已通过 PWA 支持实现)。这为我们(开发者)提供了大量可能性,将 アイリ VTuber 的能力构建和扩展到新的高度,同时保留了灵活性,让用户可以启用那些需要 TCP 连接或其他非 Web 技术的功能,例如连接到 Discord 语音频道,或者与朋友一起玩 Minecraft 和 Factorio。 ## 当前进度 能够实现 - [x] 大脑 - [x] 玩 [Minecraft](https://www.minecraft.net) - [x] 玩 [Factorio](https://www.factorio.com)(WIP,但 [PoC 和演示已可用](https://github.com/moeru-ai/airi-factorio)) - [x] 在 [Telegram](https://telegram.org) 中聊天 - [x] 在 [Discord](https://discord.com) 中聊天 - [ ] 记忆 - [x] 纯浏览器端数据库支持 (DuckDB WASM | `pglite`) - [ ] 记忆 Alaya(WIP) - [ ] 纯浏览器端本地 (WebGPU) 推理 - [x] 耳朵 - [x] 来自浏览器的音频输入 - [x] 来自 [Discord](https://discord.com) 的音频输入 - [x] 客户端语音识别 - [x] 客户端说话检测 - [x] 嘴巴 - [x] [ElevenLabs](https://elevenlabs.io/) 语音合成 - [x] 身体 - [x] VRM 支持 - [x] 控制 VRM 模型 - [x] VRM 模型动画 - [x] 自动眨眼 - [x] 自动注视 - [x] 空闲时眼球运动 - [x] Live2D 支持 - [x] 控制 Live2D 模型 - [x] Live2D 模型动画 - [x] 自动眨眼 - [x] 自动注视 - [x] 空闲时眼球运动 ## 开发 ``` pnpm i pnpm dev ``` ### Stage Web(浏览器版本,位于 [airi.moeru.ai](https://airi.moeru.ai)) ``` pnpm dev ``` ### Stage Tamagotchi(桌面版) ``` pnpm dev:tamagotchi ``` 包含了一个用于 Tamagotchi 的 Nix 包。要使用 Nix 运行 airi,首先确保启用 flakes,然后运行: ``` nix run github:moeru-ai/airi ``` ### Stage Pocket(移动版) 启动 capacitor web 版本的开发服务器: ``` pnpm dev:pocket ``` 在上述命令的输出中检查你的 IP 地址: ``` ROLLDOWN-VITE v7.3.0 ready in 1073 ms ➜ Local: https://localhost:5273/ ➜ Network: https://: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/ ``` 打开 Xcode 项目: ``` CAPACITOR_DEV_SERVER_URL=https://:5273 pnpm open:ios ``` 然后 Xcode 将打开,你可以点击“Run”按钮在你的 iPhone 上运行该应用。 如果你需要在无线模式下连接 pocket 上的服务器通道,你需要以 root 身份启动 tamagotchi: ``` sudo pnpm dev:tamagotchi ``` 然后在 tamagotchi 的 `settings/system/general` 中启用 secure websocket。 ### 文档站点 ``` pnpm dev:docs ``` ### 发布 请在运行 `bumpp` 后更新 `Cargo.toml` 中的版本: ``` npx bumpp --no-commit --no-tag ``` ## 支持的 LLM API 提供商(由 [xsai](https://github.com/moeru-ai/xsai) 提供支持) - [x] [302.AI (赞助)](https://share.302.ai/514k2v) - [x] [OpenRouter](https://openrouter.ai/) - [x] [vLLM](https://github.com/vllm-project/vllm) - [x] [SGLang](https://github.com/sgl-project/sglang) - [x] [Ollama](https://github.com/ollama/ollama) - [x] [Google Gemini](https://developers.generativeai.google) - [x] [OpenAI](https://platform.openai.com/docs/guides/gpt/chat-completions-api) - [ ] [Azure OpenAI API](https://learn.microsoft.com/en-us/azure/ai-services/openai/reference) (欢迎 PR) - [x] [Anthropic Claude](https://anthropic.com) - [ ] [AWS Claude](https://docs.anthropic.com/en/api/claude-on-amazon-bedrock) (欢迎 PR) - [x] [DeepSeek](https://www.deepseek.com/) - [x] [Qwen](https://help.aliyun.com/document_detail/2400395.html) - [x] [xAI](https://x.ai/) - [x] [Groq](https://wow.groq.com/) - [x] [Mistral](https://mistral.ai/) - [x] [Cloudflare Workers AI](https://developers.cloudflare.com/workers-ai/) - [x] [Together.ai](https://www.together.ai/) - [x] [Fireworks.ai](https://www.together.ai/) - [x] [Novita](https://www.novita.ai/) - [x] [Zhipu](https://bigmodel.cn) - [x] [SiliconFlow](https://cloud.siliconflow.cn/i/rKXmRobW) - [x] [Stepfun](https://platform.stepfun.com/) - [x] [Baichuan](https://platform.baichuan-ai.com) - [x] [Minimax](https://api.minimax.chat/) - [x] [Moonshot AI](https://platform.moonshot.cn/) - [x] [ModelScope](https://modelscope.cn/docs/model-service/API-Inference/intro) - [x] [Player2](https://player2.game/) - [x] [Tencent Cloud](https://cloud.tencent.com/document/product/1729) - [ ] [Sparks](https://www.xfyun.cn/doc/spark/Web.html) (欢迎 PR) - [ ] [Volcano Engine](https://www.volcengine.com/experience/ark?utm_term=202502dsinvite&ac=DSASUQY5&rc=2QXCA1VI) (欢迎 PR) ## 诞生于本项目的子项目 - [Awesome AI VTuber](https://github.com/proj-airi/awesome-ai-vtuber): AI VTuber 及相关项目的精选列表 - [`unspeech`](https://github.com/moeru-ai/unspeech): 用于 `/audio/transcriptions` 和 `/audio/speech` 的通用端点代理服务器,就像 LiteLLM,但用于任何 ASR 和 TTS - [`hfup`](https://github.com/moeru-ai/hfup): 帮助部署、打包到 HuggingFace Spaces 的工具 - [`xsai-transformers`](https://github.com/moeru-ai/xsai-transformers): [xsAI](https://github.com/moeru-ai/xsai) 的实验性 [🤗 Transformers.js](https://github.com/huggingface/transformers.js) provider。 - [WebAI: Realtime Voice Chat](https://github.com/proj-airi/webai-realtime-voice-chat): 从零开始实现 ChatGPT 实时语音功能的完整示例,包含 VAD + STT + LLM + TTS。 - [`@proj-airi/drizzle-duckdb-wasm`](https://github.com/moeru-ai/airi/tree/main/packages/drizzle-duckdb-wasm/README.md): DuckDB WASM 的 Drizzle ORM 驱动 - [`@proj-airi/duckdb-wasm`](https://github.com/moeru-ai/airi/tree/main/packages/duckdb-wasm/README.md): 易于使用的 `@duckdb/duckdb-wasm` 包装器 - [`tauri-plugin-mcp`](https://github.com/moeru-ai/airi/blob/main/crates/tauri-plugin-mcp/README.md): 用于与 MCP 服务器交互的 Tauri 插件。 - [AIRI Factorio](https://github.com/moeru-ai/airi-factorio): 允许 AIRI 玩 Factorio - [Factorio RCON API](https://github.com/nekomeowww/factorio-rcon-api): Factorio 无头服务器控制台的 RESTful API 包装器 - [`autorio`](https://github.com/moeru-ai/airi-factorio/tree/main/packages/autorio): Factorio 自动化库 - [`tstl-plugin-reload-factorio-mod`](https://github.com/moeru-ai/airi-factorio/tree/main/packages/tstl-plugin-reload-factorio-mod): 开发时重新加载 Factorio 模组 - [Velin](https://github.com/luoling8192/velin): 使用 Vue SFC 和 Markdown 为 LLM 编写易于管理的有状态提示词 - [`demodel`](https://github.com/moeru-ai/demodel): 轻松加速从各种推理运行时拉取模型和数据集的速度。 - [`inventory`](https://github.com/moeru-ai/inventory): 集中式模型目录和默认提供商配置后端服务 - [MCP Launcher](https://github.com/moeru-ai/mcp-launcher): 易于使用的 MCP 构建器和启动器,适用于所有可能的 MCP 服务器,就像模型界的 Ollama 一样! - [🥺 SAD](https://github.com/moeru-ai/sad): 自托管和浏览器运行 LLM 的文档和笔记。 ``` %%{ init: { 'flowchart': { 'curve': 'catmullRom' } } }%% flowchart TD Core("Core") Unspeech("unspeech") DBDriver("@proj-airi/drizzle-duckdb-wasm") MemoryDriver("[WIP] Memory Alaya") DB1("@proj-airi/duckdb-wasm") SVRT("@proj-airi/server-runtime") Memory("Memory") STT("STT") Stage("Stage") StageUI("@proj-airi/stage-ui") UI("@proj-airi/ui") subgraph AIRI DB1 --> DBDriver --> MemoryDriver --> Memory --> Core UI --> StageUI --> Stage --> Core Core --> STT Core --> SVRT end subgraph UI_Components UI --> StageUI UITransitions("@proj-airi/ui-transitions") --> StageUI UILoadingScreens("@proj-airi/ui-loading-screens") --> StageUI FontCJK("@proj-airi/font-cjkfonts-allseto") --> StageUI FontXiaolai("@proj-airi/font-xiaolai") --> StageUI end subgraph Apps Stage --> StageWeb("@proj-airi/stage-web") Stage --> StageTamagotchi("@proj-airi/stage-tamagotchi") Core --> RealtimeAudio("@proj-airi/realtime-audio") Core --> PromptEngineering("@proj-airi/playground-prompt-engineering") end subgraph Server_Components Core --> ServerSDK("@proj-airi/server-sdk") ServerShared("@proj-airi/server-shared") --> SVRT ServerShared --> ServerSDK end STT -->|Speaking| Unspeech SVRT -->|Playing Factorio| F_AGENT SVRT -->|Playing Minecraft| MC_AGENT subgraph Factorio_Agent F_AGENT("Factorio Agent") F_API("Factorio RCON API") factorio-server("factorio-server") F_MOD1("autorio") F_AGENT --> F_API -.-> factorio-server F_MOD1 -.-> factorio-server end subgraph Minecraft_Agent MC_AGENT("Minecraft Agent") Mineflayer("Mineflayer") minecraft-server("minecraft-server") MC_AGENT --> Mineflayer -.-> minecraft-server end XSAI("xsAI") --> Core XSAI --> F_AGENT XSAI --> MC_AGENT Core --> TauriMCP("@proj-airi/tauri-plugin-mcp") Memory_PGVector("@proj-airi/memory-pgvector") --> Memory style Core fill:#f9d4d4,stroke:#333,stroke-width:1px style AIRI fill:#fcf7f7,stroke:#333,stroke-width:1px style UI fill:#d4f9d4,stroke:#333,stroke-width:1px style Stage fill:#d4f9d4,stroke:#333,stroke-width:1px style UI_Components fill:#d4f9d4,stroke:#333,stroke-width:1px style Server_Components fill:#d4e6f9,stroke:#333,stroke-width:1px style Apps fill:#d4d4f9,stroke:#333,stroke-width:1px style Factorio_Agent fill:#f9d4f2,stroke:#333,stroke-width:1px style Minecraft_Agent fill:#f9d4f2,stroke:#333,stroke-width:1px style DBDriver fill:#f9f9d4,stroke:#333,stroke-width:1px style MemoryDriver fill:#f9f9d4,stroke:#333,stroke-width:1px style DB1 fill:#f9f9d4,stroke:#333,stroke-width:1px style Memory fill:#f9f9d4,stroke:#333,stroke-width:1px style Memory_PGVector fill:#f9f9d4,stroke:#333,stroke-width:1px ``` ## 类似项目 ### 开源项目 - [kimjammer/Neuro: 最初在 7 天内完成创作的 Neuro-Sama 重现。](https://github.com/kimjammer/Neuro): 完成度非常高的实现。 - [SugarcaneDefender/z-waif](https://github.com/SugarcaneDefender/z-waif): 擅长游戏、自主性和提示工程 - [semperai/amica](https://github.com/semperai/amica/): 擅长 VRM, WebXR - [elizaOS/eliza](https://github.com/elizaOS/eliza): 在如何将 agent 集成到各种系统和 API 方面,有着出色的示例和软件工程实践 - [ardha27/AI-Waifu-Vtuber](https://github.com/ardha27/AI-Waifu-Vtuber): 擅长 Twitch API 集成 - [InsanityLabs/AIVTuber](https://github.com/InsanityLabs/AIVTuber): 不错的 UI 和 UX - [IRedDragonICY/vixevia](https://github.com/IRedDragonICY/vixevia) - [t41372/Open-LLM-VTuber](https://github.com/t41372/Open-LLM-VTuber) - [PeterH0323/Streamer-Sales](https://github.com/PeterH0323/Streamer-Sales) ### 非开源项目 - https://clips.twitch.tv/WanderingCaringDeerDxCat-Qt55xtiGDSoNmDDr https://www.youtube.com/watch?v=8Giv5mupJNE - https://clips.twitch.tv/TriangularAthleticBunnySoonerLater-SXpBk1dFso21VcWD - https://www.youtube.com/@NOWA_Mirai ## 项目状态 ![Repobeats analytics image](https://repobeats.axiom.co/api/embed/a1d6fe2c13ea2bb53a5154435a71e2431f70c2ee.svg 'Repobeats analytics image') ## 鸣谢 - [Reka UI](
标签:AI Waifu, AI工具, AI虚拟主播, DNS解析, Factorio, Minecraft, Neuro-sama, 二次元老婆, 人工智能, 可视化界面, 娱乐机器人, 实时语音对话, 开源项目, 数字生命, 桌面应用, 沉浸式体验, 深度学习, 游戏AI代理, 用户模式Hook绕过, 自动化攻击, 自动化攻击, 自托管, 虚拟伴侣, 虚拟形象, 语音交互