京东开源的端到端产品级通用多智能体框架,支持开箱即用的智能体应用开发

NOASSERTIONJavajoyagent-jdgeniejd-opensource 2.0k Last Updated: July 28, 2025

JoyAgent-JDGenie 项目详细介绍

项目概述

JoyAgent-JDGenie是京东开源的端到端产品级通用多智能体框架,专门为解决快速构建多智能体产品的最后一公里问题而设计。与现有的SDK或框架类开源agent不同,JoyAgent-JDGenie是端到端的多Agent产品,对于输入的query或者任务,可以直接回答或者解决。

核心特性

1. 开箱即用的完整产品

  • 端到端解决方案:用户输入查询或任务后可直接获得结果,无需额外开发
  • 多格式输出支持:支持网页版、PPT版报告文档生成
  • 轻量化部署:相比其他产品不依赖特定云平台生态

2. 卓越的性能表现

在GAIA榜单准确率达到75.15%,已超越OWL(CAMEL)、Smolagent(Huggingface)、LRC-Huawei(Huawei)、xManus(OpenManus)、AutoAgent(香港大学)等行业知名产品。

3. 完整的技术架构

多智能体协作模式

  • Multi-level执行:支持work level和task level两个层级
  • Multi-pattern模式:包含plan and executor模式和react模式
  • 高并发DAG执行引擎:提供极致的执行效率

核心子智能体

  • 报告生成智能体(Report Agent)
  • 代码智能体(Code Agent)
  • PPT智能体
  • 文件智能体
  • 搜索智能体(Search Agent)

技术特色

1. 智能体框架协议

  • 支持多种智能体设计模式
  • 多智能体上下文管理
  • 子Agent和工具可插拔设计

2. 高级功能特性

  • 基于现有工具的迭代优化:基于已有工具迭代产生新工具,而不是从0-1直接生成
  • 原子工具自动组合:基于已有工具隐性拆解为原子工具,并通过大模型自动组合成新工具
  • 全链路流式输出:支持实时响应和结果流式传输
  • Plan和工具调用RL优化:通过强化学习优化决策过程

3. 多样化文件交付

支持多种输出格式:

  • HTML格式
  • PowerPoint演示文稿
  • Markdown文档

环境要求

系统要求

  • Java环境:JDK 17
  • Python环境:Python 3.11

Python环境准备

pip install uv
cd genie-tool
uv sync
source .venv/bin/activate

安装部署

方式一:源码部署

1. 克隆项目

git clone https://github.com/jd-opensource/joyagent-jdgenie.git
cd genie-tool

2. 配置环境

修改.env.example文件,配置执行工具使用的相关参数。

3. 启动服务

首次执行:

sh start_genie_init.sh

后续启动:

sh start_genie.sh

方式二:Docker部署

1. 构建镜像

cd genie-tool
docker build -t genie:latest .

2. 运行容器

# -v 设置本地存储 -e 设置对话模型
docker run -d -p 3004:3000 -p 8080:8080 -p 1601:1601 \
  -v /Users/{user}/code/autobots/genie/genie-tool:/data/genie-tool \
  -e OPENAI_BASE_URL="" -e OPENAI_API_KEY="" \
  --name genie-app genie:latest

扩展开发

自定义工具开发

1. 实现BaseTool接口

/**
 * 工具基接口
 */
public interface BaseTool {
    String getName();           // 工具名称
    String getDescription();    // 工具描述
    Map<String, Object> toParams(); // 工具参数
    Object execute(Object input);   // 调用工具
}

2. 创建自定义智能体示例

// 天气智能体示例
public class WeatherTool implements BaseTool {
    @Override
    public String getName() {
        return "agent_weather";
    }

    @Override
    public String getDescription() {
        return "这是一个可以查询天气的智能体";
    }

    @Override
    public Map<String, Object> toParams() {
        return "{\"type\":\"object\",\"properties\":{\"location\":{\"description\":\"地点\",\"type\":\"string\"}},\"required\":[\"location\"]}";
    }

    @Override
    public Object execute(Object input) {
        return "今日天气晴朗";
    }
}

3. 注册自定义Agent

com.jd.genie.controller.GenieController#buildToolCollection中添加:

WeatherTool weatherTool = new WeatherTool();
toolCollection.addTool(weatherTool);

MCP服务集成

genie-backend/src/main/resources/application.yml中配置:

mcp_server_url: "http://ip1:port1/sse,http://ip2:port2/sse"

与其他框架对比

分类 Agent 是否开源 是否开源完整产品 是否依赖生态
SDK类 SpringAI-Alibaba 部分 否,只开源SDK 是(阿里云百炼平台)
SDK类 Coze 部分 否,只开源部分Nieo SDK 是(火山引擎平台)
框架类 Fellow 否,只开源了Eko智能体框架
框架类 Dify 否,只开源了智能体框架
框架类 OpenManus 否,只开源了智能体框架
产品类 JoyAgent-JDGenie 是,开源端到端完整的Agent产品

GAIA基准测试结果

Agent Score Score_level1 Score_level2 Score_level3 机构
Alita v2.1 0.8727 0.8868 0.8953 0.7692 Princeton
Skywork 0.8242 0.9245 0.8372 0.5769 天工
AWorld 0.7758 0.8868 0.7791 0.5385 Ant Group
Langfun 0.7697 0.8679 0.7674 0.5769 DeepMind
JoyAgent-JDGenie 0.7515 0.8679 0.7791 0.4230 京东
OWL 0.6424 0.7547 0.6512 0.3846 CAMEL
Smolagent 0.5515 0.6792 0.5349 0.3462 Huggingface

总结

JoyAgent-JDGenie作为京东开源的端到端多智能体框架,具有以下核心优势:

  1. 产品化程度高:提供完整的端到端解决方案,开箱即用
  2. 性能优异:在GAIA基准测试中表现出色,超越多个知名开源项目
  3. 架构先进:支持多种智能体协作模式和高并发执行
  4. 扩展性强:支持自定义智能体和工具的灵活集成
  5. 部署简便:提供多种部署方式,不依赖特定云平台生态

该项目为企业和开发者提供了一个强大而灵活的多智能体解决方案,特别适合需要快速构建智能体应用的场景。

Star History Chart