首頁 >科技週邊 >人工智慧 >吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

WBOY
WBOY轉載
2024-04-26 17:20:10874瀏覽

前不久,史丹佛大學教授吳恩達在演講中提到了智能體的巨大潛力,也引起了許多討論。其中,吳恩達談到基於 GPT-3.5 建構的智能體工作流程在應用上表現比 GPT-4 更好。這表明,將目光局限於大模型不一定可取,智能體或許會比其所使用的基礎模型更加優秀。

在軟體開發領域,這些智能體展現了其獨特的能力,能夠高效協作,處理程式設計中的複雜問題,甚至進行程式碼自動產生。最新的技術動態顯示,AI 智能通在軟體開發中顯示出巨大的潛力。還記得 Devin 嗎?號稱世界第一個 AI 軟體工程師的它出場就驚艷到了我們,一個智能體就能帶給我們如此體驗,如果是多個智能體合作,是不是能夠直接把體驗值直接拉滿呢?

想像一下,一個由多個智能體組成的團隊,每個成員都擅長於特定的任務,如程式碼審查、錯誤偵測或新功能實作。這些智能體體可以互補彼此的能力,共同推動軟體專案的進度。這豈不是解放了碼農的雙手,再也不用擔心腱鞘炎了。

吳恩達撰寫一篇帶我們深入這一領域,探索智慧體系的最新動態。文章中提及的 AutoGen 和 LangGraph 等工具,正是在這一大背景下應運而生。這些工具旨在幫助開發者更容易部署和管理 AI 智能體,從而充分發揮其潛力。借助它們的力量,即使是沒有深厚程式設計背景的人也能夠利用 AI 智能體來優化和自動化軟體開發流程。以下是機器之心不改變原義的整理與翻譯。

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

原文連結:https://www.deeplearning.ai/the-batch/issue-245/

智能體協作是我最近幾封信中描述的四種關鍵AI 智能體設計模式中的最後一種。對於像編寫軟體這樣的複雜任務,多智能體方法會將任務分解成由不同角色(如軟體工程師、產品經理、設計師、QA 工程師等)執行的子任務,並讓不同的智能體完成不同的子任務。

不同的智能體可以透過提供一個LLM(或多個LLM)執行不同的任務來建構。例如,要建立一個軟體工程師智能體,我們可以提供LLM:「你是編寫清晰、高效程式碼的專家。請寫程式碼來執行任務…」。

我們多次呼叫相同的大型語言模型(LLM),但我們採用多智能體的程式設計抽象方法,這看似違反直覺,但卻有幾個理由支持:

  1. 它有效!許多團隊使用這種方法取得了良好的效果,沒有什麼比結果更有說服力的了。此外,消融研究(例如在 AutoGen 論文中)表明,多智能體的表現優於單一智能體。
  2. 雖然現今的一些LLM 能接受非常長的輸入上下文(例如,Gemini 1.5 Pro 可以接受100 萬個token),但它們真正理解長而複雜輸入的能力是參差不齊的。採用智能體工作流程,讓 LLM 一次專注於一件事,可以獲得更好的表現。
  3. 最重要的是,多智能體設計模式為開發者提供了一個框架,用以將複雜任務分解成子任務。當在單一 CPU 上執行程式碼時,我們經常將程式分解成不同的進程或執行緒。這種抽像有助於我們將任務分解成更易於編碼的子任務。使用多智能體角色進行思考同樣是一個有用的抽象。

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

在許多公司中,管理者通常會決定招募哪些角色,然後如何將複雜專案— 如寫一大塊軟體或準備研究報告- 分解為較小的任務分配給不同專長的員工。使用多個智能體的做法與此類似。每個智能體實施自己的工作流程,擁有自己的記憶(這本身是智能體技術中一個迅速發展的領域:一個智能體如何記住足夠多的過去互動以在未來的任務中表現得更好) ,並可能請求其他智能體的幫助。智能體還可以進行規劃和使用工具。這會產生了大量的 LLM 呼叫和智慧體間的訊息傳遞,可能形成非常複雜的工作流程。

雖然管理人員很困難,但這是我們非常熟悉的,它為我們如何「僱用」和分配任務給我們的 AI 智能體提供了一個心理框架。幸運的是,管理不善 AI 智能體的傷害遠低於管理不善人類!

像 AutoGen、Crew AI 和 LangGraph 這樣的新興框架為解決問題提供了豐富的多智能體解決方案。如果你對玩樂趣十足的多智能體系統感興趣,不妨看看 ChatDev,這是一個運行虛擬軟體公司的智能體集合的開源實作。你可以查看他們的 GitHub repo,也許複製 repo 並親自運行系統。雖然它可能不會總是產生你想要的結果,但你可能會對它的表現感到驚訝。

就像規劃這個設計模式一樣,我發現多智能體協作的輸出品質很難預測,特別是當允許智能體自由互動並為它們提供多種工具時。更成熟的反思和工具使用模式更為可靠。希望你能享受這些智能體設計模式的樂趣,並且它們能為你帶來驚人的結果!如果你有興趣了解更多,可以閱讀以下文章:

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

  • #論文標題:Communicative Agents for Software Development
  • 論文連結:https://arxiv.org/pdf/2307.07924.pdf

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

  • 論文標題:AutoGen: Enabling Next-Gen LLM Applications via Multi-Agent Conversation
  • 論文連結:https://arxiv.org/pdf/2308.08155.pdf

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率


  • #論文標題:METAGPT: META PROGRAMMING FOR A MULTI-AGENT COLLABORATIVE FRAMEWORK
  • 論文連結:https://arxiv.org/pdf/2308.00352.pdf

更多詳細內容,請閱讀原文。

看了本篇文章,網友們大受啟發,不過也有網友提出,多智能體系統在執行相同或類似任務時表現出的穩定性和可預測性還有待考慮。你覺得多智能體協作的益弊何在呢?

吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率

以上是吳恩達:多智能體協作是新關鍵,軟體開發等任務將更有效率的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:51cto.com。如有侵權,請聯絡admin@php.cn刪除