# IOT模型训练 **Repository Path**: jiawy401/iot-model-training ## Basic Information - **Project Name**: IOT模型训练 - **Description**: No description available - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-09-22 - **Last Updated**: 2025-09-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # SmartCity-LLM Trainer > IOT智慧城市LLM模型训练平台 ## 📋 项目概述 SmartCity-LLM Trainer 是一个专为IoT智慧城市场景设计的LLM模型训练平台,支持多种智慧城市应用场景的数据处理、模型训练和部署。 ### 🎯 支持场景 - 🏮 **智慧照明**: 基于环境传感器的智能照明控制 - 🗼 **多功能灯杆**: 集成多种IoT设备的智能灯杆管理 - 🚗 **智慧停车**: 停车位检测和车辆管理系统 - 🌱 **智慧农业**: 农业IoT数据分析和预测 - ⚡ **城市能源管理**: 城市能源消耗优化和管理 - 🚦 **交通管理**: 智能交通信号和流量控制 - 🌍 **环境监测**: 空气质量和环境数据监控 ## 🏗️ 技术架构 ### 核心技术栈 - **后端**: FastAPI + Python 3.11+ - **前端**: React 18 + TypeScript 5 - **数据库**: PostgreSQL 15+ + Redis 7.0+ - **AI/ML**: PyTorch 2.0+ + Lightning - **部署**: Docker + Kubernetes - **架构**: 五层架构 + 微服务 + 云边协同 ### 系统架构图 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 前端展示层 │ │ API网关层 │ │ 业务服务层 │ │ React + TS │◄──►│ FastAPI │◄──►│ 微服务集群 │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ AI训练层 │ │ 数据存储层 │ │ 基础设施层 │ │ PyTorch+Lightning│ │PostgreSQL+Redis │ │ Docker+K8s │ └─────────────────┘ └─────────────────┘ └─────────────────┘ ``` ## 🚀 快速开始 ### 前置要求 - Python 3.11+ - Node.js 18+ - PostgreSQL 15+ - Redis 7.0+ - Docker 24+ (可选) ### 1. 克隆项目 ```bash git clone cd iot-model-training ``` ### 2. 后端启动 ```bash cd backend # 安装依赖 pip install -r requirements.txt # 配置环境变量 cp .env.example .env # 编辑 .env 文件配置数据库连接等 # 启动开发服务器(自动安装依赖和初始化数据库) python start_dev.py ``` ### 3. 前端启动 ```bash cd frontend # 安装依赖 npm install # 启动开发服务器 npm run dev ``` ### 4. 使用Docker Compose(推荐) ```bash # 启动所有服务 docker-compose up -d # 查看服务状态 docker-compose ps # 查看日志 docker-compose logs -f ``` ## 📚 项目文档 ### 设计文档 - 📄 [产品方案](./product.md) - 完整的产品需求和功能规划 - 🏗️ [概要设计](./generalDesign.md) - 系统整体架构设计 - 🔧 [详细设计](./detailDesign.md) - 详细的接口和功能设计 - 🏛️ [架构设计](./structDesign.md) - 技术架构和部署方案 - 📅 [开发计划](./devPlan.md) - 完整的开发时间线和任务分解 ### API文档 - 🌐 Swagger UI: http://localhost:8000/api/v1/docs - 📖 ReDoc: http://localhost:8000/api/v1/redoc ### 后端详细文档 - 📋 [后端开发说明](./backend/README.md) - 详细的后端开发文档 ## 📊 开发进度 ### ✅ 已完成功能 **Phase 1, Month 1, Week 1-2: 基础平台搭建** **Week 1: 项目结构搭建** - ✅ SQLAlchemy + Alembic数据库迁移配置 - ✅ Pydantic数据模型设计和实现 - ✅ pytest测试框架搭建 - ✅ Repository模式数据访问层 - ✅ 完整的数据库模型(User, Project, DataSource, TrainingJob, Model) **Week 2: 用户认证系统** - ✅ JWT token认证机制 - ✅ 用户注册/登录API - ✅ 基于角色的权限控制(admin, project_manager, developer, viewer) - ✅ 安全中间件(CORS, 安全头, 速率限制, 请求日志) - ✅ API文档自动生成 ### 🔄 当前开发状态 - 📅 **当前阶段**: Phase 1, Month 1, Week 3 准备开始 - 🎯 **下一目标**: 数据库设计和基础服务完善 - 📈 **完成进度**: 约15% (2/12个月) ### 🗂️ 核心功能模块 **已实现的API接口** - `POST /api/v1/auth/register` - 用户注册 - `POST /api/v1/auth/login` - 用户登录 - `POST /api/v1/auth/refresh` - 刷新令牌 - `GET /api/v1/users/me` - 获取当前用户信息 - `PUT /api/v1/users/me` - 更新用户信息 - `POST /api/v1/users/change-password` - 修改密码 - `GET /api/v1/users/` - 获取用户列表(需权限) ## 🏷️ 项目特性 ### 🔒 安全特性 - JWT令牌认证 - 基于角色的访问控制(RBAC) - API速率限制 - 安全HTTP头 - 密码加密存储 ### 🏗️ 架构特性 - 异步FastAPI框架 - Repository模式数据访问 - 分层架构设计 - Docker容器化部署 - 微服务架构支持 ### 🧪 开发特性 - 完整的测试覆盖 - 自动API文档生成 - 代码质量检查(black, mypy, flake8) - 结构化日志记录 - 开发环境一键启动 ## 📁 项目结构 ``` iot-model-training/ ├── backend/ # 后端服务 │ ├── app/ │ │ ├── api/ # API路由 │ │ ├── core/ # 核心配置 │ │ ├── models/ # 数据模型 │ │ ├── schemas/ # Pydantic模式 │ │ ├── services/ # 业务服务 │ │ └── repositories/ # 数据访问层 │ ├── tests/ # 测试用例 │ ├── alembic/ # 数据库迁移 │ ├── requirements.txt # Python依赖 │ ├── main.py # 应用入口 │ └── start_dev.py # 开发启动脚本 ├── frontend/ # 前端应用 │ ├── src/ │ ├── public/ │ ├── package.json │ └── vite.config.ts ├── docs/ # 文档 ├── docker-compose.yml # Docker编排 └── README.md # 项目说明 ``` ## 🤝 贡献指南 ### 开发流程 1. Fork 本仓库 2. 创建功能分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开 Pull Request ### 代码规范 - 遵循PEP 8代码风格 - 使用类型提示 - 编写单元测试 - 测试覆盖率 > 80% - 提交信息遵循约定式提交规范 ### Git提交规范 - `feat:` 新功能 - `fix:` 修复bug - `docs:` 文档更新 - `style:` 代码格式化 - `refactor:` 代码重构 - `test:` 测试相关 - `chore:` 构建过程或辅助工具的变动 ## 📞 技术支持 如有问题或建议,请通过以下方式联系: - 📧 提交Issue - 💬 项目讨论区 - 📖 查看项目文档 ## 📄 许可证 本项目采用 MIT 许可证 - 查看 [LICENSE](LICENSE) 文件了解详情