近期爆火的 AI Agent,運行原理全解析
“Android、iOS 和 Windows 都是平臺,AI Agent 將成為下一個平臺”,比爾·蓋茨在他的博客文章中這樣說到。
那讓比爾·蓋茨都為之傾倒的 AI Agent,究竟是什么呢?
隨著 AI 技術的日益普及,未來五年內我們將不再使用不同的應用程序來完成不同的任務,相反只需用日常用語告訴你的手機或電腦想要做什么,它們就能夠處理你的請求。在不遠的將來,任何上網的人都將能夠擁有一個由人工智能驅動的個人助理,也就是所謂的“AI Agent”。
1、AI Agent 的概念
AI Agent 是一種應用了大模型(LLM)能力的 Agent,也被稱為智能體。它由 LLM、 Planning(規劃)、 Memory(記憶)和 Tools(工具)等幾部分組成。其中,LLM 是核心大腦,Memory、Planning Skills 以及 Tool Use 等則是 Agents 系統實現的三個關鍵組件。
與大型語言模型(LLM)在像 ChatGPT 這樣的工具中“通常”的使用方式不同,Agent 擁有復雜的工作流程,模型本質上可以自我對話,而無需人類驅動每一部分的交互。
AI Agent 具有自主決策和行動能力,可以理解并適應復雜環境,根據目標,自主思考、制定計劃并執行相應任務。相較于 Copilot 的工具型輔助能力,Agent 更注重對環境的實時感知和判斷,更像人類一樣形成獨立的決策和行動方案。
圖片
IDC 調研顯示,Agent 被普遍認為是 AI 應用發展的趨勢性方向,50%的企業已經在某項工作中進行了 AI Agent 的試點,另有 34%的企業正在制定 AI Agent 的應用計劃,主要應用于智能終端、智能座艙、汽車自動駕駛、工業機器人和人形機器人等領域。
2、AI Agent 的潛力與優勢
比爾·蓋茨認為 AI Agent 將成為下一個平臺,未來五年內人們將通過日常用語與 AI Agent 交流,完成各種任務。Meta 創始人扎克伯格也曾表示,看到了“以有用、且有意義的方式,向數十億人介紹 AI Agents 的機會”。
AI Agent 是一種人工智能技術,它具有巨大的潛力和優勢,可以幫助人們解決各種問題和任務。以下是 AI Agent 的一些主要優勢和潛在應用:
- 自動化
AI Agent 可以自動執行各種任務,從而節省時間和提高效率。它可以處理重復性的任務,如數據輸入、客戶服務和訂單處理等,從而釋放人力資源,使人們能夠專注于更有價值的工作。
- 智能決策
AI Agent 可以使用數據和算法來做出更明智的決策。它可以分析市場趨勢、客戶行為和競爭對手,從而幫助企業制定更有效的戰略和決策。
- 個性化服務
AI Agent 可以根據客戶的偏好和行為來提供個性化的服務。它可以通過分析客戶數據來了解客戶的需求和喜好,從而提供更符合客戶需求的產品和服務。
- 高用戶滿意度
AI Agent 可以提供 24/7 的客戶服務,從而提高客戶滿意度。它可以快速響應客戶的問題和請求,并提供準確的信息和解決方案。
- 創新
AI Agent 可以幫助企業探索新的業務模式和創新解決方案。它可以分析市場趨勢和技術發展,從而幫助企業發現新的機會和創新點。
3、AI Agent 的基本框架
OpenAI 將 AI Agent 定義為:以大語言模型為大腦驅動,具有自主理解感知、規劃、記憶和使用工具的能力,能自動化執行完成復雜任務的系統。
AI Agent 基本框架如下圖:
它包括以下幾個核心模塊:
- 記憶(Memory)
記憶模塊負責存儲信息,包括過去的交互、學習到的知識,甚至是臨時的任務信息。對于一個智能體來說,有效的記憶機制能夠保障它在面對新的或復雜的情況時,調用以往的經驗和知識。
例如,一個具備記憶功能的聊天機器人可以記住用戶的偏好或先前的對話內容,從而提供更個性化和連貫的交流體驗。
它分為短期記憶和長期記憶:
a. 短期記憶,所有的上下文學習都是利用短期記憶來學習;
b. 長期記憶,這為智能體提供了長時間保留和回憶。
- 規劃(Planning)
規劃模塊具有事前規劃和事后反思兩個階段。
a. 在事前規劃階段,這里涉及對未來行動的預測和決策制定,如執行復雜任務時,智能體將大目標分解為更小的、可管理的子目標,從而能夠高效地規劃一系列步驟或行動,以達到預期結果。
b. 在事后反思階段,智能體具有檢查和改進制定計劃中不足之處的能力,反思錯誤不足并吸取經驗教訓進行完善,形成和加入長期記憶,幫助智能體之后規避錯誤、更新其對世界的認知。
- 使用工具(Tool use)
工具使用模塊指的是智能體能夠利用外部資源或工具來執行任務。如學習調用外部 API 來獲取模型權重中缺失的額外信息,包括當前信息、代碼執行能力、對專有信息源的訪問等,以此來補足 LLM 自身弱項。
例如 LLM 的訓練數據不是實時更新的,這時可以使用工具訪問互聯網來獲取最新信息,或者使用特定軟件來分析大量數據。
現在市場上已經存在大量數字化、智能化的工具,智能體使用工具比人類更為順手和高效,通過調用不同的 API 或工具,完成復雜任務和輸出高質量結果,這種使用工具的方式也代表了智能體的一個重要特點和優勢。
- 行動(Action)
行動模塊是智能體實際執行決定或響應的部分。面對不同的任務,智能體系統有一個完整的行動策略集,在決策時可以選擇需要執行的行動,比如廣為熟知的記憶檢索、推理、學習、編程等。
除了以上四個核心模塊之外,一個 AI Agent 的良好運行離不開LLM、提示詞(Prompt)以及知識庫(Knowledge)。
- LLM
AI Agent 的核心計算引擎是一個大語言模型。LLM 在海量數據集上進行訓練,以理解文本數據并從中推理。
- 提示詞(Prompt)
提示詞是向大語言模型(LLM)提供關于 Agent 的目標、行為與計劃的信息闡述。建議從角色、技能、插件、知識庫等層面,分層次進行描述,這樣能讓提示詞(Prompt)更完善。
它分為通用提示詞和特定提示詞:
a. 通用提示詞(General prompt):對 Agent 的角色與行為予以說明。
b. 特定提示詞(Specific prompt):將特定任務的目標傳達給 Agent。
- 知識庫(Knowledge)
沒有該領域的知識,代理就無法解決甚至理解任務。因此,要么必須對 LLM 進行微調以獲得知識,要么我們可以創建一個工具來從數據庫中提取知識。
總的來說,以上各個模塊相互配合使 Agent 能夠在更廣泛的情境中采取行動和作出決策,以更智能、更高效的方式執行復雜任務。
4、應用示例
示例 Agent 使用 Langchain 框架創建,“wikipedia”工具用于從互聯網中提取知識,“llm-math”用于數值計算。
# Large language model
llm = AzureChatOpenAI()
# Tool integration
tools = load_tools(['wikipedia', 'llm-math'], llm=llm)
# Initialization of the agent
agent = initialize_agent(tools, llm, agent=AgentType.ZERO_SHOT_REACT_DESCRIPTION,
verbose=True, handle_parsing_errors=True)
# Run the agent with a prompt
result = agent.run('What is the average age of a dog? Multiply the age by 3')
執行及結果:
圖片
5、一些常見的 AI Agent 構建平臺
AI Agent 是一種能夠自主執行任務并與環境進行交互的智能體。以下是一些常見的 AI Agent 構建平臺:
- Coze
是一個新一代的一站式 AI Bot 開發平臺,適用于構建基于 AI 模型的各類問答 Bot。它集成了豐富的插件工具,可以極大地拓展 Bot 的能力邊界。
- Microsoft 的 Copilot Studio
這個平臺的主要功能包括外掛數據、定義流程、調用 API 和操作,以及將 Copilot 部署到各種渠道。
- 文心智能體
是百度推出的基于文心大模型的智能體(Agent)平臺,支持開發者根據自身需求打造大模型時代的產品能力。
- 釘釘 AI 超級助理
依托于釘釘強大的場景和數據優勢,提供更深入的環境感知和記憶功能。這使得它在處理高頻工作場景如銷售、客服、行程安排等方面表現更加出色。
- 以及阿里通義、智譜清言、豆包等等
Finally,最后
總的來說,AI Agent 是一種非常有前途的技術,它可以幫助企業提高效率、降低成本、提高客戶滿意度和實現創新。
然而,要真正擴展 AI Agent 的開發和管理,靈活、直觀的無代碼到低代碼解決方案將是變革性的。