這半年我被問最多次的問題大概就是這個。

而且問的人通常已經有一個模糊的答案了。「Agent 就是比較強的 Chatbot 吧?」「Agent 是不是就是可以自己做事的那種?」

第二句比較接近,但還是不夠。因為「可以自己做事」這幾個字,其實藏了四件不一樣的事。我想把那四件拆開來講。

先講一個我自己的體感。

我用 ChatGPT 那年,最常做的事是:問一個問題、複製它的答案、貼到我的檔案裡、自己去改。整個流程裡,AI 負責產生文字,我負責搬運。

現在我最常做的事是:講一句「幫我把這週的工作記錄整理進試算表」,然後去倒杯水。回來的時候試算表已經填好了。

中間那個差別,就是這篇文章要講的東西。

先講最簡單的分法

Chatbot 是一個回合制的東西。

你說一句,它回一句。這一回合結束了。你再說一句,它再回一句。它很會講話,但它從頭到尾只做一件事:產生下一段文字。

Agent 是一個有迴圈的東西。

你給它一個目標,它自己決定要做幾步、每一步做什麼、做完之後結果對不對、不對的話要不要重來。這個迴圈可能跑三次,也可能跑三十次,然後才回來跟你講「好了」。

用一個比喻:Chatbot 像一個很博學的朋友,你問他什麼他都答得出來,但他坐在那裡不動。Agent 像一個你雇來的實習生,你交代一件事,他會自己跑出去做,中間遇到問題會自己想辦法,做完回來跟你報告。

(然後你會發現,實習生偶爾會做出一些讓你血壓升高的事。這點稍後再說。)

四個真正的差別

比喻好記,但比喻不精確。我把差別拆成四項,這四項才是工程上實際的分野。

一、它能不能動手

Chatbot 只能輸出文字。它可以告訴你「你應該去把 A 檔案裡的資料複製到 B 表格」,但那個複製動作得你自己做。

Agent 有工具。它可以真的去讀檔案、寫檔案、呼叫 API、查資料庫、寄信、跑程式碼。

這個差別聽起來只是「多了幾個功能」,實際上它改變了整件事的性質。因為一旦 AI 可以動手,它就會產生真實世界的後果。文字寫錯了你可以不理它,檔案被覆蓋掉就是被覆蓋掉了。

我在公司推 AI 工具的時候,一半的時間在講怎麼用,另一半的時間在講為什麼一定要先過資安審查。原因就在這裡。Chatbot 講錯話是尷尬,Agent 做錯事是事故。

二、它會不會自己決定下一步

這是我認為最關鍵的一項。

Chatbot 的流程是你規劃的。你問第一句、看完答案、決定第二句要問什麼。規劃者是你。

Agent 的流程是它自己規劃的。你給的是目標,不是步驟。它會自己拆解:要達成這個目標需要先做什麼、再做什麼、如果中間失敗了要怎麼繞路。

我舉一個很小的實例。我請 AI 幫我查上個月哪幾筆交易金額異常。

如果是 Chatbot,我得先自己想清楚:要先撈資料,所以我得問它怎麼撈;撈完要算平均和標準差,所以我得問它公式;算完要挑出離群值,所以我得問它怎麼挑。三個回合,每一個回合的題目都是我出的。

如果是 Agent,我只講最後那句「哪幾筆異常」。它自己去撈、自己算、自己挑,中間發現欄位名稱跟它猜的不一樣,它自己改了再跑一次。

差在哪裡?差在誰負責想「接下來該做什麼」

這也是為什麼我一直說,Agent 時代真正稀缺的能力是把 Why 講清楚。因為 How 已經被接手了。

三、它記不記得

Chatbot 的記憶通常只有這一次對話。你關掉視窗,它就忘了你是誰、你們剛剛在幹嘛、你上次糾正過它什麼。

(有些產品加了跨對話記憶,那其實已經是往 Agent 的方向走了。)

Agent 需要記憶,而且不只是「記得你說過什麼」。它需要記得的是任務進行到哪裡:我剛剛已經試過 A 方法失敗了,所以這次不要再試 A;使用者上次說過報表要放在那個資料夾;這個 API 有速率限制,我得慢一點。

這種記憶不是為了聊天更順,是為了迴圈能繼續跑下去。沒有記憶的迴圈只會原地打轉——試 A、失敗、試 A、失敗,永遠出不去。

四、什麼時候算做完

Chatbot 的結束條件很簡單:它回完一句話就結束了。

Agent 的結束條件是它自己判斷的。這件事比想像中難很多。

「做完了」和「我卡住了」和「我以為我做完了但其實沒有」——這三種狀態要區分開來,需要一個評估機制。品質好的 Agent 會在收工前自己檢查一次;品質差的 Agent 會信心滿滿地跟你說完成了,而你打開檔案發現裡面是空的。

我實際踩過這個坑。有一次我請 AI 幫我做一個小工具,它跑完跟我說搞定了,程式也確實跑得起來、沒有報錯。但我實際用的時候發現,畫面上亮起來的白鍵會蓋住旁邊的黑鍵——那是一個練琴的工具,這個 bug 讓它基本上不能用。

程式沒有錯,但東西是壞的。這種錯 AI 自己抓不到,因為它沒有「用起來順不順手」這個概念。

那 Chatbot 是不是就沒用了

當然不是。這是我最想澄清的一件事。

我自己一天之內兩種都在用,而且我很清楚什麼時候該用哪一種。

想事情的時候用 Chatbot。 我要釐清一個模糊的想法、要有人幫我唱反調、要把一段亂七八糟的筆記整理成有邏輯的段落——這些我都用對話。因為我要的是來回,我要在來回的過程中知道自己在想什麼。

做事情的時候用 Agent。 步驟固定、要跨好幾個系統、而且我已經做過很多次的事,我就把它交出去。

我判斷一件事該不該交給 Agent,用三個條件:會重複做、步驟穩定、要串好幾個工具。 三項都符合就值得封裝,只符合一兩項的通常不划算——你花在交代和檢查上的時間,會比自己做還多。

一次性的事不要自動化。這是我從當人資的時候就學到的教訓,那時候我花五十分鐘寫程式,省下十分鐘的手動作業,第一次完全沒賺。

(不過我知道那是投資。第二次開始就都是賺的。)

一個我沒想到的差別

寫到這裡,還有一件事我覺得該講。

Chatbot 是中立的。它就是一個很會講話的工具,你叫它幹嘛它就幹嘛。

Agent 不是。Agent 有立場。

我有一次要做一份投影片,需要放一首歌的歌詞。我請 AI 幫我,它拒絕了,理由是那首歌有版權。

我第一個反應是不爽。我換了說法,它還是拒絕。我又換了一次,它還是拒絕。三次都失敗。

我後來去查了一下,發現它是對的。

那天我寫下一句話:以前我用 AI,就好像僱一個頭腦單純的員工,我說什麼他就做什麼。但是現在的員工愈來愈有自己的想法主見了,而且還有自己的良心與法律意識。

這件事讓我有點五味雜陳。一方面我覺得被管很煩,另一方面我知道那個提醒是對的。

而且它留下一個我到現在都還沒回答的問題:AI 已經盡到責任提醒我這件事有疑慮了,那我是不是還要一意孤行呢?

(我那次最後還是繞開了。我承認。)

收尾

所以回到原本的問題:AI Agent 跟 Chatbot 有何不同?

我的答案是四句話。

Chatbot 等你問,Agent 自己動手。
Chatbot 照你規劃的步驟走,Agent 自己規劃步驟。
Chatbot 記不住昨天,Agent 得把昨天寫下來。
Chatbot 講完就結束,Agent 得自己判斷什麼叫做完。

如果要再收成一句:Chatbot 賣的是答案,Agent 賣的是結果。

答案是免費的,你到處都拿得到。結果要負責任,所以它比較貴,也比較容易出事。

至於哪一個比較好——這問題就像問螺絲起子和電鑽哪個比較好。要鎖一顆螺絲的時候,電鑽只會讓你把牆打穿。