動的計画が難しい中間地点である理由
AIエージェントの風景は2つのキャンプに分かれ、どちらも簡単な道を選びました。従来のワークフローエンジン(Dify、n8n、Coze)は静的オーケストレーションを選択しました。ビジュアルドラッグアンドドロップフローチャートと固定実行パスです。これは無知ではなく、エンタープライズ顧客は決定論を要求し(同じ入力で安定した出力)、静的グラフはそれを実現します。一方の極端では、完全に自律的なエージェント(AutoGPTとその派生物)はエンドツーエンドの自律性を約束しましたが、実用的ではないことが判明しました。信頼できないタスク分解、暴走するトークンコスト、そして誰も予測またはデバッグできない動作です。 スイートスポットは狭いですが、実在します。シンプルなタスクはプランナーを必要としません。数十の相互依存するステップが必要なほど複雑なタスクは、現在のLLMを圧倒します。しかし、その間には豊かな問題のクラスがあります。明確な並列サブタスクを持つタスクで、ハードコーディングするには退屈だが、LLMが分解するには実行可能です。動的DAG計画はこのゾーンをまさに対象としています。モデルが実行時に実行グラフを提案し、フレームワークが構造を検証して最大並行性で実行します。ドラッグアンドドロップなし、無謀な自律性なし。モデル改善への賭け
数ヶ月ごとに基盤が変わる — GPT-4、function calling、Claude 3、MCP protocol。移動する地盤の上に厳密な抽象化を構築するのはリスキーだ。LangChainの過度な抽象化は、このスペースの誰もが内在化している警告の話だ。FIM Oneは逆のアプローチを取る:最小限の抽象化、最大限の拡張性。フレームワークはオーケストレーション、並行処理、可観測性を所有する。インテリジェンスはモデルから来ており、モデルは常に改善し続けている。 今日、LLM タスク分解の精度は、非自明な目標に対して約70-80%である。それが90%以上に達すると、動的計画の「スイートスポット」は劇的に拡大する — 昨日は複雑すぎた問題が明日は扱いやすくなる。FIM OneのDAGフレームワークは、配管を書き直すことなく、その拡大する価値をキャプチャするように設計されている。ReActとDAGプランニングは廃止されるのか?
ReActは消えることはありません。オペレーティングシステムに吸収されるのです。類似の例として、TCPハンドシェイクを手書きすることはありませんが、TCPが消えたわけではなく、オペレーティングシステムに組み込まれました。モデルが十分に強力になると、think-act-observeループはフレームワークコードの明示的な部分ではなく、モデル内の暗黙的な動作になります。これはすでに起こっています。Claude Codeは本質的にはReActエージェントですが、ループは外部のハーネスではなくモデル自体によって駆動されています。 DAGプランニングの永続的な価値は「ダムなモデルがタスクを分解するのを支援する」ことではなく、並行スケジューリングです。無限に能力のあるモデルでも、物理的な制約があります。10個のLLM呼び出しの直列チェーンは3つの並列ウェーブの10倍の時間がかかります。DAGはエンジニアリング上の問題(物事を高速かつ確実に実行する方法)であり、インテリジェンスの問題(何を実行するかを決定する方法)ではありません。リトライロジック、コスト制御、タイムアウト管理、可観測性は、モデルがより賢くなっても消えることはありません。 最終的な形:モデルが「何を」を所有し(プランニングインテリジェンスはモデルに内在化)、フレームワークが「どのように」を所有する(並行処理、リトライ、監視、コスト管理)。フレームワークの永続的な価値はインテリジェンスではなく、ガバナンスです。Difyのワークフローエディターをミラーリングしない理由
自然な質問です:DAGが柔軟なケースをカバーしているなら、決定論的なケースのための静的ワークフローエディターも構築すべきではないでしょうか? いいえ。その理由は以下の通りです:- ワークフローは既に他の場所に存在しています。 政府および企業クライアントの固定プロセスは、彼らのOA、ERP、およびレガシーシステムに存在しています。彼らはそれらのフローを別のプラットフォームで再構築したくありません。彼らが望むのは、それらのフローが既に実行されているシステムに接続できるAIです。Connector Platform(v0.6)がこれを直接解決します。
- 既存の機能は固定パイプラインに組み合わさります。 Scheduled Jobs(v1.0)は固定プロンプトでDAGエージェントをトリガーします。DAGは動的にステップを計画します。Connectors(v0.6)はターゲットシステムに接続します。この組み合わせは静的パイプラインと同等です。ただし、LLMが遭遇するデータに基づいてプランを調整できるため、より柔軟です。別のパイプラインDSLは不要です。
- 投資のミスマッチ。 本番品質のビジュアルワークフローエディター(キャンバス、ノードタイプ、変数の受け渡し、デバッグ/リプレイ)は、数ヶ月の専任の努力が必要です。その結果は、Difyの120K星のコミュニティが既に保守している低忠実度のコピーになります。その努力は、Connector アーキテクチャに費やす方が良いです。これは競合他社が提供していない機能です。
FIM Oneの立場
FIM Oneは「AGIタスクスケジューラー」ではなく、静的なワークフローエンジンでもありません。中間領域を占めています:制約のある計画機能、可観測性を備わった並行処理。- Difyと比較して:より柔軟性が高い — 実行時DAG生成対設計時フローチャート。すべての実行パスを事前に予測する必要がありません。ビジュアルワークフロー編集では競争しません。レガシーシステム統合で競争します。
- AutoGPTと比較して:より制御可能 — 制限された反復、再計画制限、ロードマップ上の人間参加。ガードレール内での自律性。
FIM Oneが位置する場所:計画 × 実行スペクトラム
AI実行ランドスケープは2つの軸でマッピングできます。計画の作成方法(静的 vs 動的)と実行方法(厳密 vs 適応的)です: Dify/n8nが静的計画 + 静的実行である理由:DAGは設計時に人間がビジュアルキャンバス上に描画されます。各ノードは固定操作(固定プロンプトを使用したLLM呼び出し、HTTPリクエスト、コードブロック)を実行します。実行時の再計画はありません。ステップが失敗すると、ワークフローは失敗するか、事前配線されたエラーブランチに従います。これは構造的にはBPMと同じで、グラフにAIノードが含まれているだけです。 FIM Oneの位置:動的計画 + 動的実行- DAGトポロジーは実行時にLLMによって生成されます(動的計画)— 人間がグラフを設計しません
- 各DAGノードは完全なReActループを実行します(動的実行)— ノードは推論し、ツールを使用し、適応します
- 再計画メカニズム(実行 → 分析 → 不満足な場合は再計画)
- ただし制限あり:最大3回の再計画ラウンド、トークン予算、人間確認ゲート
概念用語集
このドキュメントで使用される用語に不慣れな読者向け:| 用語 | 1行説明 | FIM One との関係 |
|---|---|---|
| BPM (Business Process Management) | 設計時に完全に固定されたプロセスを厳密に実行します。Camunda、Activiti。 | FIM One は BPM ではありません。固定プロセスエンジンはありません。 |
| FSM (Finite State Machine) | システムは常に正確に 1 つの状態にあります。イベントが遷移をトリガーします。ループをサポートします(却下 → 再送信)。 | ターゲットシステム(ERP、契約システム)は内部で FSM を使用します。FIM One は 独自の FSM は不要です — ターゲットシステムの API を呼び出します。 |
| ACM (Adaptive Case Management) | スケルトンは静的、ブランチは動的。メインフローは事前定義、各ノードは実行時に適応します。 | FIM One の DAG + ReAct は自然にこの象限に該当します。 |
| HTN (Hierarchical Task Network) | 再帰的なタスク分解:高レベル → サブタスク → アトミック操作。 | DAG の再計画はほとんどのシナリオをカバーします。完全な HTN はまだ必要ありません。 |
| iPaaS (Integration Platform as a Service) | 複数の SaaS/オンプレミスシステムを接続するクラウド統合プラットフォーム。MuleSoft、Zapier。 | FIM One の Hub Mode は AI ネイティブ iPaaS のようなものです — 自然言語がクロスシステム統合を駆動します。 |
アーキテクチャ境界: FIM One はワークフロー ロジックを複製しない
複雑なビジネス プロセス (承認チェーン、転送、却下、エスカレーション、連署、副署) は、ターゲット システムの責任 です。これらのシステムは、このロジックの構築に何年も費やしてきました — ERP、OA、契約管理システムはすべて成熟したステート マシンを備えています。 コネクタの観点から:| 操作 | コネクタが行うこと |
|---|---|
| 転送 | 1 つの API を呼び出し、対象者を渡す |
| 却下 | 1 つの API を呼び出し、却下理由を渡す |
| エスカレーション | 1 つの API を呼び出し、エスカレーション対象者リストを渡す |
| 連署 | 1 つの API を呼び出し、連署者リストを渡す |
- メンテナンス負担が生じます (2 つのステート マシンを同期させる必要があります)
- 障害モードが追加されます (それらが一致しない場合はどうなりますか?)
- 追加の価値を提供しません (ターゲット システムは既にこれを正しく実行しています)