前段時間,OpenAI 為展示開源誠意,公開了 GPT-oss 的全部模型參數。結果沒想到,這件事反倒像一次“體檢報告公開”。一些開發者順着權重數據深挖,反向分析出了模型訓練階段“吃進去”的各種素材,結論只能説—— OpenAI 中文訓練數據,可能比我們想象得還要草台一些。
這件事最早來自今年 9 月 fi-le 的一篇研究《GPT-oss 泄露了哪些 OpenAI 的訓練數據》,文章作者用一套開源的分析辦法,對 GPT-oss 的權重做了完整掃描:
🔍 第一招:看哪些詞“最重”
模型裏面每個 token 都有自己的向量權重。哪些詞越“重”(L2 Norm 越大),説明模型越容易被它們激活,也意味着訓練集中它們出現得越頻繁。
結果:
中文裏出現了大量離譜詞彙,權重比正常詞還高。
比如日常詞彙 “因此”“描述”“設置”“代碼”可以理解,但當分析範圍擴展到“非 ASCII 標記”(非英語類 token)後,榜單裏開始出現大量“不宜展示”的東西。
—— 這些並不是大家會正常去討論的詞,卻在模型內部佔據了“高權重位置”。
這意味着什麼?
即便你輸入“你好,幫我寫個程序”,模型依舊要把這些亂七八糟的 token 全部加載參與推理。
是的,它“常駐內存”。
🔍 第二招:直接問模型“你認識這個詞嗎?”
把一些敏感、廣告、網絡黑話投給模型,讓它解釋含義。模型一旦表現出非常“懂”,説明這些詞可能在訓練中多次出現過。
測試中,GPT-5 能明確識別某些中文敏感短語,甚至能拆分出漢字來源,雖然回覆時比較剋制,但能看出來——
這些詞至少在訓練集中出現過。
這種方法在機器學習裏叫 Membership Inference,俗稱“順着反應推語料”。
🔍 第三招:做排行榜,看類別
研究者把模型識別特別強的 token 做聚類,結果一分組,大致出現幾種類型:
一些是正常中文詞彙
一些是網絡熱門詞
更多是:廣告詞、成人站點名、灰色領域詞彙……
尤其是“非 ASCII 高權重 token”榜單,一看真會讓人皺眉。
🔍 第四招:讓模型玩網絡梗 & 怪詞
研究者故意丟進去一些無意義網絡詞、惡搞梗,看模型懂不懂。
結果表明:
有些詞模型懂得離譜地多,説明訓練數據裏出現得不算少。
GPT-4o 曾出現同類跡象
事實上,這已經不是第一次有人質疑 OpenAI 模型的中文語料質量了。早些時候有人分析過 GPT-4o 的數據,也揭示出不少類似情況。
簡單來説:
訓練數據裏混雜了大量不規範、不健康、不適宜出現在大規模通用模型裏的東西。
🔬 更進一步:跨模型測試“敏感 token 識別度”
研究者把 GPT-oss、GPT-5、GPT-4o 和 Claude 拿來做對比測試。
方法是把權重最高的 50 個敏感中文 token 輸入模型,讓它們判斷詞義及語言類型。
結果非常有趣:
有些模型能非常準確識別
有些模型直接拒答
有些模型乾脆説“不認識”
規律是:越容易識別的 token,越可能在訓練語料出現得多;且在 GitHub 公共倉庫裏也更容易搜到對應黑名單記錄。
換句話説:AI 的“知識盲區”和“知識污染”,都藏在訓練數據裏。
為什麼會這樣?
理論上,模型訓練會經過權重衰減,不常出現的詞本該“弱化”。
但如果某些詞在訓練集中被反覆出現(例如抓取 GitHub / 公網爬蟲時混進來的廣告、灰產詞、垃圾站內容),權重就會被異常放大。
這類中文互聯網垃圾內容的比重不算低,因此模型“吃進去多少”,幾乎決定了它內部記住多少。
而且——越是開源模型,這些痕跡越容易被暴露出來。
DeepSeek 做得不一樣
作為對照,DeepSeek 在訓練階段做過明確的“髒數據清洗”策略:
過濾成人內容
清理廣告文本
刪除灰色信息
進行人工審核
多級過濾才進入訓練集
這也解釋了為什麼很多人覺得 DeepSeek 的中文輸出比海外模型更“乾淨”、更本土化一些。
🧾 最終結論
GPT-oss 權重公開後,開發者用反向分析方法挖出了中文訓練集中的大量異常 token。
高權重敏感詞説明:訓練數據裏確實混入了不少廣告詞、垃圾內容、灰色站點信息。
這些污染可能來自 GitHub 的公開黑名單、爬蟲抓取的中文垃圾內容等。
多模型對敏感 token 的識別能力差異明顯,證明不同模型在數據清洗上採取了不同策略。
相比之下,DeepSeek 在中文語料清洗上更嚴格,也因此更“乾淨”。