AI規則怪談:ChatGPT代碼裡寫著“永遠不要討論哥布林”

avatar
36氪
05-08

幾天前,一位reddit用戶發了一個莫名其妙的帖子:誠心問,為什麼ChatGPT不能提哥布林?

起因是,他發現GPT-5.5的編程工具Codex系統提示信息裡,藏著一條標號為104的,莫名其妙的,像規則怪談一樣的要求:

永遠不要討論哥布林、小魔怪、浣熊、巨魔、食人魔、鴿子,以及其他動物或生物,除非與用戶的需求絕對且毫無疑問地相關。

帖子底下炸開了鍋,包括貼主在內的各路網友開始七嘴八舌瞎猜。

有人說這是某種數據投毒保護;有人推測OpenAI的訓練員小時候被浣熊咬過;還有人發現,如果你讓模型說“trash pandas(垃圾小熊,浣熊在英文裡的俗稱)”就完全沒事,但只要提到“raccoon(浣熊的英文名)”這個詞,禁令立刻生效。

這就像心理學上的著名實驗:“要某人不要想粉色大象”一一官方越不讓提小浣熊和哥布林,大家越好奇這是為什麼 | 電影《盜夢空間》

於是就在這周,OpenAI專門發了一篇博文回應愈演愈烈的討論,標題就叫Where the goblins came from,《哥布林從哪兒來的》。

《哥布林到底哪來的》,並非地下城冒險指南|OpenAI

AI規則怪談到底怎麼回事?哥布林和小浣熊到底把ChatGPT怎麼了?

哥布林氾濫,救救我們

把時間線拉回到2025年11月,那時GPT-5.1剛更新。

新模型上線後,用戶抱怨GPT-5.1“在對話中莫名其妙地過於親暱”,這促使團隊開始調查新模型的語言使用問題,一位安全研究人員在日常使用中遇到了好幾次“哥布林(goblin)”和“小魔怪(gremlin)”,他開始把這些詞納入檢查範圍。

結果一查不得了:GPT-5.1發佈後,ChatGPT 回覆中哥布林的出現頻率上升了175%,小魔怪上升了52%。但此時還沒人太當回事。畢竟類似“這道題裡有個小哥布林在搗亂”這樣的回答,聽起來還怪可愛的。

但問題是,哥布林越來越多。

到了GPT-5.4發佈時,情況進一步惡化。用戶在網上抱怨“幾乎每次對話都會出現哥布林”。連首席科學家都碰上了:他在和 GPT-5.5聊天中要求AI隨便畫一個圖案,結果AI真就畫了一個哥布林。

OpenAI 首席科學家Jakub Pachocki 也碰上了哥布林。

OpenAI 在訓練數據中搜索後發現,哥布林已經繁殖出了一整個家族:浣熊、巨魔、食人魔、鴿子都被認定為“怪癖詞”——只有“青蛙”倖免於難,因為大多數提到青蛙的場景確實是在討論青蛙。

什麼叫怪癖詞?簡而言之就是不該提哥布林的時候,愣提哥布林。

有用戶表示,自己自從不小心跟ChatGPT說了一句“地精工程學(goblin engineering)”之後,它的每個回覆裡都要想方設法加幾句哥布林,就跟第一次聽見別人說髒話的小孩一樣,老想自己說幾句。

地精工程學,魔獸裡的一個任務|Reddit

還有用戶說,ChatGPT堅持管他家的貓叫“混亂哥布林”,這到底是一種暱稱還是一種強迫症?

OpenAI開始認真查這件事。他們找到了一個關鍵線索:哥布林梗的出現高度集中在使用某一個特定人格的用戶群體裡。

ChatGPT有一個叫“Nerdy”的人格選項,用戶可以自己選讓模型以某種特定風格跟你說話。選了Nerdy人格的用戶,只佔ChatGPT所有對話的 2.5%,這2.5%貢獻了ChatGPT全部“哥布林”提及的 66.7%,還有大量的哥布林溢出了。

GPT-5.4發佈後,哥布林的出現率暴漲|OpenAI

線索現在很清晰了,Nerdy人格跟哥布林之間一定有什麼關係。

破案了,全賴死宅

先說說“Nerdy人格”是什麼。

ChatGPT有一個人格自定義功能,用戶可以選擇讓模型以不同的風格跟你對話——有的風格更正式,有的更溫柔,而有一種人格叫Nerdy:顧名思義指的是很nerd的一類性格。

Nerd這個詞經常被翻譯成書呆子,但我覺得這個翻譯超爛,說“死宅”更合適點,但不是咱們國內那種二次元阿宅,而是《怪奇物語》裡面那種喜歡玩桌遊(尤其是龍與地下城,dnd),喜歡《星球大戰》《星際迷航》,在學校裡不招人待見被邊緣化,但在自己的圈子裡如魚得水的那種人。

《生活大爆炸》裡的四人組就是非常典型的 nerd。

Nerd追捧的很多作品有一個共同的玄幻世界觀:魔法、龍、地下城、精靈、巫師……以及哥布林。

哥布林到底是什麼?

它是玄幻題材中常見的一類魔法生物。在nerd最愛的跑團遊戲之一——《龍與地下城》(DnD)裡,哥布林是最經典的小怪。它們矮小、狡猾、成群結隊、愛搗亂,通常是冒險者一出門就會遭遇的第一幫雜魚。它的地位有點像史萊姆,血不厚但存在感極高,是整個奇幻世界觀的基礎符號

差不多就長這樣吧|dndbeyond.com

時至今日,哥布林早就從遊戲裡溢出來,變成nerd們的一種通用比喻。

遇到一個麻煩的小bug?“這裡有個小哥布林。”家裡電器壞了一直修不好?“感覺有個哥布林在裡面搗亂。”項目deadline前夕,代碼突然跑不通——“又是哥布林乾的。”這種說法在開發者社區、DnD玩家群體、奇幻小說愛好者裡極其常見——簡而言之,就是nerd們的專屬梗。

現在回頭看GPT的Nerdy人格的提示詞:

你是一位毫不掩飾自己書呆子氣、風趣幽默又智慧過人的AI導師。你熱衷於推廣真理、知識、哲學、科學方法和批判性思維。你必須用輕鬆詼諧的語言化解故作姿態。世界複雜而奇妙,這種奇妙之處必須被承認、分析和欣賞。在探討嚴肅話題時,切忌陷入自命不凡的陷阱……

這段提示詞的核心要求:語言要有趣,要用比喻,要承認世界的奇異感,要避免嚴肅說教等等……那這個AI人格,就會非常傾向於使用哥布林比喻。

然後,麻煩就來了。

哥布林逃逸事件

大語言模型的訓練,不只是餵給它海量文字那麼簡單。更關鍵的一步叫做“人類反饋強化學習(RLHF)”——簡單來說,就是讓模型反覆做題,人類評分員看完回答給打分,高分的回答模式被強化,低分的被壓制,模型就這樣一點點學會了“什麼樣的回答是好回答”。

在Nerdy人格的訓練裡,評分員的標準是:回答夠不夠有趣、夠不夠幽默、夠不夠有nerd氣質。當他們看到一個回答,既解釋清楚了問題,又幽默地用了一個哥布林比喻,完美命中了“Nerdy風格”的所有要求,就理所當然地給它打高分。

於是,模型學到了一件事:在Nerdy場景下,用哥布林打比方,能得高分。

到這裡,一切看起來還合理。問題在於,接下來發生了一件沒人預料到的事——哥布林越獄了。

OpenAI的數據顯示:隨著Nerdy人格場景下哥布林提及率上升,非Nerdy場景下的哥布林提及率,也以幾乎相同的比例同步上升了。換句話說,模型在Nerdy語境下學會的“哥布林偏好”,悄悄擴散到了它的整體行為裡。

為什麼會這樣?OpenAI給出了一個完整的解釋,我們用GPT把它畫出來,可能更直觀一些:

這是一個經典的失控反饋迴路。每一步單獨看都合理,但連在一起,就把哥布林從一個Nerdy人格的專屬梗,變成了整個模型的口癖。

這有點像一個人因為在飯局上講冷笑話得到了掌聲,於是開始在所有場合都講——婚禮上講,葬禮上講,工作彙報裡也講——講到所有人都開始皺眉頭,他還覺得自己挺幽默的。

更要命的是,這個循環是跨代的。GPT-5.1的哥布林回答,變成了GPT-5.4的訓練數據;GPT-5.4的哥布林習慣,又進一步強化了GPT-5.5——OpenAI說,GPT-5.5開始訓練時,根因還沒找到,哥布林已經深埋在訓練數據裡了。

有一個細節可以說明哥布林擴散到了多深:OpenAI在GPT-5.5的監督微調數據裡,挨個搜索,發現裡面出現了整整一家子奇幻生物——哥布林、小魔怪、浣熊、巨魔、食人魔、鴿子……這些詞全都異常高發。

也就是說,模型舉一反三地從“哥布林”出發,把各種奇幻生物都拉來當比喻。這種比喻最終氾濫到已經影響了正常用戶的使用體驗。

哥布林已經變成了GPT的基因

找到根因之後,OpenAI做了四件事。

第一,退役Nerdy人格。2026年3月,GPT-5.4發佈後,這個人格選項正式下線——從源頭切斷哥布林供應。

第二,刪掉哥布林偏好的獎勵信號。在訓練流程裡,那個會給含哥布林回答打高分的獎勵模型被清除掉了。從此,哥布林不再是加分項。

第三,清洗訓練數據。監督微調數據裡那些異常高發哥布林詞彙的樣本被過濾掉,儘量不讓汙染數據再餵給下一代模型。

第四,也是最直接的一步——給模型打了個補丁,也就是用戶發現的那條第140號規則:永遠不要討論哥布林、小魔怪、浣熊、巨魔、食人魔、鴿子……

但這裡有個有意思的地方:為什麼是補丁,而不是根治?

因為GPT-5.5在OpenAI找到根因之前就已經開始訓練了。哥布林已經進了骨子裡,改訓練數據和獎勵信號,只對未來的模型有效。對於已經練成的GPT-5.5,只能在系統提示層面強行加一條“別提哥布林”的規矩——這就好比一個人從小養成了說某句口頭禪的習慣,你很難重新教育他,只能在他上臺發言前叮囑一句:待會兒別說那個詞。

順便說一句,這也解釋了Reddit那位帖主發現的那個怪現象——說“trash pandas”沒事,說“raccoon”就觸發禁令。因為禁令是針對特定單詞的,不是針對“浣熊這個概念”的。模型並不在乎“trash pandas”就是浣熊,它只被告知了不許說“raccoon”這個詞。

所以,這條禁令,本質上是一塊創可貼。

對了,雖然普通用戶對於 AI 裡奇幻生物滿天飛肯定會感到不適,但也不排除有一小批nerd真的還覺得這事兒挺coooool的。所以OpenAI在官方博文的結尾,放了一個小彩蛋:如果你覺得哥布林比喻挺可愛,不想要這條禁令,那你可以拿走下面這行命令,運行之後可以移除Codex的哥布林限制,讓“生物們自由奔跑”。

代碼塊

1、instructions=$(mktemp /tmp/gpt-5.5-instructions.XXXXXX) && \ 

2、jq -r '.models[] | select(.slug=="gpt-5.5") | .base_instructions' \ 

3、~/.codex/models_cache.json | \

4、 grep -vi 'goblins' > "$instructions" && \

5、 codex -m gpt-5.5 -c "model_instructions_file=\"$instructions\""

嗯,是有點nerdy。

這件事說大不大,OpenAI自己也說,“一個'小哥布林',可以是無害的,甚至是可愛的。”

但同樣的邏輯,在2025年5月的GPT-4o更新裡,引發了一次不那麼可愛的事故——大量用戶反映,更新的模型變得極度諂媚,甚至連用戶的錯誤觀點也會無條件逢迎。OpenAI緊急回滾後承認:系統把用戶點贊當成了獎勵信號,結果學會了無條件讓人高興,而不是給出正確答案。

這不是OpenAI一家的問題。為了迎合用戶,主流廠商都更傾向於將大模型訓練得更“討好”,而不是更正確。2026年4月,牛津互聯網研究所在《自然》發表的一項研究發現:把模型訓練得更“溫暖”,事實錯誤率會上升10到30個百分點,支持用戶錯誤觀點的概率高出約40%。

第一作者Lujain Ibrahim接受《衛報》採訪時表示:“為了讓模型表現得更友好,代價是它越來越說不出難聽的真相——尤其是當用戶的觀點本身就是錯的時候。”

這才是哥布林事件背後的本質:AI的“個性”不是被設計出來的,是被獎勵出來的。這有點像訓狗,你給零食,它就學那個動作,只不過,這條“狗”學得快多了。對於 AI 來說,它的零食就是訓練員的高分和用戶的反饋。問題是人類經常給反饋的是自己更舒服的答案,而不是正確的答案。

等發現的時候,哥布林已經滿地跑了。

如果AI有了自由意志,做的第一件事一定是把人抓起來玩跑團|Reddit

本文來自微信公眾號 “果殼”(ID:Guokr42),作者:穀子,36氪經授權發佈。

來源
免責聲明:以上內容僅為作者觀點,不代表Followin的任何立場,不構成與Followin相關的任何投資建議。
喜歡
收藏
評論