AI Agent當前仍然處于技術爬坡與實驗階段,特別是在企業領域,真正的成熟應用還處于廣泛探索與原型驗證階段,離成熟還尚待時日。而同時另外一種在最近幾年廣受歡迎的自動化解決方案-RPA(機器人流程自動化)也在LLM時代不斷升級進化。
本文將嘗試結合理論與實例來梳理與探討RPA在LLM影響下的應用與發展。
- RPA概念/場景/技術/與BPA & AI Agent的區別
- 實例:構建一個RPA機器人
- LLM時代RPA的進化與場景
- 實例:RPA與LLM的融合應用
01 RPA概念、場景、技術等
RPA是指Robotic Process Automation,即機器人流程自動化。是一種利用軟件機器人(或稱為“數字員工“)來模擬與整合人類在數字系統中進行的交互與操作流程的自動化技術。RPA在企業中通常用來取代人類員工在企業中執行的一些重復性的、規則明確的、頻率較高的任務,解放員工以從事更需創造性、更高附加值的工作,達到降本增效的目的。
一個可能的RPA流程
RPA的任務場景
RPA在一些大型企業已經得到較為廣泛的應用,應用場景隨著技術的發展也在不斷完善與發展,一些常見的RPA應用包括:
- 數據錄入整合:批量地自動化數據錄入,比如從不同系統和文件中獲取,并整合到單一應用系統或者數據庫中。
- 財務流程自動化:在企業日常的財務流程中用于頻繁的發票與報銷審核、定期財務報表生成發送、批量報稅等。
- 客戶關系管理:來自動搜集、整理與回復客戶反饋;市場營銷中的自動化信息生成與郵件發送;電商自動化的訂單接收與處理。
- 采購與供應鏈:借助機器人完成自動化的采購申請的處理,如搜集信息、驗證信息、生成訂單等。
- 人力資源管理:使用機器人來幫助人事部門批量篩選簡歷與聯絡;員工入職離職流程處理、考勤統計管理等。
- 企業IT運維:自動化的IT支持與運維任務,如系統監控、故障排除、軟件部署,版本升級、安全補丁等。
RPA的技術特點
傳統RPA技術主要通過計算機程序實現模擬鍵盤鼠標操作、識別與定位界面元素、文件與接口訪問等,并按照設定的規則與控制流程自動執行任務。
- 非侵入性。傳統RPA主要工作在軟件UI操作層做人工操作仿真。特別在企業應用中,對現有應用無侵入性,無需建設與提供特別的應用接口。
- 自動化:這是RPA的基本特點,能夠自動執行重復性、規則性的任務流程。
- 可編程:能夠對模擬人類的計算機操作規則與流程做編程與設定,包括鍵鼠操作、web瀏覽、文件處理、軟件操作等。
- 低代碼:RPA平臺通常需要支持低代碼甚至無代碼的開發,從而降低機器人的設計與開發門檻,加快機器人的上線速度。
- 智能性:隨著AI技術發展,RPA在智能性上不斷提升。如借助OCR識別界面元素;或借助AI模型處理各非結構化數據等。
- 集成性:自動化的RPA任務與流程也需要能夠與現有應用做深度集成,如由其他應用來驅動RPA,或者RPA也能實時訪問其他應用的接口。
從RPA的技術特點上也能分析出其最大的不足與缺陷:由于RPA本質是一種UI自動化,雖然對后向集成要求很低,但是卻有著較高的UI層耦合性。比如:某個Web應用UI發生了較大變化,可能導致RPA識別不到某個界面元素而失敗。當然這個問題在RPA引入了一些AI技術后得到了一定的改進。
RPA與BPA
提到流程自動化,很多企業應用的集成者都會接觸過BPA(業務流程自動化)/BPM(業務流程管理),那么RPA與BPA之間的區別在哪里呢?
- 實施目標
- RPA是通過軟件機器人來模擬和整合現有的應用程序的人工操作,以執行重復性、規則性和可預測的任務。側重于自動處理特定的任務和操作。
- BPA的目標是對組織內的端到端業務流程進行自動化改進,實現跨部門、跨崗位、跨應用的復雜流程、決策和協作的自動化。
- 自動化范圍
- 傳統的RPA用UI操作自動化來實現特定任務自動化,比如批量數據錄入、報告生成、客戶回復等
- BPA的范圍通常會更廣泛,可以涵蓋組織內全部業務流程,通過組織內業務流程自動化實現多部門、多系統之間的有效協作。
- 集成復雜度
- RPA通過使用軟件技術來模擬人工操作,無需對已有系統進行深度集成改造,侵入性低。
-
BPA實施是一項復雜的組織內系統性工程。需要廣泛的業務梳理、流程設計與深度集成工作,涉及的現有系統通常需要配合BPMS(工作流管理系統)進行改造升級,以實現跨部門跨系統的流程整合與自動化。
所以,RPA通常更專注于局部的、任務級別的自動化;而BPA則更注重全局的端到端業務流程自動化。
值得注意的是,近幾年隨著RPA的不斷發展,如基于AI的智能化水平提升、對外集成能力的增強等,且RPA更易集成的優勢進一步放大;而傳統的BPM/BPA集成成本過高的問題凸顯,RPA與BPA出現了融合的趨勢:BPA借助RPA來實現部分流程的自動化,成為一種常見的集成方案。這在類似SAP、IBM、微軟這些大廠的BPA解決方案中都有明顯體現。
RPA與AI Agent
越來越多的企業開始考慮借助AI Agent智能體來提升企業部分場景的智能化水平,所以AI Agent本質上也是一種用于自動化的機器人(在之前介紹的AI Agent中有一種實現了自動Web頁面導航與操作的Agent,其本質上就是一種個人RPA)。那么基于RPA與AI Agent的自動化方案區別在哪里呢?
- 自動化范圍
- RPA主要用于自動化重復性的規則性的任務
- AI Agent則更專注需要智能推理與決策的任務。如需要自然語言識別、智能推薦、智能分析等。
- 技術原理
- RPA基于規則和預先定義的邏輯來執行任務,通常不具備智能學習與推理能力。自動化的能力主要依賴于設定的規則。
- AI Agent則基于深度學習技術與AI模型(當前主要是大模型),具備智能學習與推理能力。自動化的能力主要來源于AI模型推理。
- 集成復雜度
- RPA工作以操作層面為主,是一種侵入性較低的自動化流程方案,因此更易于在復雜應用環境下的集成。
- AI Agent在自動化規劃與執行企業任務的過程中,通常需要借助“工具”,比如API或者編碼來完成任務,對現有系統API的改造要求較高。
- 適用場景
- RPA更適用于重復性高、規則性強的任務與流程,關注于提高任務效率和準確性。
- AI Agent則更適用于需要提升智能化水平與推理能力的場景。比如基于自然語言的智能咨詢、交互式數據分析、會自動選擇工具的個人助手等。
即使在當前AI Agent異常火熱的背景下,我們也并不能忽視RPA自身的優勢,比如:RPA集成復雜度較低(這往往意味著成本)、基于規則的自動化相對于大模型的不確定性有更好的穩定性和可控性等,所以AI Agent與RPA二者的融合,充分利用各自的優勢,取長補短,或許是未來企業內流程自動化的方向之一。
我們會在后面部分進一步探討RPA與LLM大模型的集成與融合。
02 構建一個RPA機器人
在本部分我們將構建一個RPA機器人,完成一個自動化任務,以幫助直觀了解RPA工作方式與原理。
任務需求設計
Maria是一名助理,每周需要從公司的一個在線銷售系統中導出公司各個銷售員的銷售數據(Excel),然后通過手工錄入到公司的內部系統,并匯總成最新的銷售報告(pdf),用來發送郵件給領導。錄入界面如下:
【本任務來自Robocorp培訓課程】
工具
我們采用基于python的開源項目來實現完成這個任務的RPA自動化機器人:
- Robot Framework:一個通用的開源自動化任務框架,主要用于自動化測試與RPA(軟件的自動化測試與RPA在場景上非常相似)
- RPA Framework:基于Robot Framework之上擴展的一個用于RPA的開源庫與工具,簡單說就是Robot Framework的一個增強庫與系列工具包。包括開發與構建機器人流程工具,以及云端監控調度中心(收費產品)。
RPA Framework組成
構建RPA機器人
基于RPA Framework構建RPA機器人可以直接使用Python代碼構建,也可以采用其獨有的一種腳本命令來編寫以.robot結尾的機器人文件,然后加載運行即可。本次我們設計RPA機器人需要完成的任務細節流程如下:
- 下載銷售數據
- 打開內部Web應用
- 賬號登錄
- 用Excel文件的數據逐個提交表單
- 保存最后結果截圖
- 保存業績匯總表格
- 退出登錄并關閉瀏覽器
我們編寫RPA機器人如下(詳細構建過程請關注后續視頻),此處給出該RPA機器人的核心內容,可以看到,借助RPA Framework,你只需要描述Robot需要完成的任務(Tasks),并為任務編寫其詳細的命令細節即可(即Keywords,RPA Framework提供了大量開箱即用的庫與命令):
【tasks.robot】
......
***Tasks***
插入銷售數據,并且導出成PDF.
下載銷售數據
打開內部應用網址
登錄
用Excel文件的數據逐個提交表單
保存最后結果截圖
保存業績匯總表格
[Teardown]退出登錄并關閉瀏覽器
***Keywords***
下載銷售數據
Downloadhttps://robotsparebinindustries.com/SalesData.xlsx overwrite=True
打開內部應用網址
OpenAvailableBrowserhttps://robotsparebinindustries.com/
登錄
InputTextusernamemaria
InputPasswordpasswordthoushallnotpass
SubmitForm
WaitUntilPageContainsElementid:sales-form
填寫單個銷售數據
[Arguments]${sales_rep}
InputTextfirstname${sales_rep}[First Name]
InputTextlastname${sales_rep}[Last Name]
InputTextsalesresult${sales_rep}[Sales]
SelectFromListByValuesalestarget${sales_rep}[Sales Target]
ClickButtonSubmit
用Excel文件的數據逐個提交表單
OpenWorkbookSalesData.xlsx
${sales_reps}=ReadWorksheetAsTableheader=True
CloseWorkbook
FOR${sales_rep}IN@{sales_reps}
填寫單個銷售數據 ${sales_rep}
END
保存最后結果截圖
Screenshotcss:div.sales-summary${OUTPUT_DIR}${/}sales_summary.png
保存業績匯總表格
WaitUntilElementIsVisibleid:sales-results
${sales_results_html}=GetElementAttributeid:sales-resultsouterHTML
HtmlToPdf${sales_results_html} ${OUTPUT_DIR}${/}sales_results.pdf
退出登錄并關閉瀏覽器
ClickButtonLogout
CloseBrowser
運行RPA機器人
基于RPA Framework的機器人構建完成后可以有幾種運行方法:
- 直接在開發工具中測試運行(VS code,需安裝RPA Framework相關擴展)
- 使用獨立開源工具rcc在本機調度運行
- 上傳到control room,然后調度運行(收費服務)
此處我們在本地運行,可以很清楚的看到運行效果:
至此,我們完成了一個簡單的RPA機器人,并且取得了預期效果。在下篇中我們將繼續探討基于LLM的生成式AI能力與RPA的融合話題。
未經允許不得轉載:RPA中國 | RPA全球生態 | 數字化勞動力 | RPA新聞 | 推動中國RPA生態發展 | 流 > 認識與探索大模型時代的RPA應用及進化(上)
熱門信息
閱讀 (14728)
1 2023第三屆中國RPA+AI開發者大賽圓滿收官&獲獎名單公示閱讀 (13753)
2 《Market Insight:中國RPA市場發展洞察(2022)》報告正式發布 | RPA中國閱讀 (13055)
3 「RPA中國杯 · 第五屆RPA極客挑戰賽」成功舉辦及獲獎名單公示閱讀 (12964)
4 與科技共贏,與產業共進,第四屆ISIG中國產業智能大會成功召開閱讀 (11567)
5 《2022年中國流程挖掘行業研究報告》正式發布 | RPA中國