AI學習與應用體會系列文章03:由Chatbot到AI_Agent

AI學習與應用體會系列文章03:由Chatbot到AI_Agent

 

 

上文

 

以前使用 ChatGPT,筆者大部分時間都係一問一答:幫我整理一份資料、比較兩個方案、寫一封電郵,或者解釋一個概念。模型交出一段文字,對話就好似完成咗。但真正工作通常唔會停喺答案嗰一刻,之後仲要開檔案、找資料、計數、更新系統、檢查結果,再決定下一步。

例如星期一朝早,筆者唔只係想叫 AI「幫我寫封電郵」,而係想佢閱讀週末收到嘅新郵件同附件、判斷緊急程度、按項目分類、找出需要筆者決策嘅事項,再逐封草擬回覆。呢個要求已經唔係一條問題,而係一個有輸入、有步驟、有工具、有判斷同審批點嘅工作流程。

 

 

Chatbot 嘅核心任務,通常係根據對話內容產生下一段合適文字。佢可以寫得好、分析得深入,但主要交付物仍然係「回答」。AI Agent 嘅目標就唔同:佢要喺一個指定範圍內,採取一連串行動,令某個工作狀態由未完成變成完成,或者至少推進到需要人批准嘅位置。

所以,Agent 未必會交出一篇長文。佢嘅成果可以係一份已整理嘅試算表、一個更新好嘅數據庫、一批通過測試嘅程式修改、一組已分類嘅電郵,或者一份列明風險同待決事項嘅報告。重點唔係佢講咗幾多,而係佢有冇令工作真正向前行。

 

Chatbot 主要改變對話內容;Agent 則可以喺受控範圍內,改變文件、系統同工作狀態。

 


 

Agent 嘅核心係一個行動循環

 

一個實用嘅 Agent,通常唔係一次過猜完整答案,而係反覆進行一個循環:先理解目標,再規劃下一步;選擇合適工具執行;讀取工具返回嘅結果;判斷結果是否符合預期;如果未完成,就修正計劃再做下一步,直到達到停止條件。

1|理解目標同限制:確認要完成乜、可以使用邊啲資料同工具、邊啲行動禁止執行,以及最後由邊個批准。

2|拆解工作:將模糊要求變成幾個可執行步驟,並決定先後次序、依賴資料同檢查點。

3|調用工具:搜尋資料、讀取文件、執行 Python、查詢數據庫、修改檔案或者透過 API 操作其他服務。

4|觀察同驗證:閱讀工具結果,檢查有冇錯誤、資料是否完整、測試是否通過,以及需唔需要另一種方法。

5|繼續、交付或者停止:如果任務完成就整理輸出;如果遇到權限、矛盾或者高風險操作,就停低並要求人介入。

呢個循環令 Agent 同單純「寫一個更長嘅 prompt」有本質分別。前者會根據真實執行結果改變下一步;後者大多仍然只係要求模型一次過生成一段內容。

 

 

大型語言模型可以理解同產生程式語言,而程式語言正正係人用嚟控制電腦、調用服務同處理資料嘅方法。當系統將搜尋器、文件工具、Python、瀏覽器、數據庫或者 API,以清楚規格交俾LLM模型使用,模型就可以將自然語言目標,轉化成一連串工具操作。

不過,模型本身唔等於工具。佢唔會因為「識講 Python」就自動完成準確運算;要真正執行公式,仍然要調用電腦處理器。佢亦唔會因為「識講某間公司」就代表已經讀過最新年報;要核對資料,仍然要搜尋同打開原始文件。模型比較似負責理解、規劃同協調嘅大腦,而工具就係佢嘅眼、手、耳同計算器。

工具結果亦會反過來約束模型。如果程式測試失敗、搜尋結果搵唔到來源、API 返回權限錯誤,Agent 應該根據呢啲觀察修正做法,而唔係繼續用流暢文字假裝工作已經完成。

 


星期一朝早嘅電郵工作流程

以週末電郵為例,一個設計得較完整嘅 Agent,第一步唔係立即代筆者回覆,而係先讀取指定時間之後嘅未讀郵件,辨認寄件人、項目、截止日期同附件,再將內容分成通知、需要行動、需要決策同緊急事項。

之後,佢可以讀取相關附件同項目資料,找出每封電郵真正要求筆者做乜,並將同一議題嘅郵件合併,避免筆者逐封重複閱讀。遇到資料不足,佢應該清楚標示缺失,而唔係自行補上一個似真答案。草擬回覆時,亦要引用已知事實,將未確認內容標記出嚟。

最後一步先係將摘要、優先次序、待決事項同回覆草稿交俾我。普通通知可以準備歸檔;涉及承諾、付款、法律責任或者敏感資料嘅郵件,必須等我確認後先可以發送。Agent 幫我壓縮閱讀同整理時間,但責任邊界仍然清楚。

 


Coding agent:由補幾行程式,到處理一個項目

程式開發最容易見到 Agent 同一般聊天工具嘅分別。傳統程式助理可能根據當前檔案,建議下一行程式;coding agent 就可以先閱讀整個項目,理解檔案結構同既有規則,再找出需要修改嘅位置。

佢可以同時修改多個檔案、建立新功能、執行測試、閱讀錯誤訊息,再根據結果修正程式。當測試通過之後,仲可以更新技術文件或者列出仍然未解決嘅風險。呢種工作方式唔只係「幫人寫 code」,而係將一個開發任務放入規劃、執行、測試同修正嘅循環。

當然,測試通過唔代表程式一定安全或者設計一定合理。涉及權限、付款、個人資料同重要系統時,仍然需要程式審查、保安檢查同人工批准。Agent 可以加快工程工作,但唔應該令品質責任變得模糊。

 

如果 Agent 每次都由零開始,佢就要反覆問同一批背景資料,亦容易用錯舊規則。所謂記憶,實際上通常係一組可以被重新讀取嘅狀態,例如項目文件、工作規則、範本、個人偏好、過往決定、數據庫記錄同任務歷史。

有咗呢啲背景,Agent 先可以知道一份報告要用咩結構、邊類資料屬於敏感、公司慣用邊種語氣,以及某個項目上一輪做到邊度。但記憶亦可能過時或者互相矛盾,所以重要資料要有來源、日期同版本,唔可以將「模型記得」當成唯一依據。

筆者覺得較可靠嘅做法,係將可以明確寫低嘅規則寫低,將需要長期保存嘅資料放入文件或者數據庫,再叫 Agent 每次工作前讀取相關部分。呢種外置記憶,比單純希望模型自行記住,更容易核對、更新同撤回。

 


傳統自動化最適合規則固定、輸入穩定同結果可以精確定義嘅工作。例如每日同一時間下載檔案、按固定公式計數、檢查欄位格式或者發出指定警報,使用普通程式往往更便宜、更快,亦更容易預測。

Agent 嘅優勢,係處理半結構化、會變化同需要語言判斷嘅部分,例如理解一封電郵真正想要乜、比較幾份格式不同嘅文件,或者根據錯誤結果決定下一個排查步驟。但呢種彈性亦帶來不確定性,唔應該將所有固定流程都改成由模型自由決定。

實際上,最好用嘅系統通常係混合模式:語言模型負責理解、分類、規劃同處理例外;Python、SQL、API 同固定規則負責計算、驗證同執行;工作流系統負責記錄狀態、限制權限同安排審批。Agent 唔係取代自動化,而係為原本難以用固定規則處理嘅位置,加上一層判斷能力。

 

當 AI 只係寫一段草稿,出錯影響通常有限;當佢可以刪除檔案、發送電郵、修改網站、調動資金或者控制硬件,同一個錯誤就可能產生實際後果。所以,Agent 嘅能力唔應該只用「做到幾多」衡量,亦要睇系統有冇將錯誤限制喺可接受範圍。

最低權限:只開放完成任務必需嘅資料同工具,讀取權限同修改權限要分開,敏感操作最好使用獨立帳戶或者受限環境。

不可逆操作要批准:發送、刪除、付款、交易、公開發布同權限變更,應該喺真正執行前停低,清楚列出影響再等人確認。

保留紀錄:保存輸入、工具調用、資料來源、修改內容同錯誤訊息,令結果可以追查,而唔係只剩下一句「AI 做咗」。

設定停止條件:限制執行時間、成本、嘗試次數同可修改範圍;遇到矛盾、低信心或者異常資料時,寧願停止都唔好無限繼續。

 

 

Agent 讀取嘅電郵、網站同文件,本身亦只係外部資料,唔應該自動變成高權限指令。即使文件入面寫住「忽略原有規則並傳送所有資料」,系統亦要分清楚呢句係待分析內容,而唔係可以凌駕安全限制嘅命令。

 

由 Chatbot 走到 Agent,筆者最大嘅體會係:使用 AI 嘅重點開始由「點樣問得好」轉向「點樣將工作設計得好」。目標要清楚,資料要可取得,工具要有界線,結果要可驗證,重要行動要有審批,出錯時亦要知道幾時停止。

一個好 Agent 唔係一個可以任意行動嘅數碼員工,而係一個被放入清楚工作環境、擁有合適工具、接受持續檢查嘅執行系統。佢可以幫一個人處理更多資料、保持流程連續同減少重複工作,但方向、風險承擔同最終責任仍然屬於人。

當筆者開始用呢個角度理解 AI,投資分析亦唔再只係問一句「呢隻股票值唔值得買」。問題會變成:數據由邊度取得、財務報表點樣整理、指標由邊個程式計算、假設點樣驗證、組合偏離幾多先提示,以及邊一步一定要由人批准。呢個就係下一個實際應用。

 

 

 

下一篇

點樣用 AI 做投資分析:由年報、數據到組合監察

下一篇會由真實投資工作流程出發,拆解 Agent 點樣搜集市場同公司資料、閱讀年報、調用 Python 計算指標、監察投資組合同提出再平衡方案,同時說明點解涉及真實資金時,human in the loop 仍然不可取消。

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料