为了使通用大语言模型适配特定任务与领域,对齐人类偏好于价值观,并对模型的行为和风格进行控制,我们团队开发了这一款系统。本系统基于大语言模型(LLM)的 AI 角色扮演聊天平台后端服务。用户可创建虚拟角色、自定义角色人设(系统提示词)、上传背景知识文档,并通过 RAG(检索增强生成)技术与 AI 角色进行沉浸式对话。系统支持同步/流式两种对话模式,具备上下文记忆管理能力,能够将用户知识库内容作为对话背景注入,提升角色扮演的真实感与一致性。
点击空白处退出提示
为了使通用大语言模型适配特定任务与领域,对齐人类偏好于价值观,并对模型的行为和风格进行控制,我们团队开发了这一款系统。本系统基于大语言模型(LLM)的 AI 角色扮演聊天平台后端服务。用户可创建虚拟角色、自定义角色人设(系统提示词)、上传背景知识文档,并通过 RAG(检索增强生成)技术与 AI 角色进行沉浸式对话。系统支持同步/流式两种对话模式,具备上下文记忆管理能力,能够将用户知识库内容作为对话背景注入,提升角色扮演的真实感与一致性。
1. 用户认证:JWT Token 签发与验证,BCrypt 密码加密,注解式用户隔离 ;
2.角色管理:角色 CRUD,自定义角色名称、头像、描述 ;
3.系统提示词:多提示词管理,默认提示词设置,角色人设定制 ;
4.会话管理:对话会话创建,可配置记忆轮数,知识库动态挂载/卸载 ;
5.智能对话:同步对话 + SSE 流式对话,上下文记忆管理,RAG 知识检索增强 ;
6.知识库 :文档上传、自动分块、向量化入库、语义检索 ;
7.RAG 检索:基于 Milvus 向量相似度检索 + BGE-Reranker 重排序,Top-K 文档注入对话上下文 ;
技术栈:
- 后端框架: Spring Boot 3.4.5 + Spring AI 1.0.9,Java 17,Maven 构建
- 大语言模型: Ollama 本地部署 qwen2.5-14b 模型,Spring AI ChatClient 集成
- RAG 管道: Milvus 2.6 向量数据库 + BGE-M3 向量化模型 + BGE-Reranker-Large 重排序模型(Xinference 部署)
- 数据存储: MySQL 8(关系数据)+ Redis(会话缓存/对话历史)+ Milvus(向量存储)
- 认证安全: Spring Security + JWT(jjwt 0.12.6)+ BCrypt 密码加密,无状态会话架构
- ORM: Spring Data JPA / Hibernate
- 文档分块: Spring AI TokenTextSplitter
本人职责:
- 负责项目整体架构设计,采用 Spring Boot 三层架构(Controller -> Service -> Repository)搭建项目骨架
- 集成 Spring AI 框架与 Ollama 大语言模型,实现同步和 SSE 流式对话两种交互模式
- 设计并实现完整的 RAG 管道:文档分块 -> BGE-M3 向量化 -> Milvus 向量存储 -> 语义检索 -> 重排序 -> 上下文注入
- 自定义实现 Xinference Embedding 适配层,对接 BGE-M3 模型 API 完成 1024 维向量化
- 基于 Spring Security + JWT 实现无状态认证体系,设计细粒度的用户数据隔离方案
- 使用 Redis 实现滑动窗口式对话历史记忆管理,支持可配置记忆轮数
- 设计 MySQL 数据库





评论