# AMS **Repository Path**: rory-pd-yang/artificial-intelligence-management-system ## Basic Information - **Project Name**: AMS - **Description**: AIMS(Artificial Intelligence Management System)是一套基于微服务架构的智能管理系统,采用 Spring Cloud 生态构建。系统集成了 AI 智能对话、智能文档解析、RAG(检索增强生成)和文件管理等功能,为企业提供一站式的 AI 能力支撑平台。 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2026-02-25 - **Last Updated**: 2026-05-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 人工智能管理系统 (AIMS) [English Version](./README.en.md) ## 项目简介 AIMS(Artificial Intelligence Management System)是一套基于微服务架构的智能管理系统,采用 Spring Cloud 生态构建。系统集成了 AI 智能对话、智能文档解析、RAG(检索增强生成)和文件管理等功能,为企业提供一站式的 AI 能力支撑平台。 ## 技术栈 ### 后端技术 | 技术 | 说明 | |------|------| | Java 17 | 开发语言 | | Spring Boot 3 | 应用框架 | | Spring Cloud | 微服务框架 | | Spring Cloud Gateway | API 网关 | | Spring Cloud OpenFeign | 服务间通信 | | Spring AI | AI 能力框架 | | MyBatis Plus | ORM 框架 | | MinIO | 对象存储 | | Redis | 缓存数据库 | | MongoDB | 文档数据库 | | Milvus | 向量数据库 | | MySQL | 关系型数据库 | ### AI 模型集成 - **OpenAI GPT** - 智能对话 - **OpenAI Embedding** - 文本向量化 ## 架构设计 ``` ┌─────────────────────────────────────────────────────────────┐ │ AmsGateway │ │ (API 网关) │ └─────────────────────────┬───────────────────────────────────┘ │ ┌───────────────┼───────────────┐ │ │ │ ▼ ▼ ▼ ┌───────────────┐ ┌───────────────┐ ┌───────────────┐ │ AiCenter │ │ CommonService │ │ AuthCenter │ │ (AI 服务) │ │ (文件服务) │ │ (认证服务) │ │ │ │ │ │ │ │ • 智能对话 │ │ • MinIO存储 │ │ • 用户认证 │ │ • PDF解析 │ │ • 文件管理 │ │ • 权限控制 │ │ • RAG检索 │ │ • 文档存储 │ │ │ └───────────────┘ └───────────────┘ └───────────────┘ │ │ ▼ ▼ ┌───────────────┐ ┌───────────────┐ │ CommonWeb │ │ AMSCore │ │ (公共 Web) │ │ (核心库) │ │ │ │ │ │ • 异常处理 │ │ • 统一响应 │ │ • 工具类 │ │ • 常量定义 │ │ • 实体基类 │ │ • 时间工具 │ └───────────────┘ └───────────────┘ ``` ## 模块说明 ### AMSCore - 核心公共模块 提供系统级公共组件: - **ResultConstant** - 统一响应状态码常量 - **GlobalTimeUtils** - 全局时区时间处理工具 - **JwtUtils** - JWT 令牌工具类 - **UserContext** - 用户上下文管理 - **R** - 统一响应对象 - **CommonException** - 统一异常类 ### AMS-AiCenter - AI 服务模块 核心 AI 能力服务,提供以下功能: - **智能对话** - 基于 Spring AI 的流式对话服务 - **PDF 文档解析** - 文件解析并向量化存储 - **RAG 检索增强** - 知识库问答支持 - **Agent 管理** - AI Agent 的创建、配置和对话 - **Skill 管理** - AI 技能模板管理 - **Tool 管理** - 外部工具集成(邮件、天气、搜索等) - **工作流引擎** - 可视化工作流编排 - **上下文管理** - 智能上下文组装与治理 ### AMS-CommonService - 通用文件服务 文件管理模块: - **MinIO 存储** - 对象存储服务 - **知识库管理** - 知识库桶和文件管理 - **文件预览** - 临时签名 URL 生成 - **文件下载** - 支持大文件下载 ### AMS-AuthCenter - 认证服务 身份认证与授权: - **用户认证** - RSA 加密登录 - **JWT 令牌** - 访问令牌和刷新令牌 - **权限控制** - 基于角色的访问控制 (RBAC) - **数据权限** - 细粒度数据Scope控制 ### AMS-Gateway - API 网关 统一网关服务: - **路由转发** - 请求路由到后端服务 - **鉴权拦截** - JWT 令牌验证 - **黑名单机制** - 令牌黑名单管理 - **跨域配置** - CORS 配置 - **负载均衡** - 客户端负载均衡 ### AMS-CommonWeb - 公共 Web 模块 Web 层公共组件: - **异常处理** - 全局统一异常拦截 - **工具类** - Web 工具类、Cookie 工具 - **实体基类** - PO/DTO/VO 基类定义 - **枚举工具** - 智能枚举转换工具 - **参数校验** - 请求参数校验 ### AMS-Api - Feign 客户端 服务间调用的 Feign 客户端定义: - **FileClients** - 文件服务调用客户端 ## 核心功能 ### 🤖 AI 智能对话 - 支持流式输出(SSE) - 多模型切换 - 会话历史管理 - 对话上下文记忆 ### 📄 智能文档解析 - PDF 文件解析 - 文本向量化存储 - 文档片段检索 - 多文件管理 ### 🔍 RAG 检索增强 - 知识库创建与管理 - 向量相似度检索 - 上下文压缩优化 - 多知识库联合查询 ### 📁 文件管理 - MinIO 对象存储 - 知识库桶管理 - 文件预览与下载 - 签名 URL 授权 ### 👤 认证授权 - RSA 加密登录 - JWT 令牌管理 - 角色权限控制 - 多租户支持 ## 快速开始 ### 环境要求 - JDK 17+ - Maven 3.8+ - MySQL 8.0+ - Redis 6.0+ - MongoDB 5.0+ - Milvus 2.0+ (可选,向量数据库) - MinIO (对象存储) ### 构建项目 ```bash # 克隆项目 git clone https://gitee.com/ypd0210/artificial-intelligence-management-system.git # 进入项目目录 cd artificial-intelligence-management-system # 编译打包 mvn clean package -DskipTests ``` ### 启动服务 按顺序启动微服务: 1. **AMS-Gateway** - 端口 8080 2. **AMS-AuthCenter** - 端口 8081 3. **AMS-CommonService** - 端口 8082 4. **AMS-AiCenter** - 端口 8083 ```bash # 分别进入各模块目录启动 cd AMS-Gateway mvn spring-boot:run # 或使用 jar 包启动 java -jar AMS-Gateway/target/AMS-Gateway.jar ``` ## 配置说明 ### 核心配置 (application.yaml) ```yaml spring: application: name: aims cloud: nacos: discovery: server-addr: 127.0.0.1:8848 data: redis: host: 127.0.0.1 port: 6379 mongodb: uri: mongodb://127.0.0.1:27017/ams # AI 配置 spring: ai: openai: api-key: ${OPENAI_API_KEY} chat: options: model: gpt-4 # MinIO 配置 minio: endpoint: http://127.0.0.1:9000 access-key: minioadmin secret-key: minioadmin bucket: aims ``` 详细配置请参考各模块的 `application-*.yaml` 配置文件。 ## API 文档 系统提供完整的 RESTful API,支持 Swagger UI 查看。 ### 核心 API | 模块 | 路径前缀 | 说明 | |------|----------|------| | AI 对话 | `/ai/chat` | 智能对话接口 | | Agent | `/ai/agent` | Agent 管理 | | Skill | `/ai/skill` | 技能管理 | | Tool | `/ai/tool` | 工具管理 | | 知识库 | `/knowledge` | 知识库管理 | | 文件 | `/file` | 文件管理 | | 认证 | `/login` | 登录认证 | 详细 API 对接文档请参考: - [Agent/Skill/Tool 接口对接文档](./docs/agent-skill-tool-api-integration.md) - [知识库接口对接文档](./docs/knowledge-base-api-integration.md) ## 项目结构 ``` ├── AMS-AiCenter/ # AI 核心服务 │ ├── src/main/java/com/rory/ams/aicenter/ │ │ ├── controller/ # 控制器 │ │ ├── service/ # 业务服务 │ │ ├── repository/ # 数据仓储 │ │ ├── context/ # 上下文管理 │ │ ├── config/ # 配置类 │ │ └── ... ├── AMS-AuthCenter/ # 认证服务 ├── AMS-CommonService/ # 通用服务 ├── AMS-CommonWeb/ # 公共 Web ├── AMS-Core/ # 核心公共模块 ├── AMS-Gateway/ # API 网关 ├── AMS-Api/ # Feign 客户端 └── docs/ # 文档 ``` ## 许可证 本项目基于 MIT 许可证开源,详情请参阅 [LICENSE](./LICENSE) 文件。 ## 贡献指南 欢迎提交 Pull Request 或 Issue,请遵循以下步骤: 1. Fork 本仓库 2. 创建特性分支 (`git checkout -b feature/xxx`) 3. 提交更改 (`git commit -m 'Add xxx'`) 4. 推送分支 (`git push origin feature/xxx`) 5. 创建 Pull Request ## 文档 - [English Documentation](./README.en.md) - [Agent/Skill/Tool API 对接文档](./docs/agent-skill-tool-api-integration.md) - [知识库 API 对接文档](./docs/knowledge-base-api-integration.md)