AI agent #1
筆者最近研究 AI agent,有一個好深感受:好多人口中講「我整咗個 AI agent」,其實只係叫 ChatGPT 幫自己做多幾步嘢。例如叫佢上網搵資料,叫佢寫一段文章,叫佢出一個表,叫佢改一改 email。呢啲當然有用,但如果講到真正可靠,尤其係用喺投資、公司營運、研究、寫 code、資料分析,咁就遠遠唔夠。
因為一個普通 AI agent,就好似一個好勤力但未必有經驗嘅新同事。你叫佢做嘢,佢會好快交功課,但問題係:佢有冇理解錯任務?佢有冇漏咗重要限制?佢有冇用錯資料?佢有冇自己作咗啲好似好合理但其實冇根據嘅說法?佢寫完之後,有冇另一個人幫佢 check?如果冇,咁你只係將「人類自己可能出錯」變成「AI 更快咁出錯」。
所以真正值得做嘅 agent 架構,唔係「一個 AI 做晒所有嘢」,而係好似一間細公司,有分工、有覆核、有風險控制、有會議紀錄。最簡單可以分成五個角色:
Planner:先搞清楚要做乜
Researcher / Executor:負責搵資料、寫初稿、做實事
Verifier:逐點驗證,睇有冇證據
Critic / Counter-checker:專門唱反調,搵漏洞
Summarizer:最後整理成容易明白嘅答案,並記低今次學到咩
用一個街坊例子講。假設你想裝修間屋,你唔會淨係搵一個師傅入嚟,佢話拆牆你就拆牆,佢話買料你就即刻買料。正常做法應該係:第一,先有設計圖,知道目標係改廚房、加櫃、換地板,定係全屋翻新。第二,有師傅報價同講工序。第三,有人睇吓報價有冇漏項,有冇假設錯咗,例如水電位、牆身承重、管理處規定。第四,有人專門諗壞情況,例如如果漏水點算?如果工期延誤點算?如果報價冇包清泥頭點算?第五,先整理成最後決定:做咩、不做咩、幾錢、幾時完、有咩風險。
AI agent 都一樣。Planner 就係裝修前嘅設計師;Executor 就係師傅;Verifier 就係監工;Critic 就係一個好煩但有用嘅朋友,成日問「你肯定?」;Summarizer 就係最後幫你寫低成份工程清單同注意事項嗰個人。
最怕係乜?最怕係 AI 一開始理解錯方向。例如你問:「幫我研究 self-evolving AI agent。」如果冇 Planner,AI 可能直接列十幾篇 paper,但冇分清楚邊啲係「自我檢查」、邊啲係「自我改 prompt」、邊啲係「自我改 code」、邊啲係「自我訓練模型」。結果睇落好豐富,但對普通人嚟講,只係一堆名詞。
Planner 要做嘅第一件事,就係將問題拆成「任務合約」。即係寫清楚:今次要解釋畀邊個聽?係技術人定普通老闆?要唔要 GitHub?要唔要落地方案?要唔要風險?要唔要用廣東話?有冇字數要求?如果一開始冇呢份 task contract,後面做得幾快都可能係錯方向。
第二個角色係 Executor。佢負責真正做嘢。例如搵 paper、開 GitHub、試 command、寫初稿、拆解概念。佢好似一個跑腿加研究員。但 Executor 交出嚟嘅嘢,唔應該只係一大段文字,而應該拆成一個個 claim。例如:
Claim 1:Chain-of-Verification 係先寫答案,再設計驗證問題,再獨立回答,最後修正。
Claim 2:Reflexion 係將失敗經驗變成文字記憶,下次再用。
Claim 3:ReAct 係一邊諗,一邊用工具行動。
點解要拆 claim?因為如果唔拆,Verifier 就冇得逐點 check。就好似你睇醫生,醫生話「你冇事」,你可能都想知道佢係根據血壓、驗血、X 光,定係淨係望你一眼。AI 都一樣,答案要拆開,先知邊啲係有證據,邊啲係推測,邊啲係未肯定。
第三個角色係 Verifier。佢唔係負責禮貌咁講「答案唔錯」,而係要逐條 claim 問:「呢句有冇來源?個來源係咪真係支持呢句?有冇過時?有冇誇大?」呢個概念同 Chain-of-Verification 好接近。CoVe 嘅做法係先起草答案,再設計驗證問題,獨立回答問題,最後先寫驗證後答案;研究報告話呢個方法可以減少多種任務入面嘅 hallucination。
用生活例子講,Verifier 就係你買二手車之前嗰個驗車師傅。賣家可以話架車好靚、冇撞過、少咪數,但驗車師傅唔會因為賣家講得好聽就信。佢會睇底盤、睇油漬、睇車架、插電腦、試車。AI 答案都要咁驗。尤其係研究、投資、醫療、法律、技術架構,唔可以淨係睇文字流暢。
第四個角色係 Counter-checker,或者叫 Critic / Red-team。呢個角色聽落好負面,但其實最值錢。因為 Verifier 多數係睇「你講嗰啲係咪真」,但 Critic 會問「你冇講嗰啲係咪更重要?」例如你設計一個 AI agent 幫公司自動回覆客戶 email,Verifier 可以 check 你個流程有冇步驟;Critic 就會問:如果客人 email 入面有 prompt injection 點算?如果 AI 誤會客人要求退款,會唔會自動承諾賠錢?如果客人講法律投訴,AI 係咪應該即刻交俾人類?如果 AI 用錯客人個名,會唔會引起投訴?
即係話,Critic 唔係為反對而反對,而係假設世界會出事。佢好似投資入面嘅風控部門。前線交易員可能見到機會,風控就問:「輸幾多先停?流動性夠唔夠?市場停牌點算?系統死機點算?」好多時賺錢唔係因為你估中,而係因為你估錯時唔會死。
第五個角色係 Summarizer。好多人成日睇少總結,以為總結只係將長文縮短。其實喺 agent 系統入面,Summarizer 有兩個大作用。第一,佢要將一輪又一輪嘅研究、驗證、反駁,整合成普通人睇得明嘅結論。第二,佢要將今次過程入面學到嘅嘢寫入 memory,等下次唔使由零開始。呢個同 Reflexion 有關;Reflexion 嘅核心唔係改模型權重,而係將 task feedback 變成文字反思,放入 episodic memory,令 agent 下次決策好啲。
用讀書例子講,小朋友做錯數學題,如果老師只係畀個交叉,幫助有限。但如果老師寫:「你唔係唔識乘法,而係睇漏咗單位」,小朋友下次就會記得 check 單位。AI agent 嘅 memory 都應該係咁,唔係亂記全部對話,而係記低有用教訓,例如:「以後遇到 GitHub repo,要 check README、license、最近更新、issue 數量、是否支援安裝」;又例如:「遇到 research paper,要分清楚 paper claim、官方 blog claim、第三方評論,唔好混埋一齊。」
再講一個更貼地例子。假設你想整一個 AI agent 幫你每個月睇強積金、ETF、股票組合。普通做法係:叫 AI 睇數據,然後叫你買邊隻。呢個好危險。比較合理嘅 agent workflow 應該係:
Planner:確認你目標係退休、現金流、定係短線表現
Researcher:收集基金價格、回報、波幅、資產配置
Verifier:檢查數據日期、來源、基金代碼有冇錯
Critic:問最大跌幅、匯率風險、集中風險、手續費
Summarizer:用人話講返「今個月要留意咩」,而唔係亂叫你炒出炒入
咁樣 AI 先似一個投資助理,而唔係一部自動吹水機。
當然,呢種 multi-agent 架構唔係萬能。最常見問題有幾個。第一,成本會高,因為多幾個 agent 即係多幾次 LLM call。第二,速度會慢,因為要等驗證同反駁。第三,如果所有 agent 都用同一個模型、同一批資料、同一個 prompt,其實佢哋可能一齊錯。第四,如果冇外部工具,例如 web search、code test、database、unit test,AI 自己互相 check,仍然可能只係「幾個人一齊估」。
所以筆者認為,真正關鍵唔係「幾多個 agent」,而係有冇以下四樣:
第一,有清楚任務定義。
第二,有可驗證嘅中間產物。
第三,有獨立驗證同反方挑戰。
第四,有總結同回饋記憶。
講到尾,AI 最大價值唔係一次過答啱晒所有嘢,而係可以將一件複雜工作變成一套可重複、可驗證、可改善嘅流程。就好似投資唔係靠一次貼中冧巴,而係靠長期紀律、回測、風控、檢討。AI agent 都一樣。冇制度嘅 agent,只係快手助手;有制度嘅 agent,先開始似一個可以慢慢進化嘅工作系統。
