此次官方發布的 Spring AI Alibaba OpenManus 實現,包含完整的多智能體任務規劃、思考與執行流程,可以讓開發者體驗 Java 版本的多智能體效果。它能夠根據用戶的問題進行分析,操作瀏覽器,執行代碼等來完成復雜任務等。
項目源碼及體驗地址:spring-ai-alibaba-openmanus
官網及博客地址:java2ai.com
效果展示
話不多說,先看運行效果,以下是我們通過幾個實際問答記錄展示的 Spring AI Alibaba OpenManus 實際使用效果。
- 打開百度瀏覽器,在搜索框輸入:阿里巴巴最最近一周股價,根據搜索到的信息繪制最近一周的股價趨勢圖并保存到本地目錄。
- 我計劃在接下來的五一勞動節假期到韓國旅行,行程是從杭州出發到韓國首爾,總預算為10000元。我想體驗韓國的風土人情、文化、普通老百姓的生活,總行程計劃為5天。請提供詳細的行程并制作成一個簡單的HTML旅行手冊,其中包含地圖、景點描述、基本的韓語短語和旅行提示,以供我在整個旅程中參考。
- 在本機的/tmp/docs目錄下有一些中文文檔 ,請依次將這些文檔翻譯為中文并保存到一個獨立文件,將新生成的文件都存放到/tmp/endocs目錄下
總體架構與原理
Spring AI Alibaba Openmanus 與 Python 版本 OpenManus 設計理念相似,其總體架構如下圖所示。
分析上圖架構,我們可以把它看作是一款多 Agent 智能自動協作實現,其中:
- Planning Agent 負責任務的分解與規劃,將用戶問題拆解成幾個可順序執行的 step。planning agent 調用 planning tool 動態生成一個串行的 Manus Agent 子工作流。
- 多個 Manus Agent 組成一個鏈式、可順序依次執行的子工作流。子工作流中的每個 agent 對應上述規劃的一個 step,每個 agent 都是一個 ReAct 架構設計,即通過多輪 Tool 調用完成具體子任務。
- Summary Agent 用來做最后的任務總結
實現總結與展望
Spring AI Alibaba OpenManus 實現中的問題
當前的 OpenManus 實現主要有如下問題:
- 倉庫中 80% 代碼都在解決流程編排問題,入串聯 manus agent 子流程、做消息記憶、轉發工具調用、全局狀態修改等,這部分工作可以交給高度抽象的 agent 框架實現,以簡化開發復雜度。
- 工具的覆蓋度與執行效果一般,如瀏覽器使用、腳本執行工具等。
- 規劃及工作流程中無法人為介入進行 review、動態修改、回退等動作。
- 當前 OpenManus 實現的效果調試相對比較困難。
Spring AI Alibaba 未來規劃與解決方案
Spring AI Alibaba 是面向 Java 開發者的開源 AI 應用開發框架,它與 Spring 生態完美適配,可以基于 Spring AI Alibaba 構建全新的 AI 應用,也可以使用它為傳統 Spring Boot 應用做智能化升級。
從上圖我們可以看出,除了框架原子抽象之外,Spring AI Alibaba 重點規劃了 multi-agent 框架,配套生態如可視化評估平臺、調試 Studio 等。
接下來,我們將會發布 Spring AI Alibaba Graph 多 agent 框架,以及基于 Spring AI Alibaba Graph 的強化版 OpenManus 實現,預期代碼量將比當前減少 70% 以上,整體易讀性與效果大幅提升,讓開發者可以此為基礎構建面向任意場景的智能體應用。
目前 Spring AI Alibaba 已經支持 MCP 工具接入,解析來我們將為 OpenManus 接入更成熟的 MCP server 實現,以提升整體工作表現。