GitHub星標超16萬,爆火AutoGPT進階版來了:定製節點、多智慧體協同

机器之心發表於2024-07-18

當然,下一代 AutoGPT 仍是開源的。

還記得去年 AI 大牛 Andrej Karpathy 大力宣傳的「AutoGPT」專案嗎?它是一個由 GPT-4 驅動的實驗性開源應用程式,可以自主實現使用者設定的任何目標,展現出了自主 AI 的發展趨勢。

一年多的時間,該專案的 GitHub 星標總數已經超過了 16 萬,足可見其持續受歡迎的程度。

圖片

GitHub 地址:https://github.com/Significant-Gravitas/AutoGPT

昨日,專案作者在社媒 X 上宣佈了下一代「AutoGPT」的到來,目前是 Pre-alpha 版本。與前代相比,下一代「AutoGPT」讓構建、執行和共享 AI 智慧體變得比以往任何時候都更容易,同時可靠性也大大提升。

圖片

圖源:https://x.com/SigGravitas/status/1812803289739633018

作者展示瞭如何使用下一代「AutoGPT」快速構建、部署並使用 Reddit 營銷智慧體,可以自動回覆評論,執行其他複雜任務。新系統不再像初版「AutoGPT」那樣不可靠和低效。

圖片

當被問到該專案是否可以構建多智慧體驅動的應用程式時, 作者給出了肯定回答並表示這是構建該專案的重要原因。

現在,你可以設計一個圖表,讓多個專家智慧體協同解決問題。SubGraphs 也即將釋出,可以幫助簡化複雜圖表的處理。

圖片

該專案還可以自定義新增節點,並且手動編寫新塊(下文提到的關鍵特性)非常簡單。作者發現,這方面 Claude 做得非常出色,可以完美地建立自定義塊。

圖片

當然,該專案的兩個主要元件(即下文提到的 Server 和 Builder)可以在不同的機器上執行。

圖片

不過,對於下一代「AutoGPT」,作者承認它仍處於非常早期的階段,存在缺陷且比較基礎,但還是希望從一開始就與大家分享並開源出來。

圖片

主要元件和關鍵特性

該專案具有以下兩個主要元件,分別是後端的 AutoGPT Server 和前端的 AutoGPT Builder。其中 Server 負責建立複合多智慧體系統,將 AutoGPT 智慧體和其他非智慧體元件用作其原語(primitive)。

  • AutoGPT Server (Backend):

  • https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/autogpt_server

  • AutoGPT Builder (Frontend):

  • https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/autogpt_builder

設定和執行 Server 和 Builder 的具體步驟如下:

  • 導航到 AutoGPT GitHub 儲存庫;

  • 單擊「程式碼」(Code)按鈕,然後選擇「下載 ZIP」;

  • 下載後,將 ZIP 檔案解壓到你選擇的資料夾中;

  • 開啟解壓的資料夾並導航到「rnd」目錄;

  • 進入「AutoGPT Server」資料夾;

  • 在「rnd」目錄中開啟一個終端視窗;

  • 找到並開啟 AutoGPT Server 資料夾中的 README 檔案;

  • 將 README 中的每個命令複製並貼上到你的終端中(重要提示:等待每個命令完成後再執行下一個命令);

  • 如果所有命令執行均無錯誤,請輸入最後一個命令「poetry run app」;

  • 在終端中看到伺服器正在執行;

  • 導航回「rnd」資料夾;

  • 開啟「AutoGPT builder」資料夾;

  • 開啟此資料夾中的 README 檔案;

  • 在終端中執行以下命令:

npm install
npm run dev
Once the front-end is running, click the link to navigate to localhost:3000.
  • 前端執行後,單擊連結導航到「localhost:3000」;

  • 單擊「構建」(Build)選項;

  • 新增幾個塊來測試功能;

  • 將塊連線在一起;

  • 單擊「執行」;

  • 檢查你的終端視窗。此時應該看到伺服器已收到請求、正在處理請求並已執行請求。

按照以上步驟,你就可以成功地設定並測試 AutoGPT。GitHub星標超16萬,爆火AutoGPT進階版來了:定製節點、多智慧體協同

影片來源:https://github.com/Significant-Gravitas/AutoGPT/tree/master/rnd/

除了兩個主要元件外,下一代「AutoGPT」的關鍵特性是使用「塊」(Blocks)來構建智慧體。你可以將一些高度模組化的功能結合起來,建立自定義行為。

目前,專案已經為 Reddit 發帖、Discord 訊息傳送和維基百科摘要獲取等操作提供了相應的塊。同時在設計時追求易建立和使用。以下是維基百科摘要獲取的塊示例:

class GetWikipediaSummary(Block):
    class Input(BlockSchema):
        topic: str
    class Output(BlockSchema):
        summary: str
    def **init**(self):
        super().__init__(
            id="h5e7f8g9-1b2c-3d4e-5f6g-7h8i9j0k1l2m",
            input_schema=GetWikipediaSummary.Input,
            output_schema=GetWikipediaSummary.Output,
            test_input={"topic": "Artificial Intelligence"},
            test_output={"summary": "Artificial intelligence (AI) is intelligence demonstrated by machines..."},
        )
    def run(self, input_data: Input) -> BlockOutput:
        response = requests.get(f"https://en.wikipedia.org/api/rest_v1/page/summary/{input_data.topic}")
        summary_data = response.json()
        yield "summary", summary_data['extract']

作者表示,這僅僅是個開始,未來還將新增更多塊,並改進 UI,大幅提升整體體驗和功能。

相關文章