一款综合性一体化在线教育平台,支持 OpenAI 和 Ollama 模型 本项目是一个综合性的教育平台,包含多个微服务模块,提供以下核心功能: - AI 聊天服务:支持与 AI 的对话交互,包括流式和非流式消息发送、对话历史记录、对话管理、模型配置等。
- 文章服务:支持文章的发布、分类、标签管理、评论系统、点赞机制等。
- 聊天服务:提供用户之间的私聊、群聊、好友管理、群组管理等功能。
- 课程服务:支持课程、章节、课时的创建与管理,以及学习进度跟踪。
- 编程服务:提供编程问题管理、代码提交与运行、代码质量分析、代码相似度检测等功能。
项目结构项目采用微服务架构,主要模块如下: - ai-chat-service: AI 对话服务,处理与 AI 的交互。
- article-service: 文章服务,用于管理博客文章、评论、标签等。
- chat-service: 聊天服务,支持私聊、群聊、好友管理、群组管理等。
- classroom-service: 课程服务,用于管理课程、章节、课时及学习进度。
- coding-service: 编程服务,提供编程问题、代码执行、提交评判等功能。
- common: 公共模块,包含通用工具类、异常处理、安全配置、缓存注解等。
模块介绍AI 聊天服务 (ai-chat-service)- 提供 AI 对话接口,支持 OpenAI 和 Ollama 模型。
- 支持流式和非流式消息发送。
- 支持对话历史记录、对话标题更新、对话状态管理。
- 支持模型配置管理,包括启用/禁用模型、模型类型配置等。
文章服务 (article-service)- 支持文章的发布、编辑、删除、点赞、评论。
- 支持文章分类、标签管理。
- 提供热门文章、活跃作者、文章归档等功能。
- 支持文章的浏览量统计和点赞状态查询。
聊天服务 (chat-service)- 支持私聊和群聊功能。
- 提供好友管理(添加、删除、拉黑、备注等)。
- 支持群组管理(创建、加入、退出、管理员设置、禁言等)。
- 提供 WebSocket 实时通信支持。
课程服务 (classroom-service)- 支持课程、章节、课时的创建、发布、编辑、删除。
- 提供学习进度跟踪、学习统计、学习建议等功能。
- 支持课程推荐、收藏、评分、审核等操作。
编程服务 (coding-service)- 提供编程问题管理、代码提交、代码运行、代码质量分析。
- 支持代码相似度检测、代码抄袭检查。
- 提供测试用例管理、提交排行榜、优秀代码分享等功能。
公共模块 (common)- 提供通用工具类、异常处理、安全配置、缓存机制、日志记录等。
- 包含 JWT 认证、权限控制、Redis 缓存、数据库自动填充等功能。
环境依赖- Java 17 或更高版本
- Spring Boot 2.7.x 或更高
- MyBatis Plus
- Redis
- RocketMQ(用于消息队列)
- MySQL 或其他关系型数据库
- Docker(用于代码执行沙箱)
安装和使用1. 下载项目
2. 构建项目确保已安装 Maven: - cd <项目目录>
- mvn clean install
复制代码 3. 启动各服务依次启动以下服务(或使用 Spring Boot 启动): - ai-chat-service
- article-service
- chat-service
- classroom-service
- coding-service
4. 配置文件修改各模块下的 application.yml 文件,配置数据库、Redis、RocketMQ 等信息。 5. 数据库初始化导入 SQL 文件到数据库中(如 chat-service/src/main/resources/db/migration/V1__Create_chat_tables.sql)。 构建使用 Maven 构建: 构建完成后,可在 target 目录下找到生成的 JAR 文件。 运行启动服务: - java -jar ai-chat-service/target/ai-chat-service.jar
- java -jar article-service/target/article-service.jar
- java -jar chat-service/target/chat-service.jar
- java -jar classroom-service/target/classroom-service.jar
- java -jar coding-service/target/coding-service.jar
复制代码 API 文档API 文档可通过 Swagger UI 查看,访问路径为: - http://localhost:8080/swagger-ui/index.html
复制代码
一款综合性一体化在线教育平台,支持 OpenAI 和 Ollama 模型

链接: https://pan.baidu.com/s/1aX1e7UFldFgEgINdIMiaqw
提取码下载:
|