# aidb **Repository Path**: cpsoft13/aidb ## Basic Information - **Project Name**: aidb - **Description**: 基于AI的数据分析系统。AI通过抽取数据库中数据,对业务进行分析。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-02-22 - **Last Updated**: 2026-03-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # AIDB - AI驱动的数据分析系统 [![Go Version](https://img.shields.io/badge/Go-1.21+-blue.svg)](https://golang.org) [![Vue Version](https://img.shields.io/badge/Vue-3.0+-green.svg)](https://vuejs.org) [![License](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) AIDB是一个基于Go语言和Vue.js的AI驱动数据分析系统,采用微服务架构,集成了大语言模型能力,为企业提供智能化的数据分析和管理决策支持。 ## 🚀 核心特性 - **🤖 AI智能分析**: 集成多种大语言模型,支持自然语言查询和智能数据分析 - **🏗️ 微服务架构**: 基于go-zero框架的微服务设计,高可用、易扩展 - **🔐 权限管理**: 完整的RBAC权限控制系统,支持细粒度权限管理 - **📊 数据可视化**: 现代化的Vue.js前端界面,直观的数据展示 - **🔄 实时处理**: 支持实时数据查询和分析结果展示 - **🛡️ 安全可靠**: 数据加密存储,JWT认证,完善的安全机制 ## 🏛️ 系统架构 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 前端 Vue.js │ │ API Gateway │ │ RPC Services │ │ :3000 │ │ :8888 │ │ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ │ 登录界面 │ │◄──►│ │ 路由转发 │ │◄──►│ │ 用户服务:9001│ │ │ │ 管理界面 │ │ │ │ 认证授权 │ │ │ │ 数据服务:9002│ │ │ │ 数据展示 │ │ │ │ 权限控制 │ │ │ │ AI服务:9003 │ │ │ │ 图表组件 │ │ │ │ 限流熔断 │ │ │ │ 权限服务:9004│ │ │ └─────────────┘ │ │ └─────────────┘ │ │ └─────────────┘ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ ▲ ▲ │ │ ┌─────────────────┐ ┌─────────────────┐ │ AI工作流引擎 │ │ 基础设施层 │ │ │ │ │ │ ┌─────────────┐ │ │ ┌─────────────┐ │ │ │ langchain │ │ │ │ MySQL:3306 │ │ │ │ 提示词管理 │ │ │ │ Redis:6379 │ │ │ │ 模型调用 │ │ │ │ Etcd:2379 │ │ │ └─────────────┘ │ │ └─────────────┘ │ └─────────────────┘ └─────────────────┘ ``` ## 🛠️ 技术栈 ### 后端技术 - **Go 1.21+**: 主要开发语言 - **go-zero**: 微服务框架 - **langchain-go**: AI工作流引擎 - **MySQL 8.0**: 主数据库 - **Redis 7**: 缓存和会话存储 - **Etcd v3.5.10**: 服务注册发现 ### 前端技术 - **Vue.js 3**: 前端框架 - **Element Plus**: UI组件库 - **TypeScript**: 类型安全 - **Vite**: 构建工具 - **Pinia**: 状态管理 ### 基础设施 - **Docker & Docker Compose**: 容器化部署 - **Nginx**: 反向代理 - **JWT**: 身份认证 ## 📦 快速开始 ### 环境要求 - Go 1.21+ - Node.js 18+ - Docker & Docker Compose - MySQL 8.0 - Redis 7 ### 安装步骤 1. **克隆项目** ```bash git clone https://github.com/your-username/aidb.git cd aidb ``` 2. **启动基础设施服务** ```bash ./scripts/setup-infrastructure.sh start ``` 3. **初始化数据库** ```bash ./scripts/setup-infrastructure.sh init-db ``` 4. **启动应用服务** ```bash ./scripts/start-local.sh ``` 5. **访问应用** - 前端应用: http://localhost:3000 - API网关: http://localhost:8888 - 默认管理员账户: admin / admin123 ### Docker部署 ```bash # 启动所有服务 docker-compose up -d # 查看服务状态 docker-compose ps # 查看日志 docker-compose logs -f ``` ## 📚 项目结构 ``` aidb/ ├── ai/ # AI工作流模块 │ ├── agents/ # AI代理 │ ├── chains/ # langchain工作流 │ ├── llms/ # 大语言模型集成 │ └── prompts/ # 提示词模板 ├── api/ # API定义文件 ├── cmd/ # 应用程序入口 │ ├── api/ # API网关服务 │ └── rpc/ # RPC服务 ├── frontend/ # Vue.js前端应用 │ ├── src/ │ │ ├── components/ # Vue组件 │ │ ├── views/ # 页面视图 │ │ ├── api/ # API调用封装 │ │ └── stores/ # Pinia状态管理 ├── internal/ # 内部业务逻辑 │ ├── handler/ # API处理器 │ ├── logic/ # 业务逻辑 │ ├── middleware/ # 中间件 │ └── types/ # 类型定义 ├── model/ # 数据模型 ├── rpc/ # RPC服务 │ ├── ai/ # AI服务 │ ├── data/ # 数据服务 │ ├── permission/ # 权限服务 │ └── user/ # 用户服务 ├── scripts/ # 部署和管理脚本 ├── sql/ # 数据库脚本 └── docs/ # 项目文档 ``` ## 🔧 开发指南 ### 本地开发 1. **启动基础设施** ```bash ./scripts/setup-infrastructure.sh start ``` 2. **启动后端服务** ```bash # 启动所有RPC服务 go run cmd/rpc/user/main.go -f etc/user.yaml & go run cmd/rpc/permission/main.go -f etc/permission.yaml & go run cmd/rpc/data/main.go -f etc/data.yaml & go run cmd/rpc/ai/main.go -f etc/ai.yaml & # 启动API网关 go run cmd/api/main.go -f etc/api.yaml ``` 3. **启动前端服务** ```bash cd frontend npm install npm run dev ``` ### 代码规范 - 遵循Go官方代码规范 - 使用`gofmt`格式化代码 - 使用`golangci-lint`进行代码检查 - 前端代码遵循Vue.js最佳实践 - 使用TypeScript增强类型安全 ### API响应格式 所有API接口使用统一的响应格式: ```json { "code": 200, "message": "操作成功", "data": { // 具体的业务数据 }, "trace_id": "可选的追踪ID" } ``` ## 🧪 测试 ```bash # 运行Go测试 go test ./... # 运行前端测试 cd frontend npm run test ``` ## 📖 文档 - [快速开始指南](docs/quick-start-local.md) - [部署指南](docs/deployment-guide.md) - [架构设计](.kiro/steering/architecture.md) - [脚本使用指南](scripts/README.md) - [已解决问题汇总](docs/ISSUES_RESOLVED.md) - [服务管理指南](docs/SERVICE_MANAGEMENT_GUIDE.md) - [清理总结](CLEANUP_SUMMARY.md) ## 🤝 贡献 欢迎提交Issue和Pull Request来帮助改进项目。 1. Fork 项目 2. 创建特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 打开Pull Request ## 📄 许可证 本项目采用MIT许可证 - 查看 [LICENSE](LICENSE) 文件了解详情。 ## 🙏 致谢 - [go-zero](https://github.com/zeromicro/go-zero) - 微服务框架 - [langchain-go](https://github.com/tmc/langchaingo) - AI工作流引擎 - [Vue.js](https://vuejs.org/) - 前端框架 - [Element Plus](https://element-plus.org/) - UI组件库 ## 📞 联系方式 如有问题或建议,请通过以下方式联系: - 提交Issue: [GitHub Issues](https://github.com/your-username/aidb/issues) - 邮箱: your-email@example.com --- ⭐ 如果这个项目对你有帮助,请给它一个星标!