
AI 幻覺,最大的問題在於 LLM 「不理解」內容的真實性,因為 LLM 在回答用戶時,是基於「機率」來選擇句子中最有可能出現的文字(Token)。
60 秒看懂本篇文章
AI 幻覺
「AI 幻覺」(AI Hallucination)指的是 AI 在生成內容時,基於訓練數據的限制或機率模型錯誤,生成了看似合理但實際上不正確的資訊。
詞源
隨著生成式 AI 技術的快速發展,AI 模型在缺乏充足上下文時,可能會依據已有的數據模式填補內容,導致虛構或錯誤的回答,這種現象被稱為 AI 幻覺。
可以這樣理解
想像 AI 像是在寫作文,但它的「知識庫」中沒有某個問題的答案時,為了讓文章通順,它可能會憑記憶或模式「編造」出一個合理但錯誤的內容。
AI 幻覺常見類型
- 錯誤事實:如虛構不存在的人物或事件。
- 虛構引用:引用不存在的研究或文獻。
- 語境錯誤:無法正確理解對話中的語境,導致不連貫的回答。
順便學英文
“AI hallucination occurs when a model generates plausible yet incorrect information.”
當 AI 生成看似合理但實際錯誤的資訊時,就稱為 AI 幻覺。
AI 幻覺大概長什麼樣子?
我來列幾個例子:
內容生成錯誤
- 錯誤事實:
- AI 生成的文字可能包含看似合理但完全虛構的事實。
- 例子:聊天機器人回答「台灣有三個活火山,其中一個是阿里山」,但阿里山其實並非火山。
- 虛構引用:
- 模型可能會捏造出不存在的文獻或研究作為其回答的支持。
- 例子:AI 說「根據 2024 年麻省理工學院的研究…」,但該研究並不存在。
偏見與歧視
- 社會偏見:
- AI 模型可能在訓練數據中學習到社會的「偏見」,並在預測或生成內容時呈現出來。
- 例子:求職篩選工具對特定族群或性別給出較低評分,因為訓練數據偏向某些特定背景。
- 文化誤解:
- AI 無法正確處理「不同文化背景」的資訊,導致回答不合適。
- 例子:AI 可能將某個文化習俗解釋為迷信,但這對該文化來說是重要傳統。
語言理解錯誤
- 語境錯誤:
- AI 無法正確理解對話中的語境,導致不連貫或錯誤的回答。
- 例子:用戶問「你知道今天的新聞嗎?」AI 回答「今天是個好天氣」,但沒有講到新聞。
- 短期記憶不足(上下文範圍限制):
- 大型語言模型可能忘記對話中的關鍵細節。
- 例子:用戶先前說過自己住在台北,但 AI 後來誤認為用戶住在高雄。
為什麼會有 AI 幻覺?
一、用機率來計算文字該出現什麼
生成式 AI(LLM) 是基於「數學」來計算出來下一個「最可能」的詞,但 LLM 並不「理解」內容的真實性,而是根據訓練數據中出現的模式來生成回應。
數學算不出真實性
AI 不知道什麼是真的、什麼是假的。它只根據「學過的資料裡,哪些詞通常會一起出現」來決定答案。假設你問 AI:「誰發明了時光機?」AI 在學過的資料裡沒看到這個答案,但 LLM 計算出來:「時光機」跟「科學家」這兩個詞常出現在一起,所以 LLM 可能會編出一個科學家的名字。
資料不完整或不正確
AI 的答案取決於它學過的資料,如果資料裡沒有某個問題的答案,它就會「根據數學機率」算出一個看起來合理的答案,但這可能是錯的,像是「2025年發生了什麼重大事件?」資料裡沒有相關資訊,但它算出「2025」跟「科技」這些詞很常一起出現,於是 LLM 可能說:「某科技公司發明了新東西」,但這是它「算」出來的,而不是它真的知道。
它優先讓句子通順
AI 的目標是讓句子看起來像人類說的話,因此它會選機率最高的詞來保持句子流暢,但不會檢查這些詞是不是正確的組合。就像它可能知道「蘋果」和「樹」很常一起出現,但如果你問:「什麼樹長出藍色的蘋果?」它可能隨機說出「某種樹」,因為這樣看起來比較自然。
機率最高 ≠ 出現最多的詞
所謂的高頻用詞,是指在訓練資料中出現次數最多的詞。但生成式 AI(LLM)在回答問題時,並不是單純依照詞出現的次數來決定答案,而是根據當前的語境,計算哪個詞最適合接下去。因此,某個詞在訓練資料中可能出現很少,但在特定上下文中仍然可能成為機率最高的選擇。

二、訓練數據的局限性
訓練數據的局限性主要發生在內容覆蓋的不足、時間更新的限制、數據偏差上,這些都會導致 LLM 在生成答案時出現幻覺(錯誤答案或虛構內容),即使 LLM 表現得「流暢」且「自信」,這些幻覺依然可能出現,因為模型生成的核心邏輯是基於機率而非真實理解。
如果模型的訓練數據為「某地區的小偷中,有 50% 是博士」,那麼在生成答案時,模型可能會基於這個數據模式,給出類似「這個小偷是一位博士」的回答。
LLM 並不具備查證事實的能力,它的任務只是生成「根據機率分布」看起來合理的文字,而不是提供真實的答案。模型並不「理解」數據,而是基於數據中的模式來計算機率,數據中出現得越頻繁的資訊,生成答案時的權重越高。
三、缺乏真實性驗證機制
LLM 生成模型的架構( Transformer)設計上沒有內建「驗證事實」的機制,它們只負責生成語言,並不會評估內容的真實性或邏輯一致性,所以,才會有了RAG 增強型檢索式系統的出現,檢索系統可以提供外部驗證(就好比是在知識庫中查找答案),但純 LLM 生成模型無法做到這一點。
四、過度最佳化語言流暢性
模型在訓練時被最佳化生成流暢且符合語義的詞,而「不是事實正確」的詞,為了讓回應的詞「看起來專業」或「有說服力」,模型可能會填補空白資訊,進一步讓幻覺更為嚴重。
五、人類提示的影響
模糊或誘導性提問,如果用戶的問題本身有誤(像是假設某些不存在的事實),模型可能會迎合這種錯誤前提,例如:問「1980年火星人入侵地球時的領導者是誰?」模型可能會基於語言模式「編造」一個名字,而不是指出問題的假設錯誤。
六、長記憶鏈條中的誤差累積
在處理長文本生成時,模型需要記住上下文,這可能導致記憶錯誤或邏輯混亂,進而生成錯誤資訊。
就好比玩 「傳話遊戲」,第一個人講了一句話,第二個人聽到後再傳給下一個人,結果最後一個人說出來的話,常常跟最開始的完全不一樣,這就是所謂的 「誤差累積」。
在 AI 的世界裡,當它回答很長的對話或記住很多事情時,也可能會發生這種問題,讓原本正確的東西慢慢變得錯誤。
所以,當 AI 在對話時,會把「最近」的回答當成新事實,然後再根據這個「新事實」來回答接下來的問題,如果它一開始記錯了,那麼這個錯誤就會一直被帶下去,越來越嚴重。
關於 AI 幻覺,再講深入一點
AI 生成錯誤資訊的原因有很多,其中一個關鍵因素是「稀有 token」的影響(我先假設你知道什麼是token),當 AI 遇到較罕見的詞或概念時,就容易產生錯誤,讓我們來拆解這個問題。
罕見詞(稀有 token)會增加 AI 的不確定性
AI 是透過數學計算機率選擇下一個詞(token)來生成內容,但如果某個詞在訓練數據中出現的次數很少,模型就難以準確理解它的上下文關係,例如:
- 常見詞:如「The cat is on the mat.」,這個模型熟悉,生成正確。
- 罕見詞:如「Quantum cat paradox in non-Euclidean geometry.」,這種句型模型缺乏經驗,容易產生錯誤。
當 AI 遇到不熟悉的情境時,可能會填補空白,創造出看似合理但不正確的內容。
語言模型的長尾效應
人類的語言詞彙分布情況遵循 Zipf 定律,AI 會學習,然後試著找出哪些詞最常出現,哪些詞很少見。這就像我們學語言時,會先學「你好」、「謝謝」這些常用詞,而不是先學「光合作用」這種比較少用的詞,但問題來了:
很少見的詞,AI 不太懂
如果 AI 在學習時幾乎沒看過某個詞,它就不知道這個詞該怎麼用。當它需要用這個詞時,可能會「亂猜」,結果就變成錯誤的答案,例如,AI 常常讀到「貓在地毯上」(The cat is on the mat),但它很少看到「量子貓悖論」(Quantum cat paradox),所以當它碰到這種少見詞時,可能會自己亂腦補。
AI 可能誤以為罕見詞很重要
如果 AI 在學習時不小心看到某些奇怪的詞,卻沒有足夠的例子讓它知道這些詞應該怎麼用,它有時候會「過度重視」這些詞,導致回答變得奇怪、不自然,像是 AI 學過很多次「宇宙爆炸理論」,但只學過幾次「太陽東升西落」,它可能會誤以為「宇宙爆炸理論」比「太陽東升西落」還常見,結果就容易講得不太對勁。
這就是為什麼 AI 有時候會說出聽起來合理,但其實不正確的話。因為它學得不夠多,或者學得不夠好,所以在碰到一些少見詞時,就可能出錯了!
就不要用罕見詞(稀有 token)就好了啊?
若不要使用這些稀有 token,實際上操作起來有些困難,因為這樣的選擇會導致一些副作用,甚至限制模型的功能。
稀有 token 是語言多樣性的一部分
- 語言自然性:
- 如果完全排除稀有 token,生成內容會變得非常單調,缺乏多樣性和語言表達的豐富性。
- 「科技」、「醫療」或「法律」等專業領域本身依賴大量稀有 token,刪除這些 token 會導致模型無法生成專業領域的答案。
- 真實需求:
- 某些問題的答案本身需要使用稀有 token,例如地名、人名或專業術語,如果直接刪除,模型可能無法正確回答問題。
平衡常見與稀有的 token 挑戰
AI 在回答問題時,如果只用常見的詞(高頻 token),就像一個人講話很普通、不會用特別的詞,但如果它完全不用冷門詞(低頻 token),又可能答不出比較專業或特別的內容。
- 如果 AI 只會用常見詞,會發生什麼事?
- AI 可能回答得很籠統、不準確。
- 例如,當你問:「量子計算的最新技術是什麼?」,AI 可能只會說:「量子計算是一種很厲害的科技」,但沒有說出真正的新技術名稱,因為那些詞比較少見,它可能不敢用。
- 如果 AI 不用稀有詞,會發生什麼事?
- 它的回答會變得很普通,沒有創意,沒辦法深入解釋事情。
- 例如,當你問 AI:「太空探索的未來計畫有哪些?」,如果它不用稀有詞,就可能只會說:「我們會去更多地方探索」,但不會說出真正的計畫名稱,比如「阿提米絲登月計畫」。
稀有 token 代表知識的深度
有些詞很少見,因為它們跟專業知識或特別的領域有關。如果我們讓 AI 完全不使用這些詞,它就沒辦法回答一些難的問題,只能說出很簡單的內容。
舉個例子:「黑洞事件視界的熱力學性質是什麼?」
- 如果 AI 不用稀有詞 → 它可能只會回答:「黑洞有重力。」
- 如果 AI 可以用稀有詞 → 它就能說:「黑洞會發出霍金輻射,還有熵的變化。」
所以,有時候這些冷門詞雖然不常見,卻能讓 AI 說出更專業、更深入的內容!
更好的解決方式:控制而非禁止
限制 AI 亂選字
AI 在回答問題時,會根據機率選擇下一個字(Token)。我們可以告訴它,只選比較常見的詞,這樣能降低它選擇罕見詞的機率,可以用 Top-k 和 Top-p方式,這就好像是在餐廳點菜的方式:
Top-k(固定菜單選擇)
你去一家餐廳,老闆說:「我們的推薦菜單只給你 3 道菜,你只能在這 3 道菜裡挑選!」
- 牛排(人氣超高)
- 炸雞(很多人喜歡)
- 炒青菜(還不錯)
- 刺身(冷門,幾乎沒人點)
老闆只推薦前 3 名菜品,因為固定只能提供 3 道菜,所以我們刺身直接不考慮。
Top-p(人氣篩選)
你去另一家餐廳,老闆說:「我們推薦菜的原則是要達到 90% 顧客滿意度,才會列入菜單。」
- 牛排(50% )
- 炸雞(30%)
- 炒青菜(10%)
- 章魚刺身(5%)
- 豬血糕(5%)
計算了受歡迎度:牛排(50%) + 炸雞(30%) + 炒青菜(10%) = 90%,這樣已經達到 90% 滿意度,所以這 3 道菜列入推薦菜單。刺身和豬血糕被排除。
Top-k 像是餐廳說「我們只能推薦 3 道菜」,固定名額。Top-p 根據受歡迎度,選擇達到滿意門檻的菜品,靈活調整推薦內容,這樣 AI 還是能用稀有詞,但不會隨便亂用。
強化上下文理解
- 上下文微調:
- 如果模型有更多相關的上下文資訊(例如 RAG 輔助),它能更準確地選擇何時使用稀有 token。
加權處理
- 提升低頻 token 的學習權重:
- 在訓練階段對稀有 token 提升學習權重,讓模型在生成時對它們的使用更為準確。
後處理驗證
若檢測到稀有 token,可以檢索相關資訊來確認它的正確性,或者要求用戶進一步提供上下文。
如何減少 AI 幻覺?
增強數據品質
- 清理它學習的內容,把錯的資訊刪掉,避免它學到不對的知識,但但這個很費工。
- AI 看到「貓」這個詞的次數很多,但如果它只看過「恐龍 DNA」幾次,它可能會亂猜。所以我們要讓它多學一些這類少見的詞,這樣它在回答問題時就不會亂說話了!
引入外部知識(RAG 檢索)
有時候,AI 會自己「猜答案」,但如果它能先查資料,就能減少猜錯的機會。這種方法叫 RAG(檢索增強生成,Retrieval-Augmented Generation)。
- 怎麼做呢?
- 先查資料 → AI 會先去找可靠的資訊,例如百科全書或新聞網站。
- 再回答問題 → 它根據找到的資料來寫答案,而不是自己亂用罕見詞。
- 為什麼這樣更好?
- 如果不查資料:AI 可能會亂編一個聽起來很合理但錯誤的答案。
- 如果先查資料:AI 可以從正確的地方找資訊,回答更準確,也更值得信賴。
增加後處理驗證
有時候,AI 會不太確定自己說的話對不對,如果我們不讓它檢查,它可能會隨便亂講,結果就會出錯,所以,我們可以加一些「檢查機制」來幫助 AI :
- 當 AI 不確定時,讓它說「我不知道」
- 如果 AI 不確定答案,而不是亂回,它可以直接說:「這個問題我不確定」,這樣比亂講一個錯誤答案好很多!
- 讓 AI 自己再去查資料
- AI 先回答問題後,還可以自己去查一查資料,看看答案到底對不對,然後再決定要不要修正。
生成式 AI 模型的幻覺問題,根源在於它的設計目的是生成語言,而非理解或驗證事實,透過結合檢索技術、改進品質和提升用戶互動品質,可以大幅降低這種現象的發生率。
參考文章與文獻
常見問題
為什麼 AI 會搞錯上下文?它不是有「記憶」功能嗎?
AI 並不像人類一樣有真正的「記憶」。它能記住的只是當前對話的「上下文」,而這個記憶範圍是有限的(例如 4,096 個 token)。當對話變得很長或過於複雜,超過範圍的部分就會被遺忘,這也是為什麼 AI 有時候會搞錯前面提到的關鍵細節。
既然 AI 無法自己查證,那我要怎麼信任它的答案?
AI 回答的可信度取決於它訓練過的數據。因此,如果你問的問題在訓練數據中有完整的答案,AI 通常能給出不錯的回應。相反地,如果問題是冷門知識,AI 就容易出錯。最好的方法是搭配像 RAG(檢索增強生成)這類技術,讓 AI 先查資料再回答,或是自行查證 AI 的回覆。
AI 為什麼會編造錯誤的內容?難道它的設計目標不是要給正確答案嗎?
其實,AI 的設計目標不是「提供正確答案」,而是「生成看起來合理、流暢的文字」。
AI 是根據訓練數據中的詞和上下文,依照機率計算出下一個最有可能的詞。但問題是,它沒有「真實性驗證」的能力,只能靠數據中學到的模式來回應。當缺少相關知識時,它可能會填補空白,編造出「看起來像真的」內容。
RAG 檢索輔助生成(Retrieval-Augmented Generation)真的能減少錯誤嗎?
它的原理是讓 AI 在生成回答之前,先從外部資料庫中檢索相關內容,提供更具參考性的資訊來源,這樣,AI 就能基於最新、可信的資料生成答案,而不再只是「靠記憶亂回」。
AI 在什麼情況下比人類更容易出錯?
AI 是基於機率和數據模式來回答的,當它碰到沒學過的內容時,可能會編造出答案。相對來說,人類在遇到類似情況時,通常會說「我不知道」,不會隨便亂答,因此在這方面,AI 需要改進。
能不能只靠增加訓練數據來解決 AI 幻覺問題?
增加數據確實能提高 AI 對特定內容的準確性,但要完全避免幻覺,還需要配合其他技術,例如 RAG 和後處理驗證,才能在不同情境下都保持較好的答案水準。
要深入了解 AI 產品經理的核心技能,請參考我的學習方法:AI 產品經理,我的學習之路