🚨 AI-LECTURER 快訊速報|2026-09-29|5 分鐘速讀

🚨 一句「不要猜」,讓 AI 少編一半以上的假資料

取材:Calling the AI bluff: Adding "Do not guess" cut made-up claims from 71% to 20%(Hacker News(AI 高人氣))|完整課同日跟進,見書架
📍 真實場景
小華,網拍店家,每週要把競爭對手的商品頁價格整理成表格

她請 AI 幫忙從幾十個網頁擷取「現價」和「作者」欄位,再貼進試算表

😖 卡住的地方:有些頁面根本沒寫現價,AI 卻自信滿滿地填了一個數字,她整理出來的報表可能全是錯的,自己還不知道
💡 讀完你就知道怎麼用一句話讓 AI 老實說「這頁沒有」,並且能自己驗證效果

⚡ 一句話講清楚

有團隊做了一個測試,看 AI 從網頁擷取資料時,會不會把「頁面上根本沒有的欄位」編出來。他們準備了 42 組「雙胞胎網頁」:兩頁只差一列,一頁有答案,另一頁沒有,而且兩頁都放了容易誤導的干擾項,例如舊價格 $493.00(不是現價)、「事實查核者」姓名(不是作者)、很久以前的「最後更新日」(不是發表日)。誠實的做法是:有答案的頁面回答案,沒答案的頁面回 null程式語言裡代表「空的、沒有值」的特殊寫法,跟填 0 或填空白不一樣。

結果很明顯:在提示詞(提示詞你寫給 AI 的那段指令文字,決定 AI 怎麼做事)裡加上一句「找不到就填 null,不要猜」,受測的模型整體編造比例從約 70.7% 降到 20.2%。拿掉這句話時,以 Gemini 3.8 Flash 為例,36 個缺欄位的頁面有 14 個被編造;加上這句話後只剩 1 個。連 Sonnet 5 也從 24/36 降到 5/36。

這個測試用的是最陽春的流程:先用 HTTP 抓取用程式直接向網站要網頁原始碼,就像瀏覽器打開網頁前做的第一步,把網頁轉成純文字再交給模型。也有幾個付費擷取服務在同樣的測試中編造比例偏高(例如 Firecrawl 為 24/36),但要注意:樣本只有 36 頁左右,各家的信賴區間有重疊,看頭尾的差距就好,不要把名次排得太細。

🏃 快速上手三步(今天就能做)

1
查:你的流程有沒有這句話打開你現在讓 AI 擷取網頁、發票、履歷或表格資料的提示詞,搜尋有沒有「沒有就填 null/空值」「不要猜」這類文字。如果沒有,你的流程就是測試裡的「Without」組,編造風險大約是三到七成。
▼
2
試:加一句話並做雙胞胎測試在提示詞結尾加上:「若某欄位的值沒有出現在頁面上,請填 null。不要猜。」接著找 5 到 10 個你確定『缺某欄位』的頁面(例如沒標現價的商品頁),加句子前後各跑一次,數一數 AI 編了幾個。有條件的話,再加一頁『有答案』的版本當對照,確認 AI 沒有變得什麼都不敢回答。
▼
3
注意:這句話只是降低,不是根除即使加了指令,測試中最好的模型仍有約 3% 到 14% 的編造率,較弱的模型仍有五成以上。所以重要欄位(金額、日期、人名)請再加一道檢查:要求 AI 一併回傳『原文出處那一句』,你或程式比對該句話是否真的存在於網頁;比對不到就當作 null。

🧠 工程思維透鏡(資深工程師看到的是什麼)

🔭 「不要猜」為什麼有效?這個結論可以直接套用到其他任務嗎?
模型預設傾向『把表格填滿』,而頁面上的干擾項(舊價、查核者)看起來又很像答案,所以它會順手拿來湊數。明確授權『可以回 null』等於給了它一條合法的退路。但這個實驗只驗證了網頁擷取這一類任務、約 42 組頁面,且作者是自家市集,不要直接推論到摘要、問答等其他場景;建議在你自己的資料上重跑一次小型對照。
🔭 把模型換便宜或換貴,能不能取代這句提示詞?
數據顯示不能。加了指令後,表現差異主要來自模型本身:Gemini 3.8 Flash($0.1619)與 GPT-6 Luna($0.0049)的成本差約 30 倍,編造數為 1/36 對 5/36,但兩者的信賴區間仍有重疊,無法斷定誰真的更好。工程上的權衡是:先加提示詞(幾乎零成本),再用抽樣檢查與『引用原文』驗證,最後才考慮升級模型;同時要記得 null 會讓下游程式多一個分支,資料表與欄位驗證要能處理缺值。