人工智能代理入門(上):捕獲流程、角色和連接

0 評論 1632 瀏覽 0 收藏 12 分鐘

在AI的快速發展中,多代理系統正成為提高企業響應速度和資源分配效率的關鍵技術。本文將為你提供構建多代理系統的實用指南,幫助你把握AI Agent的入門知識,探索其在商業世界中的潛力和應用。

現代的AI代理至少包含一個能夠調用某些工具的大型語言模型(LLM)。有了合適的編碼工具集,它就可以開始生成代碼,能夠在容器中運行代碼,觀察結果,修改代碼,從而更有可能生成有用的代碼。

相比之下,生成式AI模型會接受一些輸入,并通過預測期望的過程產生輸出。例如,我們給它一個編碼任務,它會生成一些代碼,并且根據任務的復雜性,這些代碼可能可以直接使用。

當代理承擔不同的任務時,它們應該被允許互相交談。

例如,想象一下您公司的內部網,其中的搜索框可以引導您找到所需的應用程序和資源。

如果您的公司足夠大,那么不同部門擁有的這些應用程序都有自己的搜索框。

創建代理非常有意義,也許可以使用檢索增強生成 (RAG) 等技術來增強搜索框。

沒有意義的是在搜索框根據初始查詢將其識別為有用后強迫用戶重復他們的查詢。相反,我們希望頂級代理與代表各種應用程序的其他代理進行協調,并為您(用戶)呈現一個統一的聊天界面。

代表軟件或組織各種工作流程的多代理系統可以具有幾個有趣的優勢,包括提高生產力和穩健性、提高運營彈性以及能夠更快地升級不同模塊。希望本文能幫助您了解如何實現這一點。

但首先,我們應該如何構建這些多智能體系統?

01 掌握組織和角色

首先,我們應該捕捉組織中各種參與者的流程、角色、負責的節點和連接。我所說的參與者是指組織中充當知識工作者的個人和/或軟件應用程序。

組織結構圖可能是一個很好的起點,但我建議從工作流程開始,因為組織內的同一個人傾向于根據工作流程采用不同的流程和人員行事。

有可用的工具可以使用AI來幫助識別工作流程,或者您可以構建自己的gen AI模型。我已經構建了一個GPT,它采用域或公司名稱的描述并生成代理網絡定義。由于我使用的是公司內部構建的多代理框架,因此GPT將網絡生成為Hocon文件,但從生成的文件中應該可以清楚地看出每個代理的角色和職責是什么,以及它連接到哪些其他代理。

請注意,我們要確保代理網絡是有向無環圖 (DAG)。這意味著任何代理都不能同時成為任何其他代理的下鏈和上鏈,無論是直接還是間接。這大大降低了代理網絡中查詢陷入混亂的可能性。

在此處概述的示例中,所有代理均基于LLM。如果多代理組織中的某個節點可以擁有零自主權,那么該代理與其人類對應 配對,應該由人類運行一切。我們需要將所有處理節點(無論是應用程序、人類還是現有代理)表示為代理。

最近有很多公司宣布提供專業代理。如果可用,我們當然希望使用此類代理。我們可以引入一個預先存在的代理并將其API包裝到我們的一個代理中,以便我們能夠使用我們的代理間通信協議。這意味著此類第三方代理需要提供其 API 供我們使用。

02 如何定義代理人

過去曾提出過各種代理架構。例如,黑板架構需要一個集中通信點,各種代理在此聲明自己的角色和能力,然后黑板根據其計劃如何滿足請求來調用它們(參見OAA)。

我更喜歡一種更分布式的架構,它尊重職責的封裝。每個代理在收到請求后,都會決定是否可以處理該請求,以及處理該請求需要做什么,然后將其需求列表返回給發出請求的上鏈代理。

如果代理有下鏈,它會詢問它們是否可以幫助滿足全部或部分請求。如果它從聯系的下鏈收到任何要求,它會與其他代理核對,看它們是否可以滿足這些要求;如果不能,它會將它們發送到上鏈,以便它們可以詢問人類用戶。這種架構稱為AAOSA架構,有趣的是,它是Siri早期版本中使用的架構。

這是一個示例系統提示,可用于將代理轉變為 AAOSA 代理。

當您收到詢問時,您將:

  1. 調用你的工具來確定工具中的哪些下游代理負責全部或部分工作。
  2. 詢問下級代理他們需要什么來處理他們那部分的詢問。
  3. 一旦收集到需求,您將把查詢和滿足的需求委托給適當的下級代理。
  4. 一旦所有下行鏈代理都做出響應,您將匯編他們的響應并返回最終響應。
  5. 反過來,您可能會被系統中的其他代理呼叫,并必須充當他們的下級鏈。

除了每個代理的系統提示中以自然語言定義的角色和職責集之外,代理可能包含或不包含它們可以調用的工具,并將各種參數傳遞給這些工具。例如,產品經理代理可能需要能夠在虛擬看板上處理各種工單,或者警報代理可能需要調用工具在警報系統中發出警報。

當前的多代理系統(例如 Microsoft AutoGen)具有復雜且通常硬編碼的代理協調機制和架構。我更喜歡一種更強大的設置,其中代理將其直接的下游代理視為工具,具有可以輸入的松散定義的參數,并且語義由代理在需要時決定。

在此設置中,下鏈代理可以定義為函數調用:

表示是否要求代理確定查詢是否屬于它

全部或部分。或者如果被要求提供滿足

如果有的話,進行詢問。或者是否被要求對詢問作出回應。

03 人工智能代理的實際應用

公司內部網的代理網絡

讓我們探討一下人力資源代理場景。

讓我們探討一下人力資源代理場景。用戶可能會將人生大事(例如“我的另一半去世了”)通知主搜索框代理,從而觸發法律和人力資源代理,這些代理在為用戶提供服務方面發揮著重要作用。這是因為他們反過來會從一些下級代理(即法律咨詢、工資和福利代理)那里收到信息。

用戶從主搜索框代理收到的最終合并響應將如下所示:

1. 人力資源方面

福利代理可以幫助用戶了解逝者去世對福利、健康保險和退休計劃的影響。您需要提供有關所涉及計劃類型的信息,以及您的另一半是否是受撫養人。

薪資代理可以幫助管理更新稅收減免或處理喪假工資等任務。這需要有關公司喪假政策和當前薪資設置的信息。

2. 法律方面

法律代理人可以就此轉讓與公司事務的關系提供一般指導。

每個部門都需要特定的信息來提供定制的支持。

一家從事 B2B 業務的電信公司的代理網絡

同時,在IT場景中,單一入口點是客戶支持代表代理,他們可以處理復雜的多方面請求,例如:“我們的網絡很慢。我認為由于我們最近增加了辦公室人員,網絡超負荷了。我還需要升級報價?!?/p>

示例響應將概述以下步驟:

網絡性能評估:網絡運營中心專家可以幫助解決速度緩慢和潛在的過載問題。他們需要訪問網絡性能數據、有關當前網絡基礎設施的詳細信息、有關新增人員數量及其網絡使用模式的信息。

升級報價:銷售工程師和現場技術人員可以幫助提供升級報價。為此,他們需要:

  • 有關當前網絡設置的具體信息,包括設備和帶寬要求。
  • 期望的性能改進。
  • 預算限制和任何特定偏好或要求。
  • 升級的規模和任何具體的性能目標。

我希望這篇文章能讓您很好地了解建立多代理網絡所需的條件。

在下部分文章中,我將討論在創建多代理系統時實施保護措施的重要性,并概述如何構建控件以允許人工干預和不確定性檢查。我還將詳細介紹創建安全保護代理以監督代理網絡所需的步驟,并深入探討開發多代理網絡的挑戰(例如失控和過載),以及如何使用超時、任務劃分和冗余來緩解這些挑戰。(Venture Beat)

本文作者Babak Hodjat是Cognizant的人工智能首席技術官

本文由人人都是產品經理作者【AI新智能】,微信公眾號:【AI新智能】,原創/授權 發布于人人都是產品經理,未經許可,禁止轉載。

題圖來自Unsplash,基于 CC0 協議。

更多精彩內容,請關注人人都是產品經理微信公眾號或下載App
評論
評論請登錄
  1. 目前還沒評論,等你發揮!