langgraph4j/langgraph4j
🚀 LangGraph for Java is a library for Graph Engineering, designed to build sophisticated AI agentic architectures within the Java ecosystem. It works seamlessly with both Langchain4j and Spring AI.
何を解決するか
LangGraph4j は Java で状態付きのマルチエージェント AI アプリケーションを構築する方法を提供します。従来の有向非巡回グラフ(DAG)の制限を克服し、AI が以前のステップに戻ったり、タスクを再試行したり、説明を求めたりする必要があるエージェントワークフローに不可欠な循環グラフをサポートしています。
動作方法
このライブラリはグラフベースのアプローチで AI ワークフローを定義します:
- StateGraph:開発者がノード(アクション)とエッジ(遷移)を定義する主要な構造です。
- AgentState:ノード間で共有される状態(基本的にマップ)です。リデューサーは新しいデータがこの状態にどのようにマージされるかを決定します(例:上書きやリストへの追加)。
- ノード:現在の状態を受け取り、計算(LLM の呼び出しなど)を実行し、状態の更新を返す個々の論理単位です。
- エッジ:フローを制御します。通常のエッジは無条件ですが、条件付きエッジは現在の状態に基づいて次のノードを動的に決定するロジックを使用します。
- 永続化:
CheckpointSaverを通じて、グラフの状態をさまざまなデータベース(MySQL、PostgreSQL、Redis など)に保存でき、長時間実行されるプロセスやワークフローの再開・デバッグが可能になります。
対象ユーザー
LangChain4j や Spring AI を既に使用している Java 開発者で、エージェントの協調、メモリ、制御フローを構造的に管理したい方を対象としています。
特徴
- 循環グラフのサポート:ループや反復的なエージェント推論を可能にします。
- 状態管理:ノード間で共有され、リデューサーに基づく状態により、コンテキスト認識が可能になります。
- 永続化:複数のデータベースバックエンドを内蔵サポートし、グラフ状態の保存と再開が可能です。
- ビジュアルデバッグ:グラフの可視化と実行が可能な Studio Web UI を含んでいます。
- フレームワーク統合:LangChain4j および Spring AI とシームレスに連携します。
- 非同期/ストリーミング:非ブロッキング操作と LLM からのストリーミング結果をサポートします。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト