Skip to content
GitCode

项目介绍

什么是 Agent Plus

Agent Plus 是一个面向 Agent 管理、工作流编排的开源 AI 基座项目,适合作为 AI Agent 平台、智能体运营后台、流程编排系统、知识库/工具管理平台等项目的起点。

核心能力

LLM 模型管理

  • 支持千问(DashScope)、豆包(火山引擎)等主流模型
  • 支持任意 OpenAI 兼容协议的模型接入
  • 模型元数据统一管理、动态路由
  • LLM 调用日志完整记录(ai_llm_call_log

知识库

  • 支持 PDF、Word、Markdown、TXT 等多种文档格式
  • 基于 Apache Tika 的文档内容提取
  • 可配置的文档分块策略
  • Redis 向量库存储与检索
  • 知识库检索日志记录(ai_knowledge_retrieval_log

工作流编排与执行

  • 基于 Vue Flow 的可视化编排界面
  • 8 种内置节点类型(Start/End/LLM/Knowledge/Tool/Condition/Aggregator/Batch)
  • 基于 langgraph4j 的 StateGraph 执行引擎
  • 条件分支剪枝、批处理子图并行执行
  • 工作流版本管理(ai_flow_version

AI 链路追踪

  • OpenTelemetry 手动 SDK 模式集成
  • Span 落库(ai_trace_spanai_trace_span_payload
  • Token 用量、节点执行时间统计
  • AI 用量统计分析

系统管理

  • 用户、角色、部门、菜单管理
  • 字典管理、系统配置
  • 操作日志、登录日志

技术架构

后端技术栈

技术版本用途
Spring Boot3.5.2应用框架
Java21开发语言
MyBatis-Plus3.5.xORM 框架
MySQL5.7/8.0数据存储
Redis8.8缓存 + 向量存储
LangChain4j1.17.2AI 能力集成
LangGraph4j1.8.20工作流编排引擎
Apache Tika2.9.2文档内容提取
OpenTelemetry SDK1.64.0链路追踪

前端技术栈

技术版本用途
Vue3.5.x前端框架
Vite5.3.x构建工具
Element Plus2.9.xUI 组件库
Vue Flow1.48.x工作流编排画布
Pinia2.1.x状态管理
ECharts6.1.x图表组件

项目结构

后端(agent-plus)

agent-plus/
├── agent-plus-common/      # 公共模块(工具类、常量、异常、基础 VO)
├── agent-plus-core/        # 核心抽象与 VO
│   └── aiflow/vo/workflow/ # 前端 AgentPlusFlow 序列化的工作流模型
│   └── trace/              # Trace 工具类
├── agent-plus-id/          # ID 生成
├── agent-plus-interface/   # 接口定义
├── agent-plus-engine/      # 工作流执行引擎
│   ├── engine/
│   │   ├── config/         # Spring Boot 自动装配
│   │   ├── context/        # ExecutionContext、NodeOutput 等
│   │   ├── executor/       # 节点执行器(8 种内置实现)
│   │   ├── graph/          # 图编译器、StateGraph 集成
│   │   ├── llm/            # ChatModelProvider 接口
│   │   ├── knowledge/      # KnowledgeRetriever 接口
│   │   ├── tool/           # ToolRegistry
│   │   └── trace/          # @TraceSpan AOP 切面
├── agent-plus-plugin/      # 可插拔实现
│   ├── plugin/
│   │   ├── llm/            # AiModelChatModelProvider(主实现)
│   │   ├── vectorstore/    # Redis 向量库集成
│   │   ├── document/       # 文档抽取、分块
│   │   └── tool/           # 内置工具(计算器、当前时间)
├── agent-plus-service/     # 业务服务层
│   ├── ai/                 # AI 相关服务
│   ├── library/            # 知识库、模型、工具、插件服务
│   ├── aiflow/             # 工作流服务
│   ├── ailog/              # AI 日志服务
│   └── aistat/             # AI 统计服务
└── agent-plus-web/         # Web 应用层
    ├── controller/         # REST 控制器
    ├── config/             # Spring 配置
    └── scheduled/          # 定时任务

前端(agent-plus-admin-front)

agent-plus-admin-front/
├── src/
│   ├── components/
│   │   └── AgentPlusFlow/  # 工作流设计器组件
│   │       └── workflow/   # 工作流编排核心组件
│   ├── views/
│   │   ├── ai/             # AI 相关页面(Agent、聊天)
│   │   ├── aiflow/         # 工作流相关页面
│   │   ├── aistat/         # AI 统计相关页面
│   │   ├── library/        # 资源库(模型、知识库、工具、插件)
│   │   └── system/         # 系统管理页面
│   ├── api/                # API 接口
│   ├── store/              # Pinia 状态管理
│   └── utils/              # 工具方法
└── public/                 # 静态资源

开源协议

MIT License