最近整理并开源了一个 Java 版 AI Agent 工作流平台:OpenAgentFlow-Java

项目地址:

https://github.com/wuruiwurui/OpenAgentFlow.git

如果你正在学习 AI Agent、RAG、Tool Calling、MCP、工作流编排,或者想了解一个企业级 AI 应用平台应该如何从后端、前端、数据库、Trace、权限、成本治理等方面完整落地,这个项目应该会有一些参考价值。

为什么做这个项目

现在很多 AI 应用 Demo 可以完成一次简单的大模型调用,也可以接一个向量库做知识库问答。但真正进入企业场景后,问题会复杂很多:

  • 如何管理多个模型供应商和模型接入点?

  • 如何让每个 Agent 绑定不同的模型、Prompt、知识库和工具?

  • 文档上传后如何解析、切片、向量化并写入 Milvus?

  • Agent 调用了哪些工具,入参出参是什么,失败原因在哪里?

  • 一次运行中 LLM、RAG、Tool、Workflow 的完整链路如何追踪?

  • 如何批量评测 Agent 效果,而不是只靠手动调试?

  • Token 和成本如何统计,如何按用户、Agent、模型、工作流拆分?

OpenAgentFlow-Java 的目标,就是把这些链路尽量完整地串起来,做成一个可以运行、可以追踪、可以评测、可以继续扩展的 AI Agent 应用开发底座。

项目技术栈

后端:

  • Java 21

  • Spring Boot 3.3

  • Spring Security

  • JWT

  • MyBatis-Plus

  • MySQL 8

  • Redis 7

  • Milvus 2.4

前端:

  • Vue 3

  • TypeScript

  • Vite

  • Vue Router

  • Vue Flow

  • lucide-vue-next

AI 能力:

  • OpenAI-compatible Chat

  • SSE 流式输出

  • Embedding

  • Function Calling

  • RAG

  • MCP 工具接入

工程能力:

  • Docker Compose

  • GitHub Actions

  • PowerShell 本地启动脚本

  • 中文开源文档

  • SQL 初始化脚本

项目核心能力

1. 登录与权限

项目已经接入 Spring Security、JWT 和 Redis,支持用户登录、验证码、角色、权限和接口鉴权。

这部分是后续所有管理功能的入口,也是一个平台型项目必须具备的基础能力。

2. 模型供应商管理

支持配置 OpenAI-compatible、豆包方舟、Ollama、DeepSeek、Qwen 等模型供应商。

平台提供模型连通性测试、普通聊天接口、SSE 流式输出,并记录模型调用的 Token、耗时、错误信息和成本。

3. Agent 管理

支持 Agent 创建、编辑、删除、发布、复制、详情、调试运行。

每个 Agent 可以配置:

  • System Prompt

  • 模型参数

  • 绑定模型

  • 绑定知识库

  • 绑定工具

  • 资源级权限

  • 历史会话

这样 Agent 不只是一个简单 Prompt,而是一个可以被管理、调试、运行和追踪的业务对象。

4. RAG 知识库

知识库模块覆盖了完整 RAG 主链路:

  • 知识库 CRUD

  • 文档上传

  • 文档解析

  • 文档切片

  • Embedding 调用

  • Milvus 向量写入

  • 检索测试

  • 引用来源

  • Agent 绑定知识库

  • 调试台展示真实引用来源

这部分可以帮助开发者理解企业知识库问答系统的基本实现方式。

5. Tool Calling 工具调用

平台内置工具中心,目前支持:

  • REST API 工具

  • Webhook 工具

  • 数据库查询工具

  • MCP 工具

工具支持 Schema 配置、连通性测试、风险等级、调用日志和 Trace 记录。

Agent 调试时可以自动识别并调用工具,再把工具执行结果交给模型生成最终回答。

6. MCP 工具接入

项目支持 MCP Server 管理、连接测试、tools/prompts/resources 发现,并可以将 MCP 工具同步到工具中心。

同步后的 MCP 工具可以像普通工具一样绑定到 Agent,也可以在工作流工具节点中调用。

7. 可视化工作流编排

前端使用 Vue Flow 实现工作流画布,支持节点编排和连线。

当前支持的节点类型包括:

  • 开始节点

  • LLM 节点

  • RAG 节点

  • 工具节点

  • 条件节点

  • 结束节点

后端实现了基础工作流执行引擎,支持上下文变量传递、发布、版本管理和执行 Trace。

8. 运行 Trace

Trace 是这个项目里非常重要的一环。

平台会统一记录一次运行中的关键步骤,例如:

  • LLM 输入输出

  • RAG 检索来源

  • 工具调用入参出参

  • 工作流节点执行

  • 错误信息

  • 耗时

  • Token

  • 成本

这样在调试 Agent 或排查线上问题时,可以清楚看到一次回答是如何生成的。

9. 模型评测 Evaluation

项目支持评测集、样本导入和批量运行 Agent。

当前评测指标包括:

  • 准确率

  • 相关性

  • 完整性

  • 幻觉率

  • 引用正确率

  • 工具调用成功率

  • 平均耗时

  • Token 消耗

评测结果可以跳转 Trace,方便追溯某条样本为什么得分低。

10. 成本与用量中心

平台支持从多个维度统计 Token、耗时和成本:

  • 服务商

  • 模型

  • Agent

  • 用户

  • 工作流

  • 评测

同时支持模型价格配置、历史成本重算、调用明细导出和配额拦截。

这部分对于企业内部 AI 平台非常关键,因为真正上线后不仅要能调用模型,还要知道谁在用、用了多少、花了多少钱。

为什么核心链路选择自研

这个项目没有直接基于 Spring AI 或 LangChain4j 做一层简单封装,而是选择把 Agent 编排、RAG、Tool Calling、MCP、工作流、Trace、评测、成本治理等核心链路自研实现。

主要原因是:这个项目的目标不是做一个 AI 框架调用 Demo,而是展示一个 AI Agent 平台从 0 到 1 的完整工程结构。

自研核心链路有几个好处:

  • 更适合学习底层原理

  • 更容易理解每一步数据如何流转

  • 更方便二次开发和定制

  • Trace、成本、权限、审计可以完全按平台需求设计

  • 不会被某一个 AI 框架的抽象绑定

当然,这并不代表排斥 Spring AI 或 LangChain4j。项目在模型、Embedding、向量库和工具调用层保留开放适配思路,后续完全可以把 Spring AI、LangChain4j 或其他模型网关作为可选适配器接入。

一句话概括就是:

平台核心链路自研,底层模型能力可插拔。

快速启动

克隆项目后,可以使用 Docker Compose 启动:

cd OpenAgentFlow-Java/dm
Copy-Item .env.example .env
docker compose up -d --build

默认访问地址:

前端:http://localhost:5173
后端:http://localhost:8080/api
Swagger:http://localhost:8080/api/swagger-ui.html

默认账号:

admin / 123456

也可以使用本地开发脚本启动:

cd OpenAgentFlow-Java/dm
.\scripts\start-dev.ps1

项目目录结构

dm/
  docs/                       中文文档和截图
  scripts/                    本地启动、停止、构建脚本
  openagentflow-backend/      Spring Boot 后端
  openagentflow-frontend/     Vue 3 前端
  openagentflow-sql/          MySQL 初始化脚本
  docker-compose.yml          一键启动 MySQL、Redis、Milvus、后端、前端
  .env.example                示例环境变量
  README.md                   项目说明
  LICENSE                     MIT License

后续计划

后续会继续完善以下方向:

  • 更完整的权限模型

  • 更细粒度的审计日志

  • 模型网关能力

  • 插件化工具市场

  • 更丰富的工作流节点

  • 异步任务队列和失败重试

  • 更多国产模型适配

  • Spring AI / LangChain4j 可选适配器

  • 更完整的部署和运维文档

最后

如果你也在学习或实践 AI Agent、RAG、MCP、工作流编排,欢迎看看这个项目。

项目地址:

https://github.com/wuruiwurui/OpenAgentFlow.git

如果觉得项目有帮助,也欢迎 Star、Fork、提 Issue 或一起完善。

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐