itwanger/PaiAgent

🔥轻量级的AI工作流编排系统,类似dify、n8n,全程使用Vibe Coding,AI工具为Qoder+CLI。涉及到的技术栈包括SpringAI、LangGraph4J、SSE、MinIO、DAG自定引擎等。

PaiAgent – 企業向けの視覚的AIワークフロー制御プラットフォーム

何であるか

PaiAgentは自己ホスト型のフルスタックプラットフォームであり、コードを書かずにAI駆動のパイプラインを構築・スケジュール・実行できます。フロントエンドのドラッグアンドドロップエディタ(ReactFlow)により、ビジネスユーザーおよび開発者が大規模言語モデル(OpenAI、DeepSeek、Alibaba Qwen、ZhiPuなど)および補助ツール(TTS、データI/O、カスタムプラグイン)を呼び出すノードを組み立てられます。実行時、プラットフォームは古典的なDAGエンジン(トポロジカルソート+サイクル検出)またはLangGraph4jステートグラフエンジンを使用してグラフを実行し、より洗練された条件分岐ルーティングを実現します。

コア機能

機能 得られるもの
ゼロコードワークフロー設計 ショートカットキャンバス、ノードパレット、パラメータパネル – Java/TS不要でパイプラインを構成可能
二重実行エンジン DAG:シンプルな線形/分岐フロー用;LangGraph4j:ステートグラフ、条件分岐、動的ルーティング用 – ワークフローごとに選択可能
統合LLMアクセス Spring AI + Spring AI Alibabaアダプタにより、OpenAI互換、DeepSeek、Qwen、ZhiPu、AIPingモデルが共通の ChatClient API を通じて利用可能
スキルシステム SKILL.md(YAMLフロントマター+Markdown)に宣言的に「スキル」を定義。スキルは自動登録され、遅延読み込み(要約→詳細→参照)され、LLMに関数コールバックとして公開され、モデルが自ら呼び出せるようになります
拡張可能なノードモデル NodeExecutor を実装する(または AbstractLLMNodeExecutor を継承)し、登録するだけで、プラットフォームがUIに自動的にノードを公開します
リアルタイムデバッグ サーバーサイドイベントストリームにより実行ログがサイドドロワーにリアルタイムで送信され、各ノードの開始/成功/エラーを確認可能
永続化とモニタリング MySQLがワークフロー定義と実行ログを保存;オプションでMinIOをファイルブロブ用に使用;UI上で実行履歴を確認可能
組み込みツールノード 入出力、TTS(Qwen3 TTS、StepAudio)、任意のカスタムサービス用のプラグインフック

一般的な利用例

ドメイン 例のワークフロー
コンテンツ作成 記事下書き生成 → 翻訳 → プルーフリーディング → 音声ナレーションの合成
顧客サポート ユーザーの問い合わせを取得 → 適切なLLM(知識ベース)にルーティング → 応答生成 → タイケット記録
データ処理 テキストを取得 → LLMベースのエンティティ抽出 → データベースに結果を保存
メディア制作 スクリプト生成 → TTS → ビデオメタデータに音声を埋め込み
自動化 定期的なレポート生成 → メール配信 → PDFアーカイブ

アーキテクチャの概要

Frontend (React 18 + TypeScript)
  └─ ReactFlowキャンバス、Ant Design UI、Zustandステート

Backend (Spring Boot 3.4, Java 21)
  ├─ Controllers → Services → MyBatis-Plus DAOs
  ├─ エンジン層
  │   ├─ EngineSelector (dag ↔ langgraph)
  │   ├─ DAGParser (Kahnトポロジカルソート、DFSサイクルチェック)
  │   └─ LangGraphWorkflowEngine (StateGraph、非同期ノードアクション)
  ├─ スキルサブシステム (SkillRegistry、プログレッシブロード、FunctionCallback)
  └─ AIモデル層 (Spring AI + Spring AI Alibaba、ChatClientFactory)

データ層
  ├─ MySQL (ワークフロー定義、実行ログ)
  └─ MinIO (オプションのブロブストレージ)

技術スタック

レイヤー 技術 バージョン
フロントエンド React、TypeScript、Vite、ReactFlow、Ant Design、Tailwind、Zustand 18.x / 5.x / latest
バックエンド Spring Boot、Java 21、MyBatis-Plus、FastJSON2、Maven 3.4.1 / 21+
AI統合 Spring AI (1.0.0-M5)、Spring AI Alibaba (1.0.0-M6.1)
ワークフローエンジン カスタムDAGエンジン、LangGraph4j Core (1.1.5) + Spring AIブリッジ (1.8.0-beta3)
ストレージ MySQL 8+、オプションのMinIO

クイックスタート

  1. クローン
    git clone https://github.com/itwanger/PaiAgent-one.git
    cd PaiAgent-one
    
  2. MySQLデータベースを作成し、backend/src/main/resources配下の schema.sql を実行。
  3. 環境設定backend/frontend/ にある .env.example.env / .env.local にコピーし、DB資格情報、JWTシークレット、MinIOキーなどを入力。
  4. バックエンドを実行
    cd backend
    ./mvnw spring-boot:run   # http://localhost:8084 で起動
    
  5. フロントエンドを実行
    cd frontend
    npm install
    npm run dev               # http://localhost:5173 が開く
    
  6. デフォルトの開発アカウント(admin / admin123)でログインするか、環境変数で独自のアカウントを設定。
  7. ワークフローを作成Input ノード、OpenAI ノード、TTS ノード、Output ノードをドラッグして接続し、モデルのAPIキーを設定して Debug をクリックすると、リアルタイムのSSEログが表示されます。

ロードマップのハイライト

  • v1.1 – 条件分岐IF/ELSEノード、ループ(FOR/WHILE)ノード、より多くのLLMプロバイダー(Claude、Gemini、ローカルモデル)、追加の組み込みスキル。
  • v1.5 – サブワークフロー呼び出し、cronベースのスケジューリング、バージョン付きワークフロー、テンプレートマーケットプレイス、画像/動画処理ノード。
  • v2.0 – マルチテナントRBAC、共同編集、パフォーマンス監視&アラート、i18n、サードパーティプラグインマーケットプレイス。

誰が恩恵を受けるか?

  • プロダクトチーム:深く機械学習コードを書かずにAI強化機能を構築したい人。
  • 企業:LLM駆動の自動化に制御可能で監査可能なパイプラインが必要な人。
  • 開発者:複雑なLLMオーケストレーション(例:RAG、ツールコール、マルチモデルルーティング)をプロトタイピングするための即時利用エンジンを求める人。

上記のすべての情報はリポジトリのREADMEから直接取得しており、外部の仮定は一切追加されていません。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト