avatar

張志豪

2024-07-02 17:26:34

868 瀏覽, 6 min 閱讀

近年來,人工智慧(AI)技術的快速發展引起了廣泛的關注和討論。而現在,我們正站在一個全新時代的門檻上,迎接由AI代理帶來的嶄新未來。以大型語言模型(LLM)作為核心控制器來構建代理是一個非常酷的概念。它模擬人類的工作流程,能夠自主搜尋、分析和利用資訊來達成目標。

OpenAI聯合創始人Andrej Karpathy在Twitter上形象地描述了AI代理的過程:每次調用GPT就像是一個念頭。通過將它們鏈接在一起,你可以創建能夠感知、思考和行動的代理系統。

已經有許多AI代理系統的案例,例如AutoGPT、BabyAGI、Camel、Jarvis、AgentGPT等。

AI Agent代理系統是如何運作的?

AI Agent代理系統如此強大,它們究竟是如何運作的呢?

AI Agent 代理系統

在AI Agent代理系統中,LLM引擎充當其大腦,提供強大的處理能力和智能思維。此外,它還依賴於幾個關鍵組件:

  • 任務計劃:為AI Agent代理系統提供 任務分解 (task decomposition)自我反思 (self reflection) 的能力。
  • 記憶:為AI代理系統提供長期儲存和回憶額外資訊的能力。
  • 工具:讓AI代理能在外部採取行動,真正影響現實世界。

1. 任務計劃

任務分解 (task decomposition)

在任務分解階段,AI機器人(AI-BOTs)通常使用連鎖思維(Chain of Thought, CoT)和思維樹(Tree of Thought, ToT)等技術。

  • CoT通過「逐步思考」將複雜任務分解為更小、更簡單的步驟。它將大任務分解為多個可執行的小任務,並展示LLM的推理過程。
  • ToT則嘗試同時考慮多個潛在可行的計劃。 它在每一步探索更多的可能性,首先將問題分解為多個思考步驟,並在每一步生成多個念頭,從而創建一個思維樹。

自我反思

在自我反思的階段,AI代理會回顧過去的行動與決策,並修正之前的錯誤,以迭代方式改進自身。 常見的自我反思技術包括ReAct、Reflection、Chain of Hindsight等。

  • ReAct 追蹤LLM的推理過程,以優化、追蹤和更新行動計劃,並處理邊界案例。
  • Reflection 比ReAct更進一層,在ReAct過程中加入推理評估,以改進推理結果。
  • Chain of Hindsight 透過大量反饋學習和優化推理結果。

2. 記憶

AI Agent 代理記憶

人類記憶可分為三種類型:感官記憶短期記憶長期記憶

感官記憶來自視覺、聽覺、觸覺等回饋,通常只持續數秒。 短期記憶涉及與當前認知任務相關的記憶,通常持續幾十秒。 長期記憶由過去的經驗和回憶組成,通常持續數十年。 我們的大腦會在需要時自動從長期記憶中提取相關記憶。

AI Agent代理也模擬人類記憶的使用過程。對於較短的感官記憶和短期記憶,AI Agent代理可以直接將它們放入情境中。 至於長期記憶,AI代理會將其存儲在外部,並在需要時提取相關的記憶。

我們目前經常使用向量資料庫來存儲和搜索外部記憶。 它們使用最大內積搜索(MIPS)技術來搜尋相關記憶。常用的MIPS演算法包括LSH、ANNOY、HNSW、FAISS、ScaNN等。

3. 工具

工具的使用也是非常重要的一部分。任務計劃、反思和記憶僅賦予AI代理思考的能力。 它仍然需要工具來執行具體行動。為AI代理配備工具就像給它裝上手腳,使其能夠利用各種工具和資源來完成任務。

目前的ChatGPT插件和OpenAI API函數調用是LLM使用工具的絕佳範例。 此外,還有使用MRKL、TALM、Toolformer、HuggingGPT和API Bank等方法的工具。

AI代理的經典案例:AutoGPT

AI Agent AutoGPT

AutoGPT 是一個實驗性的開源 AI 代理程式。 它使用 GPT-4 來自動管理任務,例如創建網站、撰寫文章、生成標誌或推廣產品。 它可以訪問互聯網,收集和分析各種信息,從網路中學習並完成任務。

AutoGPT 的驚人之處在於其自主性。它完全自主運行,不需要用戶的額外干預。它還擁有長期和短期記憶系統,能夠記住過去所做的事情, 從經驗中學習,並根據過去的行動自主優化決策,使其能夠隨著時間的推移不斷自我提升。

AI 代理尚未解決的問題

AI 代理的開發和應用在許多領域顯示出巨大的潛力和前景。然而,像其他技術一樣,AI 代理也有一些限制:

  • 有限的上下文容量:有限的上下文容量限制了 AI 代理系統的效果,特別是任務規劃和自我反思等機制。 雖然向量存儲和檢索提供了對外部信息的訪問,但其表現力不如全量注意力。
  • 在長期規劃和任務分解上的挑戰:儘管 AI 代理在特定任務上可能表現出色,但與人類相比, 它們在長期規劃和任務分解方面仍存在顯著差距。
  • 自然語言介面的可靠性:當前的 AI 代理系統依賴自然語言作為 LLM 和外部組件之間的介面。 然而,大型語言模型的輸出並不完全可靠,因為它們有時可能會出現格式錯誤或表現出異常行為。

當然,隨著 AI 技術的快速發展,我們相信這些限制在不久的將來將會被突破。

如何實現 AI Agent代理?

雖然當前的 AI Agent代理還不夠成熟,無法完全委任任務,但鑒於技術發展的階段,我們仍然可以在 GPTBots 平台上實現務實且合理的中間解決方案來實現代理功能。

Flow BOT — 視覺化計劃任務流程

AI Agent Flow Bot

任務計劃是 AI Agent代理的重要組成部分。 GPTBots 平台提供了通過視覺化組裝任務流程來創建 AI 機器人的能力,這些組件稱為 Flow BOT。 該平台將常見的、通用的 AI Agent 開發模組抽象為多個組件。開發者可以根據自己的業務需求, 通過簡單的拖放操作,在介面上輕鬆「計劃」並拼接不同的組件成為「任務」,並將其定義為 AI Agent 來解決特定問題。

Flow BOT 不僅具有靈活的任務流程配置能力,還在不同的開發模組中提供了許多可配置選項, 如輸入、輸出、插件、知識庫、條件邏輯等,幫助開發者靈活應對各種業務場景。

插件 — 使 AI Agent代理能夠執行任何任務

AI Agent代理需要工具來執行各種任務,而 GPTBots 平台提供的插件正是為此目的而設。

GPTBots 平台提供了涵蓋學術、商業、生活、工作等多個領域的公共插件, 供開發者集成到 AI Agent代理中,使 AI Agent 能夠與外界通信並執行相應的任務。

AI Agent 插件

同時,GPTBots 平台還賦能開發者根據自己的需求開發插件,將其集成到 AI Agent 中進行調用,以滿足自身業務場景的需求。

短期和長期記憶 — 用更豐富的資訊做出決策

記憶設定是 GPTBots 平台提供的另一項有助於實現 AI Agent 能力的功能。開發者可以通過配置長期和短期記憶來擴展 AI Agent 的問題解決能力。

AI Agent 記憶設定

對於具有大量資訊的大規模問題,長期記憶能力尤為關鍵。對於一般問題,短期記憶通常就足夠了。 對於單輪問答問題,可能甚至不需要長期和短期記憶。

這也為這項功能賦予了另一層價值:開發者可以根據自己的需求理性地定義 AI-BOT 的記憶體配置, 因為更長的記憶體意味著更多的成本消耗。長期和短期記憶功能為開發者提供了一種控制 AI-BOT 成本的手段。

AI Agent代理的未來

AI Agent代理的強大功能將使它們成為我們未來無處不在的助手,為我們的生活和工作提供協助和支持。 無論是在家庭生活中幫助我們管理日常事務和家務,還是在工作場所協助我們處理數據和做出決策,AI 代理都將發揮重要作用。

在家庭生活中,AI Agent代理可以成為智能家居管家,學習我們的偏好和習慣,自動調整溫度、燈光和音樂,提供個性化的生活體驗。 它們還可以幫助我們管理購物清單、行程安排和提醒,使我們的生活更加方便和高效。

在工作場所,AI Agent代理成為我們的智能助理和數據分析師。它們可以快速處理大量數據,提供準確的分析和預測,幫助我們做出更聰明的決策。 AI Agent代理還可以自動化繁瑣的任務,提高工作效率,減少人們的工作壓力。如我們在介紹Flow Bot時展示的截圖範例,只需設定目標語言和行業, 即可輕鬆使用Agent將SEO整篇文章翻譯為特定語言,如日語、西班牙語、繁體中文,輸出的結果會保留HTML標籤。 整體Flow Bot由三個Bot組成:翻譯Bot、審查Bot和總結Bot,配置過程無需任何程式碼。 可想而知,這將極大地提升SEO從業者的工作效率,輔助網站的多語種內容建設。

當然,作為一項新興技術,AI Agent代理也面臨一些挑戰和風險。 我們需要確保 AI Agent代理助理的安全性和可靠性,避免事故和不良後果。 同時,我們還需要制定相關的法規和行業標準,明確責任和監管機制,以確保 AI 代理的合理使用和發展。

當前的 AI 代理仍處於初期階段,可能還不夠完善,但如果這一方向保持與生成式 AI 相同的發展速度, 我們可能很快就會看到商業化的 AI 代理助理出現在我們身邊。那一天可能很快就會到來。

免費開始使用