AIRI
扫码查看

一个可以自己部署的虚拟伴侣,支持实时语音聊天和玩游戏

AIRI

综合介绍

Airi是一个开源项目,让你可以在自己的设备上部署一个虚拟的数字伴侣。这个项目的灵感来源于知名的AI VTuber “Neuro-sama”,目标是创造一个属于用户自己的、可以随时互动和陪伴的“网络生命体”。用户可以和这个虚拟伴侣进行实时的语音聊天,它还具备玩《我的世界》(Minecraft)和《异星工厂》(Factorio)等游戏的能力。Airi项目的一大特点是它广泛运用了Web技术,这意味着你可以在网页浏览器里直接运行它。同时,它也提供了支持Windows和macOS系统的桌面版本,桌面版能利用更强的硬件性能,比如NVIDIA的CUDA核心,来获得更好的表现。该项目支持VRM和Live2D两种主流的虚拟形象模型,并能与多种大型语言模型(LLM)服务连接,让用户可以灵活选择驱动其“大脑”的AI。

功能列表

  • 跨平台支持: 支持在网页浏览器、Windows和macOS上运行。
  • 游戏智能体: 能够自主操作并进行《我的世界》(Minecraft)游戏,同时对《异星工厂》(Factorio)的支持也正在开发中。
  • 实时语音聊天: 用户可以通过麦克风和Airi进行实时语音对话,项目集成了语音活动检测(VAD)、语音转文本(STT)和文本转语音(TTS)的全套流程。
  • 多平台聊天: 支持接入Discord和Telegram等聊天平台,在群组里进行互动。
  • 记忆系统: 拥有一个记忆系统,能够记住之前的对话内容。它使用了如DuckDB WASM这样的嵌入式数据库技术。
  • 大语言模型支持: 支持接入多种主流和非主流的大语言模型(LLM)服务,例如OpenAI、Google Gemini、Anthropic Claude、Groq以及本地部署的Ollama等。
  • 虚拟形象驱动:
    • 支持VRM和Live2D两种格式的虚拟形象。
    • 能够驱动模型做出多种动画,例如自动眨眼、视线跟随、空闲时的眼球转动等。
  • 可定制和扩展: 项目是开源的,并且衍生出多个子项目,方便开发者进行功能扩展和集成。
  • 自托管: 用户可以将Airi完全部署在自己的服务器或个人电脑上,确保了数据的私密性和控制权。

使用帮助

Airi项目分为主要面向用户的桌面版(Stage Tamagotchi)和用于快速体验和开发的网页版(Stage Web)。以下是详细的安装和使用流程。

环境准备

在开始之前,你的电脑需要安装一些基础的开发工具。

  1. 安装pnpm: Airi项目使用pnpm作为包管理器。如果你没有安装,需要先安装Node.js,然后通过Node.js的包管理器npm来安装pnpm。
    npm install -g pnpm
    
  2. 克隆项目代码: 从GitHub上把Airi的源代码下载到你的电脑。
    git clone https://github.com/moeru-ai/airi.git
    cd airi
    
  3. 安装依赖: 在项目根目录中,使用pnpm安装所有必需的依赖项。
    pnpm install
    

配置

Airi的核心功能依赖于外部服务,特别是大语言模型(LLM)和语音合成(TTS)服务。你需要获取这些服务的API密钥并进行配置。

  1. 配置文件: 项目中应该会有一个.env.example或类似的示例配置文件。你需要复制一份并将其重命名为.env
  2. 配置大语言模型 (LLM): Airi通过xsai库支持众多LLM。你需要选择一个服务商,并在.env文件中填入你的API密钥。例如,使用OpenAI:OPENAI_API_KEY="sk-..."如果你使用Ollama在本地运行模型,可以这样配置:OLLAMA_BASE_URL="http://localhost:11434"
  3. 配置语音合成 (TTS): 默认的语音合成服务是ElevenLabs。你需要前往ElevenLabs官网注册并获取API密钥。ELEVENLABS_API_KEY="your_elevenlabs_api_key"
  4. 配置虚拟形象:
    • VRM模型: 将你的.vrm格式模型文件放入指定的文件夹(通常在apps/stage-tamagotchi/public或类似路径下),然后在配置文件中指定模型文件的路径。
    • Live2D模型: Live2D模型的文件结构更复杂,需要将整个模型文件夹放入指定位置,并在配置文件里正确设置路径。

启动和使用

方式一:运行桌面版(推荐)

桌面版功能最完整,性能也最好,推荐普通用户使用。

  1. 启动开发环境: 运行以下命令来启动桌面版的开发服务器。这个过程可能会编译一些Rust代码,所以第一次启动会比较慢。
    pnpm dev:tamagotchi
    
  2. 操作界面:
    • 启动后,你会看到一个窗口显示你的虚拟形象。
    • 语音聊天: 按住设定的快捷键(或在界面上点击语音按钮),开始说话。你的声音会被转换成文字发送给LLM,然后LLM生成回复,再通过语音合成播放出来。虚拟形象的嘴唇会根据声音进行同步。
    • 游戏互动:
      • 要让Airi玩《我的世界》,你需要先启动游戏并进入一个世界。
      • 在Airi的控制界面里,找到游戏控制模块,点击“连接到Minecraft”。Airi会通过内部的智能体程序(Agent)连接到游戏并开始自主操作。
      • 你可以通过聊天告诉它要做什么,比如“去砍树”或“挖一些石头”。

方式二:运行网页版

网页版方便快速预览和开发,但功能会受到浏览器环境的限制。

  1. 启动开发服务器:
    pnpm dev
    
  2. 访问: 打开你的浏览器,访问终端提示的地址(通常是http://localhost:5173)。
  3. 操作界面: 网页版的操作方式与桌面版类似,但所有处理都在浏览器内完成。这意味着它可能会更消耗你电脑的CPU资源,并且无法直接玩需要本地文件访问的桌面游戏,其游戏功能通常是通过连接到远程服务器来实现的。

功能操作详解

  • 角色扮演与对话: 你可以在配置文件或UI界面中为Airi设定“角色提示”(Prompt),定义它的性格、背景故事和说话方式。一个好的提示能让Airi的回答更符合你期望的虚拟伴侣形象。
  • 内存管理: 在对话过程中,Airi会自动将关键信息存入其记忆库。你可以通过特定的命令或界面查看它的记忆,或者手动添加、删除记忆,以引导它未来的行为。
  • 插件系统: 项目正在开发一个插件系统,未来用户将能够通过安装插件来扩展Airi的功能,比如连接到更多的游戏、社交媒体或智能家居设备。

应用场景

  1. 游戏陪玩你可以让Airi作为你的游戏伙伴。在玩《我的世界》这类沙盒游戏时,你可以让它自动执行一些重复性任务,比如收集资源、建造简单的建筑或者一起探索。它能听懂你的语音指令,并在游戏里执行相应的操作,为你增添一个智能的虚拟玩伴。
  2. 直播互动对于VTuber或游戏主播来说,Airi可以作为一个互动的直播内容。主播可以将Airi的形象和语音接入直播画面,让它和观众进行实时聊天互动。它甚至可以根据直播间的弹幕内容做出反应,或者在主播玩游戏时提供有趣的评论,极大地丰富了直播效果。
  3. 桌面电子宠物你可以将Airi作为常驻在桌面上的电子宠物。它拥有自己的虚拟形象,会在你工作或学习时安静地待在桌面上,偶尔做出一些小动作。当你感到无聊时,可以随时通过语音和它聊天,询问它问题,或者听它讲故事,成为一个排解孤独的桌面伴侣。
  4. 语言学习伙伴由于Airi能够进行流畅的语音对话,你可以把它当作一个语言学习的练习伙伴。你可以设定它只用你正在学习的语言进行交流,通过日常对话来锻炼你的口语和听力能力。

QA

  1. Airi和Character.ai或SillyTavern这类平台有什么不同?最核心的不同点在于Airi不仅仅是聊天工具。虽然它也具备强大的聊天和角色扮演功能,但Airi的设计目标是成为一个能够与你的电脑环境深度互动的“数字生命”。它最大的特色是能够操作和玩PC游戏(如《我的世界》),并且拥有实时的语音对话能力,这是纯聊天平台所不具备的。此外,Airi是完全开源和自托管的,你可以完全控制它的数据和功能。
  2. 我需要多好的电脑才能运行Airi?网页版对电脑配置要求不高,只要是近几年的主流电脑,使用现代浏览器(如Chrome或Edge)都可以运行。桌面版因为需要运行AI模型和驱动虚拟形象,对配置有一定要求。如果想获得流畅体验,建议拥有一块支持CUDA(NVIDIA显卡)或Metal(苹果芯片)的独立显卡,这能大大加速AI的计算过程。
  3. 我不会编程,可以使用Airi吗?可以。虽然安装过程需要一些命令行操作,但项目文档提供了详细的步骤。一旦安装和配置完成,日常使用主要是通过图形界面和语音指令进行的,不需要编程知识。你可以把它当作一个普通的应用程序来使用。
  4. Airi支持哪些语言模型?我可以使用在本地部署的模型吗?Airi支持非常广泛的语言模型服务,包括OpenAI的GPT系列、Anthropic的Claude系列、Google的Gemini等。它也完全支持连接到本地部署的模型服务,最常见的就是Ollama。你只需要在配置文件中指定本地模型的API地址,就可以让Airi使用你自己在电脑上运行的AI模型,这样既能节省成本,也能保证对话内容的私密性。
微信微博Email复制链接