> For the complete documentation index, see [llms.txt](https://weekly-essay.mikey.wang/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://weekly-essay.mikey.wang/zh-hant/2025/w37-hallucinations-and-uncertainty-in-llms.md).

# W37-LLM 的幻覺和不確定性

上週有兩篇重要的文章，分別來自 OpenAI 和 Thinking Machines 的研究成果。前者解釋了大模型為什麼有幻覺，後者驗證了大模型不確定性的根因。有很多反共識的觀點，絕對的增量知識。

第一篇是來自 OpenAI 的[Why language models hallucinate](https://openai.com/index/why-language-models-hallucinate/)。TLDR，可以直接看最後的Conclusions部分。

反常識的結論：提升模型準確率不能完全消除幻覺，因為現實世界很多問題是沒有確定答案的。但幻覺是完全可以避免的，允許大模型棄答，回答“不知道”。現在的大模型幻覺高就是因為評估和度量的選擇性錯誤，訓練不能只看準確率，要同時看錯誤率、棄答率與置信校準度。

結合看到的一篇產品架構設計的文章，[A PM's Guide to AI Agent Architecture: Why Capability Doesn't Equal Adoption](https://substack.com/home/post/p-172725542)，從用戶信任角度給出了架構層面的幻覺控制。一個反直覺的結論是，在不確定處示弱比自信犯錯更能提升採用。當模型不確定時，承認不確定棄權與透明解釋，比自信地胡猜更能建立長期信任。作者強調“信任層”：置信度提示、推理透明、確認/許可模式、優雅邊界與人工升級。

我自己有一個可能不太準確的理解，當前大模型的傾向是“低精確率，高召回率”，要避免幻覺、增加用戶信任，應該讓其向“高精確率，低召回率”的獎勵模型訓練。換句話講，先把“說對”的比例做穩，再擴張“敢說”的範圍。

第二篇是來自Thinking Machines 的[Defeating Nondeterminism in LLM Inference](https://thinkingmachines.ai/blog/defeating-nondeterminism-in-llm-inference/)。這是這家公司年初成立後公開的第一項工作成果，據說Q4會有重大技術成果的發佈，也是硅谷最後一家有廣泛期待的模型公司。

對 LLM 推理的不確定性，主流觀點認為來自 GPU 的多內核的併發(concurrent) 和原子加法(atomic adds)，這篇文章說在典型的 LLM 前向傳播中，根本不存在任何原子加法。不確定性的根本原因是內核對批次(batch)的大小/切分方式不敏感，缺乏批次不變性(kernel batch-invariant)。一旦把關鍵算子（RMSNorm、MatMul、Attention）改造成批次不變，就能讓同一輸入在任意併發負載下得到完全一致的輸出。

Thinking Machines 用 Qwen3 做了實驗驗證。prompt 為 “Tell me about Richard Feynman”，temperature 設置為 0，每次生成 1000 token，共採樣 1000 次。最終 1000 次生成內容完成一致，有一些性能劣化。

對於大模型應用的實際意義，AI 給了我以下答案。

1. 對於微調和多輪對話策略改進來講，這是把“策略改進是否有效”從玄學變成工程的關鍵一步；
2. 零溫（temperature=0）下的答案一致，能極大降低用戶“同問不同答”的不信任感，特別是在問答、搜索重寫、生成推薦語、客服自動回覆、風控解釋等需要“確定表述”的鏈路；
3. 能夠“給出同一輸入即得到同一輸出”的承諾，這在需要“穩定—可解釋—可審計”的金融、醫療、政企等強合規場景，是可追溯與責任界定的基礎。
