近日,面壁智能聯(lián)合清華自然語言處理實驗室等機構的研究人員共同發(fā)布了新一代流程自動化范式 Agentic Process Automation,該范式不僅實現(xiàn)了工作流構建的自動化,更在工作流執(zhí)行時引入了動態(tài)決策的自動化。這一創(chuàng)新將為未來自動化領域帶來更高層次的效率和靈活性,將人類從繁重的勞動中解放出來。
在歷史的長河中,自動化是人類技術發(fā)展的主要動力,幫助人類從復雜、危險、繁瑣的勞動環(huán)境中解放出來。自早期農業(yè)時代的水車灌溉,到工業(yè)時代的蒸汽機,人類一直在不斷尋求更加先進的自動化技術,從而解放自身于繁重的工作。
隨著信息時代的到來,軟件作為信息處理、存儲和通信的基礎成為了人類生產生活密不可分的一環(huán),從而催成了機器人流程自動化(Robotic Process Automation, RPA)技術。其通過人工編制規(guī)則將多個軟件協(xié)調成一個固化的工作流(Workflow),通過模擬人交互的方式來和軟件交互實現(xiàn)高效執(zhí)行。
▲圖1. 機器人流程自動化 RPA 與智能體流程自動化 APA 對比
RPA 利用軟件機器人或稱為 “BOT” 來模擬和執(zhí)行重復性、規(guī)則性的任務,從而解放人力資源,提高工作效率。RPA 的應用范圍非常廣泛。很多企業(yè)(包括銀行、保險公司、制造業(yè)、零售業(yè)等各個行業(yè))常利用 RPA 機器人來自動執(zhí)行一些常規(guī)和繁瑣的任務,例如:數(shù)據(jù)錄入、數(shù)據(jù)提取、數(shù)據(jù)處理。通過自動化任務,RPA 可以大幅度減少錯誤率,并且能夠在 24*7 不間斷地執(zhí)行任務,從而提高了業(yè)務的可靠性和響應能力。 根據(jù)市場研究,RPA 市場正在迅速增長并取得巨大成功。Gartner 預測,2023 年全球 RPA 市場收入將達到 33 億美元,相比 2022 年增長 17.5%。這表明了企業(yè)對于 RPA 的強烈需求和認可。
但是,RPA 僅能替代簡單、機械的人力工作,一些復雜的流程仍舊依賴人工:
1. 編寫 RPA 工作流本身需要繁重的人類勞動,成本較高。
2. 復雜任務非常靈活,通常涉及動態(tài)決策,難以固化為規(guī)則進行表示。
▲圖2. RPA 與 APA 的效率與智能對比
幸運的是,最近 AI 領域興起的大模型智能體技術(Large Language Model based Agents, LLM-based Agents)也許給自動化技術創(chuàng)造了新的可能性。有沒有可能將 Agent 技術的靈活性引入到 RPA 領域中,來進一步減少人的參與呢?
該團隊的研究探討了大模型智能體時代下新型自動化范式 “智能體流程自動化” Agentic Process Automation (APA)。和傳統(tǒng) RPA 相比,在 APA 范式中,Agent 可以根據(jù)人類的需求自主完成工作流構建,同時其可以識別人類需求中需要動態(tài)決策的部分,將自動編排進工作流中,并在工作流執(zhí)行到該部分時主動接管工作流的執(zhí)行完成相應復雜決策。
為了探索 APA 的可能性,該研究工作實現(xiàn)了一個自動化智能體 ProAgent,其可以接收人類指令,以生成代碼的方式構建工作流,同在工作流中引入 DataAgent 和 ControlAgent 來在工作流中實現(xiàn)復雜數(shù)據(jù)處理與邏輯控制。ProAgent 的研究展現(xiàn)了 APA 在大模型智能體時代下的可行性,也揭示了 LLM 時代下,自動化技術的嶄新可能性。
方法介紹
在 RPA 中,工作流是由一系列工具調用組成的圖狀結構:節(jié)點代表一個原子化的工具調用(如 Gmail、Twitter、Google Sheets),而邊代表了執(zhí)行的邏輯順序(承接、分支、循環(huán))。一個工作流往往包含了對于一個或一類任務的所有先驗知識,其中包含解決問題的路徑,遇到異常時的處理邏輯等等。因此人編寫固化出來的工作流往往是非常穩(wěn)定周全、非常高效的。
▲圖3. 智能體工作流描述語言示例
在 ProAgent 中,由于 LLM 本身在代碼數(shù)據(jù)中進行預訓練,學習到了較強代碼能力,該研究便基于代碼的智能體工作流描述語言 Agentic Workflow Description Language。該語言使用 JSON 實現(xiàn)對工作流中數(shù)據(jù)的組織與管理,選擇 Python 語法實現(xiàn)對工作流的邏輯控制,將控制流中的跳轉、循環(huán)等直接通過 Python 語法進行表征,同時將工作流中的工具調用封裝為 Python Function。
于是對于 ProAgent,工作流構建任務便轉化為代碼生成任務。當接收到人類指令時,ProAgent 便編寫相應的 Agentic Workflow Description Language,從而實現(xiàn)了工作流自動化構建。
▲圖4. 結合 DataAgent 和 ControlAgent 的智能體工作流描述語言示例
復雜的現(xiàn)實任務中通常會涉及動態(tài)決策,單純的 Python 式的邏輯控制規(guī)則以及 JSON 式的數(shù)據(jù)組織形式在面對靈活的需求時便無能為力,此時便需要引入 agent。因此,該研究工作進一步定義出了兩種 Agent 操作:
1. DataAgent:對于一個復雜的數(shù)據(jù)處理需求,工作流構建時會使用自然語言來描述處理的任務,然后在執(zhí)行時會初始化一個 DataAgent,其會基于該自然語言描述自主處理并完成該數(shù)據(jù)處理任務。
2. ControlAgent:對于難以用規(guī)則表示的邏輯控制規(guī)則,工作流構建時使用自然語言對控制邏輯進行描述,然后在運行時會初始化一個 ControlAgent,其會基于該自然語言描述自主選擇工作流后續(xù)需要執(zhí)行的分支。
ProAgent 使用 ReACT 模式逐步構建工作流,其共包含四個工作流構建步驟:
1. Action_Define:決定在工作流中添加什么工具。
2. Action Implement:將工具的輸入 / 輸出參數(shù)轉化為 JSON 結構,同時將工具的調用封裝為 Python 函數(shù)。
3. Workflow Implement:定義一個 mainWorkflow 函數(shù),用以組織整個 workflow 的邏輯控制與數(shù)據(jù)處理。
4. Task Submit: 當 ProAgent 構建完 workflow 時以該操作標識構建過程結束。
▲圖5. ProAgent 工作流構建過程示例
另外,為了優(yōu)化 ProAgent 的效果,又引入了幾個優(yōu)化技巧:
1. Testing-on-Constructing:在構建過程中,ProAgent 會在一次修改工作流之后對工作流進行測試,以保證工作流的正確性。
2. Function Calling:工作流構建的所有操作均封裝為了 GPT-4 的 Function,從而提高對工作流構建過程的控制。
3. Chain-of-Thought:ProAgent 在編寫工作流代碼時,需要對于每個 function 都要給出注釋 comment 和一個編寫 plan,從而提高 ProAgent 工作流構建的性能。
工作流執(zhí)行過程基于 Python interpreter。給定一個工作流,其對應的 mainWorkflow 函數(shù)用作為工作流執(zhí)行的入口來開始整個執(zhí)行過程。執(zhí)行過程遵循 Python 代碼執(zhí)行規(guī)則,即按照順序逐行執(zhí)行。一旦 mainWorkflow 函數(shù)返回,工作流執(zhí)行就成功完成了。
可行性驗證
為了驗證 Agentic Process Automation 的可行性,該研究使用 OpenAI GPT-4 作為基礎模型,并以一個開源的 RPA 平臺 n8n 作為載體,實現(xiàn)了上述的 ProAgent。同時設計了一個需要兼顧靈活與效率的任務:這是一個典型的商業(yè)場景,需要從 Google Sheets 中提取各種業(yè)務線的營利數(shù)據(jù),同時根據(jù)業(yè)務是否屬于 2B 或是 2C,決定后續(xù)的行為。
一旦確定業(yè)務線為 2C,就會向 Slack 頻道發(fā)送一條消息。而對于 2B 的業(yè)務線,則會向相應的經理發(fā)送一封電子郵件,其中包括對業(yè)務線的評估和簡要的盈利概況。
▲圖6. 任務 Instruction 展示
對于該任務,首先它是一個重復性的任務,對于多條產品線,應該走相同的處理流程。其次,分辨一個業(yè)務線是 2C 還是 2B 很難通過規(guī)則判斷,需要涉及 Agent 動態(tài)決策來判斷后續(xù)的工作流執(zhí)行操作。最后,根據(jù)撰寫業(yè)務線的評估郵件需要一定的智能,所以需要 Agent 的介入。
在 ProAgent 生成中,對于該任務,編寫出了一個包含四個原子操作,一個 DataAgent 和一個 ControlAgent 的工作流。總體過程大致如下圖所示:
▲圖7. ProAgent 工作流構建過程展示
可以看到,ProAgent 通過自主編寫代碼的方式,自動完成了工作流的構建過程,其中無需涉及人工介入。在需要判斷業(yè)務線是 2B 還是 2C 時,ProAgent 引入了 ControlAgent 來做判斷,ControlAgent 的 Prompt 被設置為 “Decide Whether the business line is toC or toB”。
當業(yè)務線為 2B 時,ProAgent 還引入了一個 DataAgent,其任務設置為 “Write a email of the business line of profit, together with your suggestion”,從而利用 agent 的智能來根據(jù)不同業(yè)務線的實際情況來撰寫郵件。
在工作流被編寫、固化下來以后,工作流就會根據(jù)不同的數(shù)據(jù)自動分支到不同的邏輯進行高效地數(shù)據(jù)處理了。
▲圖8. ProAgent 工作流執(zhí)行過程展示
在處理 2C 業(yè)務線數(shù)據(jù)時,ControlAgent 可以根據(jù)業(yè)務線描述判斷出當前業(yè)務線的類型,選擇調用 Slack 工具。當遇到 2B 業(yè)務線數(shù)據(jù)時,DataAgent 可以撰寫郵件發(fā)到相應經理的郵箱中。
總結
該研究提出了大模型時代下新的自動化范式 ——Agentic Process Automation,和傳統(tǒng) Robotic Process Automation 技術相比,其可以實現(xiàn)工作流構建的自動化,以及工作流執(zhí)行時動態(tài)決策的自動化。該研究進一步實現(xiàn)了 ProAgent 并通過實驗揭示了大模型智能體在自動化中的可行性與潛力。相信未來大模型智能體技術會幫助人類實現(xiàn)更高層次的自動化,將人類從各種繁重的勞動中解放出來。
審核編輯:劉清
-
機器人
+關注
關注
210文章
28191瀏覽量
206505 -
python
+關注
關注
56文章
4782瀏覽量
84449 -
JSON
+關注
關注
0文章
117瀏覽量
6940 -
OpenAI
+關注
關注
9文章
1042瀏覽量
6406 -
LLM
+關注
關注
0文章
272瀏覽量
306
原文標題:被OpenAI帶火的Agent如何解放人力?清華NLP實驗室發(fā)布流程自動化新范式
文章出處:【微信號:zenRRan,微信公眾號:深度學習自然語言處理】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論