ワークフローはBFS(幅優先探索)、エージェントはDFS(深さ優先探索)です。
Anthropicによると1:
- Workflows(ワークフロー)は、LLMとツールが事前に定義されたコードパスを通じて調整されるシステムです。
- 一方、Agents(エージェント)は、LLMが自身のプロセスやツールの使用を動的に制御し、タスクの達成方法に柔軟性を維持するシステムです。
これから私が理解したことを説明します:
- ワークフローを使ってアプリやプラットフォームを強化することは、BFS(幅優先探索)に似ています。タスクは体系的に、レベルごとに完了されます。
- エージェントを使うことは、DFS(深さ優先探索)に近いものです。タスクはより探求的で、一歩ずつ進められます。
時には、BFSとDFSを組み合わせることができます。DFSは別のDFSの中にネストすることができ、BFSについても同様です。
例えば、o1(連鎖思考)はBFS(幅優先探索)のようなものです。最初に主要なタスクが個別のステップに分割され、各ステップがより詳細な説明に展開されます。その後、すべての思考に基づいて最終的な結果が提供されます。
非常に複雑なタスク、例えばAIにYouTubeアプリの構築やオペレーティングシステムの作成を依頼する場合、BFS(幅優先探索)やDFS(深さ優先探索)、またはその両方を組み合わせて使用することができます。これは、BFSとDFSをどのように活用するかによります。時にはAIが深く掘り下げる必要(DFS)があり、また時にはアプローチを広げる必要(BFS)があるからです。
もう一つの考慮点は、各ステップにおいて、AIは目標を達成するために次に何をすべきかを評価する必要があるということです。
ターゲットは興味深い側面です。例えば、YouTubeアプリを作成する場合、AIはすべてのコードがうまく動作し、すべての機能が実装され、すべてのテストが合格することを保証する必要があります。これらのターゲットに到達する方法は非常に興味深いものです。AIは一度に1つのターゲットに取り組むべきでしょうか、それともすべてのターゲットに対して同時に進捗を図り、それぞれを繰り返し改善すべきでしょうか?