基本
Mandalaでワークフローがどのように実行されるかを理解することは、効率的で信頼性の高い自動化を構築するための鍵です。実行エンジンは依存関係、並行処理、データフローを自動的に処理し、ワークフローがスムーズかつ予測可能に実行されることを保証します。
ワークフローの実行方法
Mandalaの実行エンジンは依存関係を分析し、最も効率的な順序でブロックを実行することで、ワークフローをインテリジェントに処理します。
デフォルトでの並行実行
互いに依存関係のない複数のブロックは同時に実行されます。この並列実行は手動設定を必要とせずにパフォーマンスを劇的に向上させます。
この例では、カスタマーサポートとディープリサーチャーの両方のエージェントブロックがスタートブロックの後に同時に実行され、効率を最大化しています。
自動出力結合
ブロックに複数の依存関係がある場合、実行エンジンはすべての依存関係が完了するのを自動的に待ち、それらの結合された出力を次のブロックに提供します。手動での結合は必要ありません。
関数ブロックは両方のエージェントブロックが完了するとすぐにそれらの出力を受け取り、結合された結果を処理することができます。
スマートルーティング
ワークフローはルーティングブロックを使用して複数の方向に分岐できます。実行エンジンは決定論的ルーティング(条件ブロックを使用)とAI駆動ルーティング(ルーターブロックを使用)の両方をサポートしています。
このワークフローは、条件やAIの判断に基づいて実行が異なる経路をたどる方法を示しており、各経路は独立して実行されます。
ブロックタイプ
Mandalaは、ワークフロー内で特定の目的を果たす異なるタイプのブロックを提供しています:
トリガー
スタータブロックはワークフローを開始し、Webhookブロックは外部イベントに応答します。すべてのワークフローは実行を開始するためのトリガーが必要です。
処理ブロック
エージェントブロックはAIモデルと対話し、ファンクションブロックはカスタムコードを実行し、APIブロックは外部サービスに接続します。これらのブロックはデータを変換・処理します。
制御フロー
ルーターブロックはAIを使用して経路を選択し、条件ブロックはロジックに基づいて分岐し、ループ/並列ブロックは反復と並行処理を扱います。
出力と応答
レスポンスブロックはAPIやチャットインターフェース向けに最終出力をフォーマットし、ワークフローから構造化された結果を返します。
すべてのブロックは依存関係に基づいて自動的に実行されます - 実行順序やタイミングを手動で管理する必要はありません。
実行トリガー
ワークフローは、ユースケースに応じていくつかの方法でトリガーできます:
手動テスト
ワークフローエディタで「実行」をクリックして、開発中にワークフローをテストします。デバッグや検証に最適です。
スケジュール実行
cron式を使用して定期的な実行をセットアップします。定期的なデータ処理、レポート、またはメンテナンスタスクに最適です。
APIデプロイメント
ワークフローをHTTPエンドポイントとしてデプロイし、アプリケーションからプログラム的に呼び出すことができます。
Webhook連携
GitHub、Stripe、またはカスタムシステムなどの外部サービスからのイベントにリアルタイムで応答します。
チャットインターフェース
ユーザー向けAIアプリケーション用にカスタムサブドメインでホストされる会話インターフェースを作成します。
各トリガータイプについての詳細は、ドキュメントのトリガーセクションで詳しく説明しています。
実行モニタリング
ワークフローの実行時、Mandalaは実行プロセスをリアルタイムで可視化します:
- ライブブロック状態:現在実行中、完了済み、または失敗したブロックを確認できます
- 実行ログ:入力、出力、およびエラーを示す詳細なログがリアルタイムで表示されます
- パフォーマンスメトリクス:各ブロックの実行時間とコストを追跡します
- パス可視化:ワークフロー内でどの実行パスが選択されたかを理解できます
すべての実行詳細はワークフロー完了後も確認できるように記録され、デバッグと最適化に役立ちます。
主要な実行原則
これらの基本原則を理解することで、より良いワークフローを構築できます:
- 依存関係ベースの実行:ブロックはすべての依存関係が完了した時点でのみ実行されます
- 自動並列化:独立したブロックは設定なしで同時に実行されます
- スマートデータフロー:出力は接続されたブロックに自動的に流れます
- エラー処理:失敗したブロックはその実行パスを停止しますが、独立したパスには影響しません
- 状態の永続化:すべてのブロック出力と実行詳細はデバッグのために保存されます
次のステップ
実行の基本を理解したら、以下を探索してください: