From bc3472a98138fd4bc4c1f9d7b3d6d8e928780581 Mon Sep 17 00:00:00 2001 From: Levon <86230904+veardk@users.noreply.github.com> Date: Tue, 14 Oct 2025 11:45:39 +0800 Subject: [PATCH] Delete docs --- ...66\346\236\204\346\226\207\346\241\243.md" | 209 ------------------ 1 file changed, 209 deletions(-) delete mode 100644 "\346\236\266\346\236\204\346\226\207\346\241\243.md" diff --git "a/\346\236\266\346\236\204\346\226\207\346\241\243.md" "b/\346\236\266\346\236\204\346\226\207\346\241\243.md" deleted file mode 100644 index 6b634f0..0000000 --- "a/\346\236\266\346\236\204\346\226\207\346\241\243.md" +++ /dev/null @@ -1,209 +0,0 @@ -我思故我码 -一、项目介绍 -语Ta(VacaTa) 一个AI驱动的实时语音角色扮演平台 - 用户可与Harry Potter、Socrates等虚拟角色进行语音和文本对话 -● 实时语音对话: 完整的语音→文本→AI→语音链路,支持流式快速响应 -● 多AI模型集成: 七牛云AI、OpenAI GPT、Google Gemini无缝切换功能模式 -● 自定义角色: 用户可创建个性化AI角色,调节性格和对话风格 -● 双向通信: 支持语音和文本两种交互方式 -● 现代化架构: 前后端分离,容器化部署,CI/CD自动化 -二、功能演示 -2.1 整体演示 -视频演示:mp4演示视频 -线上部署:网址 -2.2 功能模块演示 -2.2.1 用户认证系统 - 注册/登录/验证码 -● 当用户访问VocaTa平台时,系统将引导其完成身份认证流程。 -● 用户输入邮箱地址后,系统会发送6位数字验证码到指定邮箱,验证码有效期为5分钟。 -● 如果是新用户,验证码验证通过后需要设置登录密码,系统将自动生成用户名(格式:vocata-随机字符串)。 -● 已注册用户可直接使用邮箱和密码进行登录,系统将颁发JWT令牌实现免登录访问。 -● 用户可以通过忘记密码功能重置登录凭据,确保账户安全。 - -2.2.2 用户管理模块 - 个人信息管理 -● 用户登录后可以查看和编辑个人资料,包括昵称、个人简介等基本信息。 -● 用户可以上传个人头像,系统支持多种图片格式,并自动生成CDN访问链接。 -● 用户可以配置个性化偏好设置,如主题风格、消息通知等选项。 -● 系统提供账户安全设置,用户可以修改密码、查看登录记录等安全信息。 -● 所有个人信息修改都会实时保存,并记录操作日志确保数据安全。 - -2.2.3 AI对话模块 - 角色对话核心功能 -● 用户可以从角色列表中选择喜欢的AI角色(如Harry Potter、Socrates等)开始对话。 -● 系统支持文字和语音两种输入方式,用户可以根据场景灵活选择交互模式。 -● AI回复采用流式响应技术,用户可以实时看到AI角色逐字生成回答内容。 -● 系统保持多轮对话的上下文记忆,确保对话的连贯性和智能性。 -● 用户可以随时暂停、继续或重新开始对话,系统会自动保存对话进度。 - -2.2.4 对话历史模块 - 会话记录管理 -● 用户可以查看与不同AI角色的历史对话记录,系统按时间倒序展示对话列表。 -● 用户可以通过关键词搜索特定的对话内容,快速定位重要的对话片段。 -● 系统支持对话分页加载,优化大量历史记录的浏览体验。 -● 用户可以收藏重要对话,方便后续回顾和参考。 -● 用户可以删除不需要的对话记录,系统采用软删除机制确保数据可恢复性。 - -2.2.5 角色管理模块 - AI角色配置 -● 用户可以浏览平台提供的多样化AI角色库,每个角色都有独特的人格特征和专业背景。 -● 系统展示角色的详细信息,包括人物介绍、擅长领域、对话风格等特性。 -● 用户可以预览角色的对话样例,了解其回复风格和知识水平。 -● 系统支持角色评价功能,用户可以为喜欢的角色点赞或评分。 -● 管理员可以创建新角色或编辑现有角色的人格设定,丰富平台角色生态。 - -2.2.6 后台管理模块 - 角色和普通用户管理 -● 管理员通过专用登录入口访问后台管理系统,享有完整的平台管理权限。 -● 管理员可以查看用户注册统计、活跃度分析等关键运营数据。 -● 系统提供用户账户管理功能,管理员可以查看用户详情、调整账户状态。 -● 管理员可以审核和管理AI角色内容,确保角色设定的质量和合规性。 -● 系统提供实时监控面板,展示服务器性能、API调用量等技术指标。 - -2.2.7 文件存储模块 - 七牛云存储集成 -● 用户可以上传头像、图片等多种类型的文件,系统自动检测文件格式和大小。 -● 系统集成七牛云存储服务,确保文件上传的稳定性和访问速度。 -● 用户可以按类型管理已上传的文件,支持文件预览、下载和删除操作。 -● 系统提供CDN加速服务,确保全球用户都能快速访问文件资源。 -● 管理员可以监控存储使用情况,设置文件大小限制和格式白名单。 - -2.2.8 AI模型管理模块 - 多AI提供商集成 -● 系统集成多个AI提供商(如SiliconFlow等),提供丰富的AI模型选择。 -● 管理员可以查看所有可用的AI模型列表,包括模型性能参数和可用状态。 -● 系统支持手动指定AI提供商和模型进行对话测试,便于模型效果评估。 -● 用户可以体验不同AI模型的对话风格,选择最适合的智能助手。 -● 系统提供统一的API接口封装,屏蔽不同提供商的接口差异。 - -2.2.9 实时语音对话模块 - WebSocket语音交互 -● 用户可以通过WebSocket连接与AI角色进行实时语音对话,支持语音输入和语音输出的全链路处理。 -● 系统支持实时音频流传输,用户说话时音频数据实时传送到服务器进行处理。 -● 用户可以选择语音模式或文字模式进行对话,系统自动识别输入类型并相应处理。 -● 系统提供音频录制开始和结束的控制,用户可以灵活控制对话节奏。 -● 支持WebSocket心跳检测机制,确保长时间对话的连接稳定性。 - -2.2.10 语音识别模块 - STT多平台集成 -● 系统集成多个语音识别服务提供商,包括七牛云STT、科大讯飞等主流平台。 -● 用户上传的音频文件支持多种格式(WAV、MP3、AAC、FLAC等),系统自动识别和转换。 -● 支持流式语音识别和批量语音识别两种模式,适应不同场景需求。 -● 系统提供语音识别置信度评估,确保识别结果的准确性。 -● 支持中英文等多语言识别,用户可以使用母语与AI角色对话。 -三、技术架构实现 -3.1 技术选型 -3.1.1 前端 -● 框架与语言:Vue 3.5.18 + TypeScript 5.8.0 -从业务适配角度,Vue3 的 Composition API 能够灵活拆分实时语音链路的复杂逻辑,比如语音采集、转译、AI 响应接收等环节的代码组织;TypeScript 则可通过静态类型检查,保障多 AI 模型集成过程中的参数传递、数据格式一致性,降低团队协作中的 bug 率,尤其适配多模型切换时的复杂数据处理场景。 -● 构建工具:Vite 7.0.6 -Vite 的毫秒级热更新特性,能大幅提升实时语音功能的开发迭代效率,减少调试时的等待时间;其支持的多环境构建(local/test/prod 模式),可直接适配项目的 CI/CD 自动化部署需求,无需额外配置复杂的环境切换逻辑,助力不同阶段(本地开发、测试验证、生产上线)的快速过渡。 -● UI 组件库:Element Plus 2.11.3 + 官方图标库 -Element Plus 提供的丰富组件能快速支撑平台核心功能页面搭建:例如用表单组件实现自定义角色的性格、对话风格配置界面,用弹窗组件开发多 AI 模型切换面板;同时其轻量化设计风格与对话界面的简洁需求匹配,搭配官方图标库可保障界面视觉统一性,减少自定义图标的开发成本。 -● 状态管理:Pinia 3.0.3 -针对平台多维度状态管理需求,Pinia 的模块化设计可单独划分 “模型状态”“角色配置状态” 等独立模块,避免多 AI 模型切换、自定义角色参数变更时的状态混乱;且支持按需加载特性,能减少实时对话场景下的首屏资源体积,间接提升页面加载与交互响应速度。 -● 网络请求:Axios 1.12.2 -Axios 的拦截器功能可统一处理多 AI 模型请求的 Token 验证、超时控制,保障语音与文本双向通信的稳定性,比如在请求拦截器中添加身份标识,响应拦截器中处理 401 权限失效等异常;其支持的请求取消功能,还能适配实时语音链路中断场景,避免无效请求占用资源,减少交互延迟。 -● 样式方案:Tailwind CSS 4.1.13 + postcss-pxtorem -Tailwind CSS 的原子化样式特性,可快速实现对话界面的细节设计,比如角色气泡的样式调整、语音按钮的交互效果优化,无需编写大量自定义 CSS;搭配 postcss-pxtorem 自动将 px 转换为 rem 的功能,能轻松适配 PC、平板等多端设备的交互场景,保障不同屏幕尺寸下的界面一致性。 -● 代码质量:ESLint 9.31.0 + Prettier 3.6.2 -ESLint 可对实时语音链路、多 AI 模型集成等复杂逻辑代码进行语法检查与风格规范,比如禁止未定义变量、统一代码缩进;Prettier 则能统一代码格式化标准,避免团队成员因格式差异产生协作成本,尤其适配多模型集成、角色配置等多模块开发场景下的代码可读性需求。 - -3.1.2 后端 -核心框架 -● Java 版本: Java 17 (LTS 长期支持版本) -● Spring Boot: 3.1.4 (企业级微服务框架) -● Web 框架: - ○ Spring Boot Starter Web (MVC + RESTful API) - ○ Spring Boot Starter WebSocket (实时通信) - ○ Spring WebFlux (响应式编程,用于AI服务调用) -认证与安全 -● 认证框架: Sa-Token 1.37.0 (轻量级Java权限认证框架) - ○ Sa-Token Spring Boot3 Starter - ○ Sa-Token Redis Jackson (分布式会话存储) -● 密码加密: BCrypt 0.10.2 (行业标准密码哈希) -● 数据验证: Spring Boot Starter Validation (JSR 303/380) -数据访问层 -● ORM框架: MyBatis Plus 3.5.3.2 (MyBatis 增强工具) -● 数据库: PostgreSQL 42.6.0 (强一致性关系型数据库) -● 连接池: HikariCP (Spring Boot 默认高性能连接池) -● 缓存: - ○ Spring Boot Starter Data Redis (Redis 集成) - ○ Redisson 3.23.4 (分布式锁和高级数据结构) -AI服务集成 -● 语音识别: 科大讯飞 WebSDK Java Speech 3.0.6 -● WebSocket客户端: - ○ Tyrus Client 1.19 (Java WebSocket 客户端实现) - ○ Tyrus Container Grizzly Client 1.19 -第三方服务 -● 文件存储: 七牛云 Java SDK 7.13.1 (云存储服务) -● 邮件服务: Spring Boot Starter Mail (163邮箱SMTP) -数据存储服务 -● 主数据库: PostgreSQL 15-alpine -● 缓存数据库: Redis 7-alpine -AI服务集成 -● 大语言模型: - ○ 七牛云AI (Grok-4-Fast) - ○ Google Gemini - ○ OpenAI GPT系列 -● 语音服务: - ○ 科大讯飞STT (语音转文字) - ○ 科大讯飞TTS (文字转语音) - ○ 七牛云语音识别 -开发运维工具 -● 容器化: Docker + Docker Compose -● 数据库管理: pgAdmin 4 (Web界面数据库管理) -● 邮件测试: MailHog (开发环境邮件测试工具) -● CI/CD: GitHub Actions (自动化构建和测试) -3.1.3 核心服务 -服务名 作用 -Auth 服务 1. 提供用户注册、登录、登出和密码重置服务 -2. 基于Sa-Token提供JWT认证和权限验证服务 -3.提供邮箱验证码发送和验证服务 -4. 提供多端会话管理和安全登录控制 -User 服务 1. 提供用户信息查询、修改个人资料和用户设置服务 -2. 提供用户权限管理和角色分配服务 -3.提供用户状态管理(启用/禁用)服务 -4. 提供用户数据统计和分析服务 -Character 服务 1. 提供AI角色创建、编辑、删除和查询服务 -2. 提供角色人格设定、背景故事和对话风格配置 -3.提供角色分类、搜索和推荐服务 -4. 提供角色热度统计和排行榜服务 -AI 服务 1. 集成多种LLM提供智能对话生成服务(七牛云AI、Gemini、OpenAI) -2. 提供语音识别(STT)和语音合成(TTS)服务 -3.提供实时AI对话和WebSocket通信服务 -4. 提供AI模型切换和参数调优服务 -Conversation 服务 1. 提供对话会话创建、管理和历史记录服务 -2. 提供消息存储、查询和上下文管理服务 -3.提供对话导出、分享和收藏服务 -4. 提供对话统计分析和用户行为追踪服务 -Voice 服务 1. 提供语音文件上传、处理和格式转换服务 -2. 集成科大讯飞提供语音识别和合成服务 -3.提供语音质量优化和降噪处理服务 -4. 提供语音播放控制和音频流管理服务 -File 服务 1. 集成七牛云提供文件上传、存储和CDN分发服务 -2. 提供图片、音频、视频等多媒体文件管理 -3.提供文件安全检查和格式验证服务 -4. 提供文件访问权限控制和临时链接生成 -Admin 服务 1. 提供管理员登录认证和权限管理服务 -2. 提供用户管理、角色管理和系统监控服务 -Common 服务 1. 提供统一的响应格式封装(ApiResponse)和异常处理 -2. 提供基础实体类和审计字段自动填充服务 -3.提供通用工具类和常量定义服务 -4. 提供跨模块共享的数据结构和枚举定义 -3.2 结构设计 -3.2.1 技术架构 -VocaTa采用现代化前后端分离架构,具备以下核心特征: -架构设计原则 -1. 前后端分离: 前端Vue3应用独立部署,通过RESTful API与后端通信 -2. 微服务架构: 按业务领域划分模块,支持独立开发和部署 -3. AI服务集成: 统一的AI服务抽象层,支持多厂商AI服务切换 -4. 安全为先: 基于JWT的无状态认证,细粒度权限控制 -核心技术决策: -● Java 17 + Spring Boot 3.1.4: 现代化JVM生态,享受最新语言特性和性能优化 -● PostgreSQL + Redis: 强一致性关系型数据 + 高性能缓存的混合存储架构 -● Sa-Token + JWT: 轻量级分布式认证,支持多端会话管理 -● Vue 3 + TypeScript: 类型安全的现代前端开发体验 -● Docker容器化: 环境一致性保证,简化部署和运维 - 1. 高可扩展性: 模块化设计支持水平扩展,微服务架构便于独立升级 - 2. 高性能: Redis缓存 + 连接池优化 + 异步处理机制 - 3. 高安全性: JWT无状态认证 + HTTPS传输 + 参数验证 + SQL注入防护 - 4. 高可维护性: 统一的代码规范 + 完整的异常处理 + 详细的日志记录 - 5. 云原生: Docker容器化 + 多环境配置 + CI/CD自动化 - 6. AI集成: 统一抽象层支持多种AI服务提供商,便于切换和扩展 - -用户认证流程: -● 登录请求 → Sa-Token验证 → JWT生成 → Redis存储会话 → 返回Token → 前端存储 -● API请求 → Token验证 → Redis查询会话 → 用户上下文构建 → 业务处理 -AI对话流程: -● 语音输入 → STT(七牛云ASR) → LLM处理(七牛云AI) → TTS(科大讯飞) → 语音输出 -● 文字输入 → LLM处理 → 结构化响应 → 对话历史存储 → 前端渲染