jd-opensource/joyagent-jdgenieView GitHub Homepage for Latest Official Releases
京東がオープンソースで公開しているエンドツーエンドの製品レベルの汎用マルチエージェントフレームワークで、すぐに使えるエージェントアプリケーションの開発をサポートします。
NOASSERTIONJavajoyagent-jdgeniejd-opensource 2.0k Last Updated: July 28, 2025
JoyAgent-JDGenie プロジェクト詳細
プロジェクト概要
JoyAgent-JDGenieは、多エージェント製品の迅速な構築における「ラストワンマイル問題」を解決するために特別に設計された、京東(JD.com)がオープンソース化したエンドツーエンドの製品レベル汎用多エージェントフレームワークです。既存のSDKやフレームワークタイプのオープンソースエージェントとは異なり、JoyAgent-JDGenieはエンドツーエンドの多エージェント製品であり、入力されたクエリやタスクに対して直接回答または解決することができます。
主要な特徴
1. すぐに使える完全な製品
- エンドツーエンドソリューション: ユーザーはクエリやタスクを入力するだけで直接結果を得られ、追加の開発は不要です。
- 複数形式の出力対応: ウェブ版、PPT版のレポートドキュメント生成をサポートします。
- 軽量デプロイ: 他の製品と比較して、特定のクラウドプラットフォームエコシステムに依存しません。
2. 卓越したパフォーマンス
GAIAベンチマークリストにおいて75.15%の精度を達成し、OWL(CAMEL)、Smolagent(Huggingface)、LRC-Huawei(Huawei)、xManus(OpenManus)、AutoAgent(香港大学)などの業界で有名な製品を上回っています。
3. 完全な技術アーキテクチャ
多エージェント連携モード
- マルチレベル実行: ワークレベルとタスクレベルの2つのレベルをサポートします。
- マルチパターンモード: プラン&エグゼキューターモードとリアクトモードを含みます。
- 高並列DAG実行エンジン: 究極の実行効率を提供します。
コアサブエージェント
- レポート生成エージェント(Report Agent)
- コードエージェント(Code Agent)
- PPTエージェント
- ファイルエージェント
- 検索エージェント(Search Agent)
技術的特徴
1. エージェントフレームワークプロトコル
- 多様なエージェント設計パターンをサポートします。
- 多エージェントコンテキスト管理
- サブエージェントとツールのプラグイン可能設計
2. 高度な機能特性
- 既存ツールに基づく反復最適化: 既存のツールに基づいて新しいツールを反復的に生成し、ゼロから直接生成するわけではありません。
- アトミックツールの自動組み合わせ: 既存のツールを暗黙的にアトミックツールに分解し、大規模言語モデルによって自動的に新しいツールに組み合わせます。
- フルリンクストリーミング出力: リアルタイム応答と結果のストリーミング転送をサポートします。
- プランとツール呼び出しの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:ソースコードデプロイ
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
方法2: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. カスタムエージェントの登録
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"
他のフレームワークとの比較
分類 | エージェント | オープンソースか | 完全な製品としてオープンソースか | エコシステムに依存するか |
---|---|---|---|---|
SDKタイプ | SpringAI-Alibaba | 一部 | いいえ、SDKのみオープンソース | はい(Alibaba Cloud Bailian Platform) |
SDKタイプ | Coze | 一部 | いいえ、Nieo SDKの一部のみオープンソース | はい(Volcano Engine Platform) |
フレームワークタイプ | Fellow | はい | いいえ、Ekoエージェントフレームワークのみオープンソース | いいえ |
フレームワークタイプ | Dify | はい | いいえ、エージェントフレームワークのみオープンソース | いいえ |
フレームワークタイプ | OpenManus | はい | いいえ、エージェントフレームワークのみオープンソース | いいえ |
製品タイプ | JoyAgent-JDGenie | はい | はい、エンドツーエンドの完全なエージェント製品としてオープンソース | いいえ |
GAIAベンチマークテスト結果
エージェント | スコア | スコア_レベル1 | スコア_レベル2 | スコア_レベル3 | 機関 |
---|---|---|---|---|---|
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は、京東がオープンソース化したエンドツーエンドの多エージェントフレームワークとして、以下の主要な利点を持っています。
- 高い製品化レベル: 完全なエンドツーエンドソリューションを提供し、すぐに使用できます。
- 優れたパフォーマンス: GAIAベンチマークテストで優れた性能を発揮し、複数の有名なオープンソースプロジェクトを上回っています。
- 先進的なアーキテクチャ: 多様なエージェント連携モードと高並列実行をサポートします。
- 高い拡張性: カスタムエージェントとツールの柔軟な統合をサポートします。
- 簡単なデプロイ: 複数のデプロイ方法を提供し、特定のクラウドプラットフォームエコシステムに依存しません。
このプロジェクトは、企業や開発者に対し、強力で柔軟な多エージェントソリューションを提供し、特にエージェントアプリケーションを迅速に構築する必要があるシナリオに適しています。