📂 其他 - Others / xia_hy456的个人项目

AronaAI介绍

2026-05-13

阿罗娜AI / AronaAI


📖 项目简介 / Introduction

阿罗娜AI 是一个以游戏《蔚蓝档案》(Blue Archive)中角色"阿罗娜"为原型打造的桌面AI助手项目。在设定上,她是“什亭之匣”的操作系统管理员,性格开朗、热情,乐于帮助老师(用户)解决问题。

本项目集成了Arona语言模型(AronaLM)、语音合成(TTS)、语音识别(ASR)、Spine 2D 角色动画等技术,旨在提供一个可爱、有趣且功能完整的桌面交互体验。

项目地址:https://github.com/xiahy456/AronaAI

AronaAI is a desktop AI assistant project based on the character “Arona” from the mobile game “Blue Archive”. She serves as the operating system administrator of the Shittim Chest, and has a cheerful, warm personality who loves helping Sensei (user) solve problems.

This project integrates Arona Language Models (AronaLM), Text-to-Speech (TTS), Automatic Speech Recognition (ASR), Spine 2D character animation, and other technologies to provide a cute, lively, and fully-featured desktop interaction experience.

Repository URL:https://github.com/xiahy456/AronaAI


🏗️ 项目架构 / Project Architecture

arona-ai/
├── backend/                    # Python 后端服务
│   ├── ai_service.py           # WebSocket 服务主程序(FastAPI)
│   ├── arona_engine.py         # 核心引擎 - 集成所有模块
│   ├── chain_compressor.py     # RAG 链路压缩模块
│   ├── config.py               # 全局配置文件
│   ├── conversation_manager.py # 对话历史管理
│   ├── embeddings.py           # 文本嵌入模块(TF-IDF / Sentence-Transformers)
│   ├── knowledge_base.py       # RAG 知识库管理
│   ├── memory_manager.py       # 长期记忆管理
│   ├── model_loader.py         # 模型加载器(基础模型 + LoRA)
│   ├── semantic_cache.py       # 语义缓存系统
│   ├── vector_store.py         # 向量数据库(ChromaDB)
│   ├── test_arona.py           # 快速测试脚本
│   └── test_engine.py          # 完整测试脚本
│
├── frontend/                   # 桌面客户端
│   └── AronaAI_Spine_WindowsClient/  # Windows 桌面客户端(Qt/C++)
│       ├── QtMainFile/         # 主界面、控制器、WebSocket 通信
│       ├── QtUtils/            # 工具类(录音、语音识别、动画等)
│       ├── QHotkey/            # 全局快捷键支持
│       ├── spine-cpp/          # Spine 2D 动画运行时
│       ├── Assets/             # 资源文件(Spine 动画、UI 图片)
│       ├── Config/             # 配置文件
│       └── Dict/               # 词典文件
│
├── llm/                        # 大语言模型训练
│   └── aronaLM/                # Arona 专属语言模型
│       ├── model/              # 模型定义(Transformer 架构)
│       ├── training/           # 训练脚本(预训练 + LoRA 微调)
│       ├── inference/          # 推理模块
│       ├── configs/            # 训练配置
│       ├── scripts/            # 数据处理与测试脚本
│       ├── documents/          # 角色设定文档
│       └── data/               # 训练数据
│
├── gpt-sovits/                 # GPT-SoVITS 语音合成(需用户手动部署,或使用外部服务)
│   ├── GPT_SoVITS/             # 核心模型
│   ├── GPT_weights/            # 模型权重
│   ├── api_v2.py               # API 服务
│   └── ref_audio/              # 参考音频
│
├── docs/                       # 相关文档
│   └── requirements.txt        # 依赖项文件
├── models/                     # 预训练模型存放目录
├── vosk/                       # Vosk 离线语音识别((可选)需用户手动部署,推荐直接使用腾讯云语音识别服务)
└── assets/                     # 项目资源

✨ 核心功能 / Core Features

🤖 AI 对话引擎

  • Arona语言模型:使用 LoRA 微调构建的语言模型
  • RAG 知识检索:通过向量数据库检索相关知识,增强回答准确性
  • 长期记忆:自动识别并存储用户信息,在对话中回忆相关记忆
  • 语义缓存:基于语义相似度的缓存系统,提升响应速度
  • 对话管理:多轮对话历史管理,支持会话过期和截断

🎤 语音交互

  • 语音合成(TTS):基于 GPT-SoVITS 的高质量语音合成,还原阿罗娜的声音
  • 语音识别(ASR):支持在线(腾讯云)和离线(Vosk)两种识别方式
  • 语音唤醒:支持语音输入触发对话

🖥️ 桌面客户端

  • Spine 2D 动画:使用 Spine 实现阿罗娜的 Live2D 角色动画
  • Qt 界面:基于 Qt/C++ 的 Windows 桌面应用
  • WebSocket 通信:与后端服务实时通信,支持流式输出
  • 全局快捷键:支持自定义快捷键操作
  • 系统托盘:最小化到系统托盘运行

🎯 技术亮点

  • 语义缓存:改进的语义相似度匹配算法,防止短文本误匹配
  • 链路压缩:对 RAG 检索结果进行去重、排序、摘要提取
  • 记忆管理:自动识别用户个人信息并长期存储
  • 双模式嵌入:支持本地 TF-IDF 和外部 Sentence-Transformers 两种嵌入方式

🚀 快速开始 / Quick Start

环境要求 / Prerequisites

组件 要求
Python 3.10+
Node.js (可选) 用于部分工具脚本
CUDA 11.8+ (GPU 加速,可选)
操作系统 Windows 10/11 (客户端) / Linux 及其衍生系统
AronaLM 请放在models/aronaLM目录下

后端启动 / Backend Setup

# 1. 安装 Python 依赖
pip install -r docs/requirements.txt

# 2. 启动 WebSocket 服务
python -m backend.ai_service.py --host 0.0.0.0 --port 20456

# 3. (可选) 运行测试
python backend/test_engine.py

客户端构建 / Client Build

Windows 客户端使用 Visual Studio 2022(后改为Visual Studio 2026) 和 Qt 构建:

  1. 安装 Qt 6.x(推荐6.5.3) 和 Visual Studio 2026
  2. 打开 frontend/AronaAI_Spine_WindowsClient/AronaAI_Spine_WindowsClient.sln
  3. 配置 Qt 版本和编译选项
  4. 编译运行

语音合成服务 / TTS Service

# 启动 GPT-SoVITS API 服务
cd gpt-sovits
python api_v2.py

🔧 配置说明 / Configuration

后端配置 (backend/config.py)

配置项 说明 默认值
MODEL_CONFIG 模型路径、生成参数 -
EMBEDDING_CONFIG 嵌入模型选择(本地/外部) 外部模型
VECTOR_DB_CONFIG ChromaDB 向量数据库配置 -
CACHE_CONFIG 语义缓存参数 阈值 0.92
CONVERSATION_CONFIG 对话历史管理 保留 10 轮
MEMORY_CONFIG 长期记忆配置 -
COMPRESSOR_CONFIG 链路压缩参数 -

客户端配置

客户端配置文件位于 frontend/AronaAI_Spine_WindowsClient/Config/,可配置:

  • WebSocket 服务器地址和端口
  • TTS 服务地址
  • 语音识别参数
  • 快捷键绑定

📚 模块详解 / Module Details

Backend 模块

模块 文件 功能描述
WebSocket 服务 ai_service.py FastAPI WebSocket 服务,处理客户端连接和消息路由
核心引擎 arona_engine.py 集成所有模块的统一调用接口,实现完整对话流程
模型加载 model_loader.py 加载基础模型和 LoRA 权重,支持聊天模板
对话管理 conversation_manager.py 多轮对话历史管理,支持会话过期和截断
知识库 knowledge_base.py RAG 知识检索增强生成
记忆管理 memory_manager.py 长期记忆的提取、存储和检索
语义缓存 semantic_cache.py 基于语义相似度的缓存系统
向量存储 vector_store.py ChromaDB 向量数据库封装
链路压缩 chain_compressor.py RAG 检索结果压缩优化
嵌入模型 embeddings.py 文本向量化(TF-IDF / Sentence-Transformers)

LLM 训练模块

模块 功能描述
模型定义 基于 Transformer 的因果语言模型
预训练 从零开始的预训练流程
LoRA 微调 高效参数微调(亲密/普通两种风格)
推理引擎 支持流式输出的对话推理

🗺️ 开发路线图 / Roadmap

  • 基础对话引擎
  • RAG 知识检索
  • 长期记忆系统
  • 语义缓存优化
  • Windows 桌面客户端
  • Spine 2D 角色动画
  • GPT-SoVITS 语音合成
  • 模型优化
  • 语音唤醒功能完善
  • macOS/Linux 客户端支持
  • 多语言支持
  • 插件系统
  • 知识库可视化编辑

📄 许可证 / License

本项目基于 Apache License 2.0 开源协议。

Copyright 2026 xia_hy456. All rights reserved.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

🙏 致谢 / Acknowledgements

  • 《蔚蓝档案》(Blue Archive) - 角色原型
  • Spine - 2D 动画引擎
  • Qt - 跨平台 GUI 框架
  • ChromaDB - 向量数据库
  • GPT-SoVITS - 语音合成模型
  • Vosk - 离线语音识别
  • 腾讯云语音识别 - 在线语音识别
  • Sentence-Transformers - 文本嵌入模型