AI 應用 / 新手概念

同一個問題問兩次,AI 為什麼給出不同答案?:程式與 AI 的差異

理解傳統程式與生成式 AI 的差異,才能知道哪些步驟要追求穩定、哪些步驟可以保留生成的彈性,以及該如何把驗收放進工作流程。

軟體照寫死的規則跑、AI 依情境生成的對比圖卡
兩種思路各自擅長的位置不同,一套工作流程裡通常兩個都會用到

同一句話問 AI 兩次,答案卻不完全一樣,很多人第一個反應是它不可靠。這篇從「答案為什麼會變」講起:先看傳統程式與生成式 AI 決定輸出的方式差在哪,再談為什麼答不準的時候,「關聯性錯位」比「幻覺」更能幫你判斷,最後把工作流程拆成規則層、生成層、驗收層,附四個可以直接套用的拆解問題。

適合誰
  • 同一句話問 AI 兩次,看到不同答案,開始懷疑它到底可不可靠
  • 已經在用 AI,但不確定哪些工作可以放心交出去、哪些不行
  • 正準備把 AI 接進自己的工作流程,想先弄懂它的脾氣
你可以帶走什麼
  • 一個比「幻覺」更能幫你判斷的角度:答不準多半是關聯性錯位
  • 四層驗收的分法,讓「完成」這兩個字有明確定義
  • 規則層、生成層、驗收層三層架構,加四個拆解工作的問題

先從兩個熟悉的情境看起

在試算表裡寫好公式,只要資料、公式與設定沒有改變,重算很多次,結果通常都一樣。這種穩定性符合我們過去使用軟體的經驗:把規則寫清楚,電腦照規則執行。

把同一段會議筆記交給 AI,請它整理成三個重點,第二次的用詞、順序或分段方式可能不同。兩份內容也許都合理,甚至都抓到重點,但字句不一定完全相同。

這個差異的重點不在可靠或不可靠。兩種系統決定輸出的方式本來就不同:傳統程式偏向執行明確規則,生成式 AI 偏向依照當下脈絡產生合理回應。

真正的差別,在於行為由什麼決定

有件事要先講:生成式 AI 本身也是軟體,也要靠工程師寫的程式、伺服器、資料庫與介面才跑得起來。所以這裡要比較的,是兩者的輸出各自由什麼決定。

傳統程式:執行預先寫好的規則

開發者先定義邏輯、條件與步驟。當輸入、資料與環境條件相同,系統設計上追求一致、可重複、可追蹤的結果。

生成式 AI:依輸入脈絡即時生成

模型根據訓練中學到的語言與資料關係,結合當下提示、前文與可用資訊,逐步產生下一個字詞或下一段內容。生成結果可能隨脈絡與設定而變動。

軟體與 AI 兩種運作思路的橫式對比圖卡
差別不在誰比較聰明,在於輸出由什麼決定

我在講 AI 本質的時候,常用一句話概括它的運作方式:詞語關聯性的搜尋、分析、重組。

當你問「1+1 等於多少」,一般語言模型在沒有呼叫計算工具時,不是像計算機一樣直接執行一條算式規則。它比較像是在大量語言關係裡找到:「1+1」後面最常被接上的回答是「等於 2」。所以它不需要真正理解數學意義,也能給出看起來正確的句子。用我以前寫過的講法:它只知道,這樣回答不會被罵。

先講清楚這句話聽起來像在貶低 AI,其實不是。理解它是靠關聯性運作,你才會知道要在哪裡使力。與其期待它每次逐字固定,不如把輸入、範圍、格式與驗收設計清楚。

傳統程式很適合處理有明確規則、固定格式與唯一答案的工作。生成式 AI 能處理文字、圖片與各種格式不一的資料,適合需要整理、轉譯、歸納或產生候選內容的環節。兩種思路各有適用場景,也常常需要放在同一套流程裡配合。

你以為輸入相同,系統看到的可能不同

使用者看到的輸入,常常只有自己剛打出的那一句話。AI 實際收到的內容,還可能包含系統指令、前面的對話、工具傳回的資料、檢索到的文件,以及平台提供的記憶內容。

其中任何一項改變,整體輸入就已經不同。因此,兩次看似相同的提問出現不同答案,部分原因可能來自脈絡不同。

例如你第一次問它整理一段會議紀錄,前面可能已經討論過品牌語氣;第二次在新的對話裡問同一句話,AI 失去了前面的語氣線索,整理方式自然可能不同。

換個角度看輸入對 AI 來說,輸入是當下可用的整體脈絡,不只包含你剛打出的那一句。

答不準的時候,常見原因是關聯性錯位

生成式 AI 產生文字時,會根據目前的內容,判斷接下來哪些字詞比較可能出現,再從候選中選出下一步。這個過程會一路重複,直到形成完整回答。

不同的取樣設定,會讓回答比較集中,或保留較多變化。即使把設定調得保守,雲端服務的模型版本、執行環境與完整脈絡仍可能改變,因此很難把每次回答視為逐字固定的結果。

那 AI 講出一個明顯不對的答案時,是怎麼回事

業界普遍把這個現象叫「AI 幻覺」。這個說法有用,因為它能提醒一般使用者,不要全信 AI 講的話,要主動驗證。當作警語很好。

但如果想更精準地理解 AI,「幻覺」這個比喻會誤導我們。幻覺是大腦明明沒有刺激,卻產生感官經驗,它隱含「主體出問題」這個前提。AI 根本沒有主體,也沒有「應該知道事實」的內建程式。它從頭到尾就只是在找關聯性。

我自己的說法我把這個情況叫做「關聯性錯位」。AI 依照你的提問去找出最有關聯的詞語,重組回給你。有時候它找到的關聯性,跟你想要的不一樣,或者跟客觀事實不一樣。

理解這件事之後,幾件事會變得更好判斷:

  • 有些問題 AI 回答得很穩,是因為那個問題的關聯性很清楚,常見資料裡有大量一致答案。
  • 有些問題 AI 回答得不穩,是因為資料裡缺少清楚線索,或者相近但錯誤的關聯太多。
  • 把問題問清楚、補上背景、給出範例與格式,答案通常會改善,因為你提供了更多關聯線索。

所以有機率性,不等於毫無控制。提示、範例、可選範圍、輸出格式與查核方式,都能提高穩定程度。工作流程需要控制的重點,是輸入邊界與驗收關卡。

流暢度與正確度,要分開驗收

AI 能接續語氣、整理前文,也能依照上下文回應。這些能力讓人感覺它掌握了自己的意思。

但語句流暢,無法直接證明內容正確。模型可能少處理幾筆資料、混淆來源,或用很肯定的語氣說出未經查證的內容。閱讀時覺得順,不等於結果已經通過驗收。

我自己在工作流裡的做法,是把「完成」拆成幾種層次,因為 AI 很容易回報一句「完成」就結束:

機器驗收

檔案是否存在、連結是否可開、圖片大小是否符合規格。

資料複驗

數字、人名、來源、日期。

人工判斷

語氣、策略、是否符合真實意圖。

跨模型審查

重大結論、公開文章、規則更新。

所以我現在會要求 AI 回報時補上驗收證據,講清楚哪些項目是機器驗收、哪些是人工檢查、哪些仍需要我確認。這樣工作流會開始留下可追蹤的證據,而不是只收到一句「完成」。

驗收要具體驗收方式越具體,AI 產出的彈性越容易被安全使用。反過來說,標準寫不清楚,它就會一直交半成品給你。
把驗收變成會自己跑的循環,我另外寫過完整版

一套可用的 AI 工作流程,至少有三層

LAYER 01規則層

交給傳統程式處理明確、可計算、需要重複一致的步驟。例如日期換算、固定欄位、數量計算、格式驗證。

LAYER 02生成層

交給 AI 處理格式不一、需要依脈絡整理或產生內容的工作。例如整理雜亂筆記、摘要文件、分類文字、調整語氣。

LAYER 03驗收層

由程式與人共同檢查輸出,決定通過、重試或退回處理。例如對帳來源、檢查欄位、確認名單、人工核可。

驗收層讓生成結果有明確出口。AI 可以先提出候選內容,程式負責檢查格式與數字,人負責高風險、對外或不可逆的決定。這樣設計,可以避免把所有事情都丟給 AI,也避免只把 AI 當成聊天工具,重點是把它放在適合的位置。

拆工作流程時,先問四個問題

Q1做錯之後,結果能不能復原?

牽涉付款、刪除、公開送出或其他不可逆動作,不論這步最後交給程式或 AI,都要保留人工核可。

Q2答案是否唯一,而且能寫成清楚規則?

可以的話,優先使用傳統程式處理。

Q3輸出能不能用數量、欄位、格式或清單檢查?

能檢查時,可以讓 AI 產生,再用固定的檢查清單核對;有程式的話,也可以自動驗收。

Q4每次進來的資料格式是否都不一樣?

格式變化大時,可以讓 AI 先整理成規則層能處理的結構。

這四題不用一次判斷整份工作。先把工作拆成一個個步驟,再逐步判斷。很多流程最後會同時使用傳統程式、AI 與人工確認。

同一條分界線放到公司裡,我另外寫過一篇

今天可以先做的一件事

挑一件這週重複做過三次以上的工作,把它拆成步驟,再逐一套用上面四個問題。

你可能會發現,有些步驟用固定規則處理更穩;有些步驟適合交給 AI;還有一些步驟需要補上清楚的驗收與人工核可。

挑工作的標準重複發生的工作,才值得花時間鋪路。
路本身長什麼樣、要按什麼順序鋪