工作流程是廣度優先搜索(BFS),代理是深度優先搜索(DFS)。
根據Anthropic1所述:
- 工作流程(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應該一次處理一個目標,還是應該在所有目標上同時取得進展,然後對每個目標進行迭代?