# Phoenix-Agent-Java **Repository Path**: lwj/phoenix-agent-java ## Basic Information - **Project Name**: Phoenix-Agent-Java - **Description**: 基于 Spring AI Alibaba 2.0 打造的企业级 Agent 平台,专注数据智能分析场景。平台内置多 Agent 协作机制,支持自然语言驱动的 NL2SQL 数据查询、多源异构数据汇总及 BI 报表自动生成,实现从数据探索、异常检测到洞察输出的全链路自动化。 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 1 - **Created**: 2026-07-11 - **Last Updated**: 2026-07-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README

中文 | English

Phoenix — 企业级智能体管理平台

基于 Spring AI Alibaba 2.0.0-M1.1 Graph 的企业级 AI Agent 管理与分析引擎

NL2SQL 智能报表 | Python 深度分析 | 自定义智能体 | MCP 服务器 | RAG 增强 | Vben5 管理后台

Spring Boot Java MyBatis-Flex Vben5 License

项目简介核心特性模块架构快速开始前端说明数据库支持文档导航


## 📖 项目简介 **Phoenix** 是一个基于 **Spring AI Alibaba Graph** 打造的企业级智能体(AI Agent)管理与数据分析平台。平台分为两大核心模块: - **phoenix-data**(智能报表引擎):以 **StateGraph** 状态机驱动,将自然语言转换为可执行的 SQL 与 Python 分析流程,超越传统 Text-to-SQL 工具,进化为具备多轮对话、意图识别、知识增强、人工反馈的全链路 AI 数据分析师。 - **phoenix-agent**(自定义智能体框架):提供 React Agent、Workflow Graph、会话管理、长期记忆、用户画像、MCP 工具等完整的智能体开发能力,支持快速构建和发布企业级 AI 智能体。 系统采用 **Vben 5** 现代前端框架,实现前台(数据分析师交互)与后台(智能体管理、数据源配置、用户权限)的统一管理,提供开箱即用的企业级管理界面。 技术上,系统采用高度可扩展的多模块架构设计,**全面兼容 OpenAI 接口规范**的对话模型与 Embedding 模型,支持**灵活挂载多种向量数据库**,并提供 MySQL、PostgreSQL、Oracle、SQL Server、H2、Hive、达梦等主流数据库的即开即用支持。同时原生支持 **MCP 协议**,可无缝集成 Claude Desktop 等 MCP 生态工具。 ## ✨ 核心特性 | 特性 | 说明 | | :--- | :--- | | **自定义智能体** | 基于 React Agent / Workflow Graph 框架,可快速构建和发布企业级 AI 智能体。 | | **StateGraph 驱动** | 基于状态图的 NL2SQL 工作流,支持意图识别 → 证据召回 → Schema 召回 → 规划 → 执行的全链路编排。 | | **Python 深度分析** | 内置 Docker/Local Python 执行器,自动生成并执行 Python 代码进行统计分析、机器学习预测。 | | **智能报告生成** | 分析结果自动汇总为包含 ECharts 图表的 HTML/Markdown 报告,所见即所得。 | | **人工反馈机制** | Human-in-the-Loop 机制,支持用户在计划生成阶段进行干预和调整。 | | **RAG 检索增强** | 混合检索策略(向量 + 关键词 + 融合排序),支持业务元数据与术语库的语义检索。 | | **多模型调度** | 内置模型注册表,支持运行时动态切换不同的 LLM 和 Embedding 模型。 | | **MCP 服务器** | 遵循 MCP 协议,支持作为 Tool Server 对外提供 NL2SQL 和智能体管理能力。 | | **多数据源支持** | 开箱即用支持 MySQL、PostgreSQL、Oracle、SQL Server、H2、Hive、达梦。 | | **智能体记忆** | 支持短期记忆(Redis 检查点)、长期记忆(用户画像 + 事实记忆 + 向量语义检索)。 | | **多轮对话** | 可配置的多轮对话上下文管理(支持历史最多 5 轮),保持对话连贯性。 | | **RBAC 权限** | 完善的用户-角色-部门-公司四级权限体系,细粒度 API Key 管理。 | | **Vben5 管理后台** | 基于 Vue 3 + Vben 5 的现代化管理界面,统一管理智能体、数据源、模型、用户权限。 | | **多租户与三方集成** | 支持租户隔离以及钉钉、飞书、企业微信集成。 | | **全链路追踪** | 集成 OpenTelemetry → Langfuse,LLM 调用全过程可观测。 | ## 🏗️ 模块架构 ``` phoenix/ ├── phoenix-parent # BOM 依赖管理与插件管理 │ ├── phoenix-data # 智能报表引擎 — 入口、Graph 工作流、NL2SQL │ ├── phoenix-data-api │ ├── phoenix-data-core │ └── phoenix-data-rest │ ├── phoenix-agent # 自定义智能体框架 — React Agent、会话、记忆、工作流 │ ├── phoenix-agent-api # 接口定义、DTO、配置属性 │ ├── phoenix-agent-core # AgentManager、ReactAgent、Workflow、记忆、工具 │ └── phoenix-agent-rest # REST & SSE 端点 │ ├── phoenix-admin # 统一部署入口(端口 8066) │ ├── phoenix-admin-api │ ├── phoenix-admin-core │ ├── phoenix-admin-manager # @SpringBootApplication,打包所有模块 │ └── phoenix-admin-rest │ ├── phoenix-privilege # 权限认证 — RBAC、用户、角色、ACL │ ├── phoenix-privilege-api │ ├── phoenix-privilege-core │ └── phoenix-privilege-rest │ ├── phoenix-platform # 平台管理 — 租户、组织、三方账号 │ ├── phoenix-platform-api │ ├── phoenix-platform-core │ └── phoenix-platform-rest │ ├── phoenix-common # 公共模块 — 基础模型、异常、SDK 封装 │ ├── phoenix-common-api │ ├── phoenix-common-core │ └── phoenix-common-rest │ ├── phoenix-tool # 工具模块 — 返回值封装、SQL 安全校验 ├── phoenix-codegen # MyBatis-Flex 代码生成器 ├── phoenix-flink # Apache Flink 大数据集成 │ ├── phoenix-flink-api │ ├── phoenix-flink-core │ └── phoenix-flink-server ├── phoenix-rag # 检索增强生成 │ ├── phoenix-rag-api │ ├── phoenix-rag-core │ └── phoenix-rag-rest └── phoenix-kg # 知识图谱 ├── phoenix-kg-api ├── phoenix-kg-core └── phoenix-kg-rest ``` ### phoenix-data: NL2SQL 工作流 Phoenix 的核心是 StateGraph 驱动的 NL2SQL 工作流,包含以下节点: `IntentRecognition` → `EvidenceRecall` → `QueryEnhance` → `SchemaRecall` → `TableRelation` → `FeasibilityAssessment` → `Planner` → `PlanExecutor` → [`SqlGenerate→SemanticConsistency→SqlExecute` | `PythonGenerate→PythonExecute→PythonAnalyze` | `ReportGenerator` | `HumanFeedback`] ### phoenix-agent: 自定义智能体开发 Phoenix 提供完整的智能体开发框架,支持两种范式: | 范式 | 说明 | 适用场景 | |:---|:---|:---| | **React Agent** | LLM 驱动的 ReAct 模式(推理-行动-观察循环),自动选择工具 | 流程分析、知识问答、文档检索等工具型智能体 | | **Workflow Graph** | 预定义的 StateGraph 工作流,节点间显式编排 | 有固定业务步骤的复杂任务(如审批、多步分析) | **智能体核心能力:** - **会话管理**:完整的多轮对话 Session 管理,自动保存对话历史 - **长期记忆**:支持用户画像(Profile)、事实记忆(Fact)、向量语义检索 - **短期记忆**:基于 RedisSaver 的状态检查点 - **工具系统**:基于 `@Tool` 注解的工具注册,支持 SQL 查询、知识检索、外部 API - **MCP 集成**:可对外暴露 MCP 工具,接入 Claude Desktop 等 MCP 客户端 - **Human-in-the-Loop**:支持工具调用的人工审核与干预 - **用量追踪**:按用户按智能体的调用次数统计与限流 ## 🌐 前端说明 Phoenix 前端基于 **Vben 5**(Vue 3 + TypeScript + Vite)构建,实现前台分析交互与后台统一管理的现代化 SPA。 | 功能区域 | 说明 | |:---|:---| | **前台(数据分析)** | 对话式自然语言查询、结果图表展示、报告预览、多轮交互 | | **后台(智能体管理)** | 智能体创建/配置、数据源管理、模型配置、知识库管理、Prompt 优化 | | **系统管理** | 用户管理、角色权限、API Key、租户配置、操作日志 | 前端源码位于独立仓库,与本后端通过 REST + SSE 接口通信。 ## 🚀 快速开始 ### 环境要求 - JDK 21+ - Maven 3.9+(需在 PATH 中) - PostgreSQL 14+(含 pgvector 插件) - Redis 7+ - (可选)Docker — Python 深度分析 ### 启动服务 ```bash # 1. 克隆项目 git clone https://github.com/liu463805737-collab/Phoenix-Agent-Java.git 或 git clone https://gitee.com/lwj/phoenix-agent-java.git cd phoenix # 2. 导入数据库(PostgreSQL) ## 注意PostgreSQL需要安装支持向量插件(pgvector) psql -U your_user -d your_db < sql/all_data.sql # 3. 构建项目(跳过格式检查) mvn clean install -Dspring-javaformat.skip=true # 4. 启动服务 # 启动统一管理平台(端口 8066,推荐) mvn spring-boot:run -pl phoenix-admin/phoenix-admin-manager ``` ### 环境变量配置 | 变量 | 说明 | | :--- | :--- | | `SPRING_AI_DASHSCOPE_API_KEY` | DashScope/通义千问 API Key | | `SPRING_DATASOURCE_URL` | PostgreSQL JDBC URL(默认 `jdbc:postgresql://127.0.0.1:5432/phoenix`) | | `SPRING_DATASOURCE_USERNAME` | 数据库用户名 | | `SPRING_DATASOURCE_PASSWORD` | 数据库密码 | | `SPRING_DATA_REDIS_HOST` | Redis 地址(默认 `127.0.0.1`) | ## 🗄️ 数据库支持 ### 目标数据源(查询与分析) | 数据库 | 驱动 | |--------|------| | MySQL | mysql-connector-j | | PostgreSQL | postgresql 42.4.1 | | Oracle | ojdbc8 | | SQL Server | mssql-jdbc | | H2 | h2 2.3.232 | | Hive | hive-jdbc 3.1.3 | | 达梦 DM | DmJdbcDriver18 | ### 向量存储 | 存储 | 说明 | |------|------| | PostgreSQL pgvector | 默认向量库(HNSW 索引,余弦距离,512 维) | | Elasticsearch | 可选的向量存储方案 | ### 应用存储 - **PostgreSQL** — 业务数据存储 - **Redis** — Graph 状态持久化(RedisSaver)、缓存、分布式锁 ## 🔧 开发命令 | 命令 | 说明 | |------|------| | `mvn clean install` | 全量构建(含格式检查) | | `mvn clean install -Dspring-javaformat.skip=true` | 跳过格式检查构建 | | `mvn spring-javaformat:validate` | 格式检查 | | `mvn spring-javaformat:apply` | 格式修复 | | `mvn spring-boot:run -pl phoenix-admin/phoenix-admin-manager` | 启动统一管理平台(端口 8066) | > Maven settings 文件:`/Users/liuwenjun/java/doc/maven-setting/dragon-settings.xml` ## 📚 文档导航 | 文档 | 内容 | |:------------------------------------|:------------------------------------------------| | [架构设计](docs/ARCHITECTURE.md) | 系统分层架构、StateGraph 工作流设计、核心时序图 | | [快速开始](docs/QUICK_START.md) | 环境要求、数据库导入、基础配置、系统初体验 | | [开发者指南](docs/DEVELOPER_GUIDE.md) | 开发环境搭建、配置手册、自定义智能体开发 | | [高级功能](docs/ADVANCED_FEATURES.md) | API Key 管理、MCP 配置、混合检索、Python 执行器、Langfuse 可观测性 | | [知识配置最佳实践](docs/KNOWLEDGE_USAGE.md) | 语义模型、业务知识、智能体知识配置 | | [权限管理](docs/PRIVILEGE.md) | RBAC的权限管理 | | [组织管理](docs/RNG.md) | 人员组织管理 | | [前台管理](docs/FRNT.md) | 前台账号管理 | ## 🤝 加入社区 & 贡献 - **贡献指南**:欢迎提交 Issue 和 PR - **开发规范**:代码需通过 `spring-javaformat:validate` 格式检查 ## 💬 欢迎交流 感兴趣的朋友欢迎加微信一起交流探讨~
微信 微信
## 📄 许可证 本项目采用 Apache License 2.0 许可证。 ---
Made with ❤️ by Phoenix Team