# Conflicts: # seer-mp/seer-mp-service-app-bootstrap/src/main/resources/db/mysql/V1.0.2__add_agent_activity_tables.sql
Seer Teach Cloud - 智能教育AI云平台
项目概述
Seer Teach Cloud 是一个基于Spring Cloud微服务架构的智能教育AI云平台,集成了先进的AI技术,提供个性化学习、智能批改、知识图谱构建等功能。该平台专为现代教育场景设计,支持多终端访问,包括智能设备、移动端和Web端。
架构特点
微服务架构
- 服务拆分:按业务领域拆分为多个独立的微服务模块
- 技术栈:Spring Boot 3.5.9 + Spring Cloud 2025.0.1 + Spring Cloud Alibaba
- 网关层:Spring Cloud Gateway统一入口,支持路由、限流、鉴权
- 注册中心:Nacos服务注册与发现
- 配置中心:Nacos统一配置管理
AI智能教育引擎
- 大语言模型集成:支持阿里云百炼、火山引擎等多种AI平台
- 智能批改:AI自动批改作业和试卷,提供详细解析
- 个性化推荐:基于学习行为的智能推荐系统
- 知识点拆分:AI自动拆分和构建知识图谱
- 智能问答:支持自然语言交互的智能答疑
核心功能模块
1. 教师服务 (seer-teacher)
- 知识点管理与拆分
- 教学目标生成
- 讲课稿与音视频生成
- 学生学习报告分析
- AI辅助教学工具
2. 用户服务 (seer-user)
- 用户注册与登录
- 权限管理
- 用户扩展信息管理
- 等级与积分系统
3. 商城服务 (seer-mall)
- 商品管理与分类
- 订单处理
- 购物车功能
- 支付集成
4. 支付服务 (seer-pay)
- 学豆系统(虚拟币)
- 充值与消费
- 订单支付
- 退款处理
5. 物联网服务 (seer-iot)
- 设备管理
- 硬件交互
- 数据采集与分析
6. 消息推送 (seer-netty)
- 实时消息推送
- IM通信
- 音视频流处理
7. 微信服务 (seer-mp)
- 微信公众号集成
- 小程序支持
- OAuth认证
8. 开放API (seer-open-api)
- API网关
- 第三方集成
- 访问控制
技术栈
后端技术
- 基础框架: Spring Boot 3.5.9 / Spring Cloud 2025.0.1
- 微服务: Spring Cloud Alibaba, Nacos, OpenFeign
- 持久层: MyBatis-Plus 3.5.15, MySQL, Redis
- 消息队列: RocketMQ
- 任务调度: XXL-Job
- API文档: SpringDoc OpenAPI
- 权限认证: Sa-Token
- 对象存储: MinIO
- 序列化: Protobuf, Fastjson2
- 模板引擎: Freemarker, Velocity
AI与数据处理
- AI平台集成: 阿里云百炼、火山引擎
- 大模型调用: LLM API集成
- 文本转语音: AI语音合成
- 智能批改: OCR + AI分析
- 知识图谱: 知识点拆分与关联
网络通信
- Netty: 高性能网络通信框架
- Protobuf: 高效序列化协议
- SSE: Server-Sent Events实时通信
- MQ: RocketMQ消息队列
项目结构
seer-teach-cloud-21/
├── seer-dependencies/ # 依赖管理
├── seer-common/ # 通用组件
│ ├── common/ # 通用工具类
│ ├── common-auth-scan/ # 认证扫描
│ ├── common-cache/ # 缓存组件
│ ├── common-config/ # 配置管理
│ ├── ... # 其他通用模块
├── seer-gateway/ # API网关
├── seer-teacher/ # 教师服务
│ ├── seer-teacher-api/ # 教师API接口
│ ├── seer-teacher-service/ # 教师业务服务
│ ├── seer-teacher-service-admin/ # 教师管理服务
│ └── ... # 其他教师模块
├── seer-user/ # 用户服务
├── seer-mall/ # 商城服务
├── seer-pay/ # 支付服务
├── seer-iot/ # 物联网服务
├── seer-netty/ # 网络通信服务
├── seer-mp/ # 微信服务
└── seer-open-api/ # 开放API服务
快速开始
环境要求
- Java 21+
- Maven 3.8+
- MySQL 8.0+
- Redis 6.0+
- Nacos Server
- MinIO (可选)
本地开发
- 克隆项目
git clone https://github.com/seer-teach-cloud/seer-teach-cloud-21.git
cd seer-teach-cloud-21
- 配置环境
# 配置数据库连接、Redis连接等
# 修改各模块的 application.yml 文件
- 编译项目
mvn clean install -Dmaven.test.skip=true
- 启动服务
# 1. 启动 Nacos Server
# 2. 启动 MySQL 和 Redis
# 3. 按顺序启动各微服务模块
- 本地开发执行命令:
mvn flatten:clean
mvn clean install '-Dmaven.test.skip=true'
API接口设计规范
RESTful接口设计
- 资源使用复数名词(如/users),单个资源通过ID标识(如/users/{id})
- 避免URL中出现动词,操作通过HTTP方法区分
- 统一返回JSON格式,包含code、message、data字段
HTTP方法与操作映射
| 方法 | 场景 | 状态码示例 |
|---|---|---|
| GET | 获取资源(支持过滤参数) | 200, 304, 404 |
| POST | 创建资源(需返回Location头) | 201, 400, 415 |
| PUT | 全量更新资源 | 200, 409(冲突) |
| DELETE | 删除资源 | 204, 404 |
过滤与分页参数
- 使用
?limit=10&offset=0或?page=1&per_page=10控制返回数据量 - 支持排序(
?sort=field&order=asc)和条件筛选(?status=active)
数据库设计规范
表结构设计
- 表名使用复数(如user改为users),主键为id,外键用关联表名_id(如user_id)
- 字段命名使用小驼峰(如create_time),避免保留字
索引优化
- 主键自动创建聚簇索引,唯一字段添加唯一索引
- 高频查询字段添加普通索引,复合索引遵循"最左前缀原则"
事务与连接池
- 使用@Transactional注解管理事务,明确传播行为
数据库迁移规范
版本化迁移脚本 (Versioned Migrations)
- 命名格式:V + 版本号 + 双下划线 + 描述 + .sql
- 示例:V20240619__init.sql、V1.5.0__add_user_table.sql
可重复迁移脚本 (Repeatable Migrations)
- 命名格式:R + 双下划线 + 描述 + .sql
- 示例:R__update_view.sql
AI功能模块
支持的AI场景
- 知识点生成示例题目
- 知识点生成题目
- 教材解析
- 知识点拆分与检查
- 举一反三题目生成
- 教学目标生成
- 讲课稿生成
- 文本转语音
AI平台支持
- 阿里云百炼平台
- 火山引擎(即梦)
- 本地模型
开发规范
代码规范
- 遵循Java编程规范
- 使用Lombok简化代码
- 使用MapStruct进行对象映射
- 统一日志记录
测试规范
- 单元测试覆盖率达到80%以上
- 集成测试覆盖核心业务流程
- 性能测试确保系统稳定性
部署说明
生产环境部署
- 配置生产环境的数据库、Redis、Nacos等中间件
- 编译打包各微服务模块
- 使用Docker容器化部署
- 配置负载均衡和监控
Docker部署
# 构建Docker镜像
mvn spring-boot:build-image
# 使用Docker Compose部署
docker-compose up -d
监控与运维
监控指标
- 应用性能监控(APM)
- 业务指标监控
- 系统资源监控
- AI服务调用监控
Seer Teach Cloud - 让AI赋能教育,让学习更智能!
Description
Languages
Java
99.7%
Dockerfile
0.2%