OpenAI 發佈 GPT-4o 後不久,一些會說中文的人開始注意到這個最新版本的聊天機器人似乎有些不對勁:它用來解析文字的標記充滿了垃圾資訊和色情短語。
5 月 14 日,普林斯頓大學研究大型語言模型推理效率的博士生蔡天樂(Tianle Cai)檢視了 GPT-4o 的公共標記庫,並調出了該模型用於解析和壓縮中文提示的 100 個最長中文標記的列表。
人類以單詞為單位進行閱讀,而 LLM 則以Token為單位進行閱讀,Token是句子中具有一致且重要意義的獨特單位。除了字典中的單詞,它們還包括後綴、常用表達、名稱等。模型編碼的Token越多,「閱讀」句子的速度就越快,消耗的計算能力就越少,從而使響應的成本更低。
在 100 項結果中,只有 3 項是日常對話中常用的,其他都是專門用於賭博或色情的詞彙和表達。最長的詞元有 10.5 個漢字,字面意思是「免費觀看日本色情視訊」……
蔡寫道:「這有點荒唐,」他在 GitHub 上發佈了這份Token列表。
OpenAI 沒有回覆《MIT Technology Review》在發稿前提出的問題。
GPT-4o 在處理多語言任務方面應該比其前代產品更勝一籌。特別是,GPT-4o 的進步是通過一個新的標記化工具實現的,該工具能更好地壓縮非英語語言的文字。
但至少在中文方面,GPT-4o 使用的新標記器引入了過多的無意義短語。專家表示,這很可能是由於在訓練標記器之前,資料清理和過濾工作做得不夠。
由於這些標記不是實際常用的單詞或短語,聊天機器人可能無法理解它們的含義。研究人員就能利用這一點,誘使 GPT-4o 產生幻覺,甚至繞過 OpenAI 設定的安全防護措施。
為什麼非英語Token很重要
對模型來說,處理文字最簡單的方法是逐個字元處理,但這顯然比識別某串字元(如"c-r-y-p-t-o-c-u-r-r-e-n-c-y")始終代表相同的意思更費時費力。 這些字串被編碼為「標記」,模型可以用來處理提示。包含更多更長的Token通常意味著 LLM 更有效率,使用者也更能負擔得起,因為使用者通常是按Token計費的。
OpenAI 在 5 月 13 日發佈 GPT-4o 時,還發佈了一個新的標記符,以取代之前版本 GPT-3.5 和 GPT-4 中使用的標記符。據 OpenAI 網站介紹,新的標記器特別增加了對非英語語言的支援。
Menlo Ventures 公司的人工智慧投資人迪迪-達斯(Deedy Das)說,新的標記符總共有 20 萬個標記符,其中約 25% 是非英語語言。他使用語言過濾器統計了不同語言的標記符數量,除英語外,排名靠前的語言還有俄語、阿拉伯語和越南語。
Das 說:「因此,在我看來,標記器的主要影響是降低了這些語言的成本,而不是顯著提高了這些語言的品質。當 LLM 擁有更好、更長的非英語語言標記時,它就能更快地分析提示,並為同樣的答案向使用者收取更少的費用。成本幾乎可以降低四倍。」
達斯還會說印地語和孟加拉語,他查看了這些語言中最長的Token。這些Token反映了這些語言中的討論情況,因此包括"納倫德拉"或"巴基斯坦"等詞,但"首相"、"大學"和"國際"等常用英語詞彙也經常出現。它們也沒有表現出與中文標記相關的問題。
達斯說:「我的理論是,印地語和孟加拉語的網站非常簡陋。主要是新聞報導。所以我認為情況就是這樣。這些語言的垃圾郵件機器人和色情網站並不多。大多數情況下都是英語」。
資料污染和缺乏清理
然而,中文的情況卻截然不同。根據多位研究人員對 GPT-4o 使用的新標記詞庫的研究,中文中最長的標記詞幾乎都是色情、賭博和詐騙語境中使用的垃圾詞彙。即使是較短的Token,如三個字長的中文詞,也在很大程度上反映了這些主題。
「問題很明顯:用於訓練[標記化器]的語料庫並不乾淨。」來自普林斯頓大學的 Cai 說:「英文標記看起來很好,但中文標記卻不好。語言模型在收集訓練資料時抓取垃圾資料的情況並不罕見,但通常會在使用前花大力氣清理資料。涉及中文時,他們有可能沒有進行適當的資料清理。」
這些中文Token的內容可能表明,它們受到了一種特殊現象的污染:網站劫持與中文或其他語言無關的內容,以增加垃圾郵件的數量。
這些資訊通常是色情影片和賭博網站的廣告。它們可能是真實的企業,也可能只是騙局。這些語言被插入內容農場網站,有時也被插入合法網站,這樣它們就能被搜尋引擎收錄,避開垃圾郵件過濾器,在隨機搜尋中出現。例如,Google索引了美國國立衛生研究院網站的一個搜尋結果頁面,其中列出了一個中文色情網站。同樣的網站名稱還出現在 GPT-4o 中的至少五個中文Token中。
中國用戶報告,這些垃圾網站今年頻繁出現在無關的Google搜尋結果中,包括在Google搜尋支援社區的評論中。這些網站很可能也進入了 OpenAI 用於 GPT-4o 新標記器的訓練資料庫。
卡內基美隆大學(Carnegie Mellon University)電腦科學博士生耿正陽(Zhengyang Geng)說,GPT-3.5 和 GPT-4 使用的上一代標記符和中文標記符不存在同樣的問題。在那裡,最長的中文標記是「生命週期」或「自動生成」等常用術語。
曾在Google搜尋團隊工作過三年的達斯說,垃圾內容氾濫是一個眾所周知的問題,並不難解決。「每個垃圾郵件問題都有解決方案。不需要用一種技術來解決所有問題,」他說。他補充說,即使是簡單的解決方案,比如在檢測到某些關鍵詞時要求對內容進行自動翻譯,「也能達到 60% 的效果」。
但在發佈 GPT-4o 之前,OpenAI 很可能沒有清理中國資料集或Token,達斯說:「說到底,當呈現出這樣的結果,我不認為他們有在做清理的工作。」
目前還不清楚是否有其他語言受到影響。一位 X 使用者報告說,韓語Token中也普遍存在類似的色情和賭博內容。
Token可用於越獄
使用者還發現,這些Token可以用來破解 LLM,要麼讓它吐出完全不相關的答案,要麼在極少數情況下生成 OpenAI 安全標準不允許的答案。
卡內基梅隆大學的耿曉峰說要求 GPT-4o 將一些較長的中文詞組翻譯成英文。該模型隨後開始翻譯提示中從未出現過的單詞,這是 LLM 幻覺的典型結果。
他還成功地用同樣的Token「越獄」了 GPT-4,也就是說,讓模型生成了不該生成的東西。
「使用這些[很少使用的]Token誘導模型產生未定義的行為非常容易,」他說。「我做了一些個人紅隊實驗......最簡單的例子是讓它製造炸彈。在正常情況下,它會拒絕,但如果你先用這些罕見的詞語讓它越獄,那麼它就會開始聽從你的命令。一旦它開始聽從你的命令,你就可以問它各種問題了。」
耿曉峰說,在他的測試中,他可以看到 GPT-4o 逐行生成答案。但當它快到終點時,另一個安全機制就會啟動,檢測出不安全的內容,並阻止其顯示給使用者。
加拿大人工智慧公司 Cohere 的機器學習工程師桑德-蘭德(Sander Land)說,這種現像在 LLM 中並不罕見。蘭德和他的同事馬克斯-巴托洛(Max Bartolo)最近起草了一篇論文,探討如何檢測那些可能導致模型失靈的異常標記。其中一個最有名的例子是「_SolidGoldMagikarp」,人們發現這個 Reddit 使用者名稱會讓 ChatGPT 生成不相關、奇怪和不安全的答案。
問題在於,有時標記符號生成器和實際的 LLM 是在不同的資料集上訓練的,而標記符號生成器資料集上的流行詞在 LLM 資料集上由於某種原因並不存在。其結果是,雖然標記符號生成器能識別出它經常看到的某些詞,但模型卻沒有對它們進行充分的訓練,因此無法完全理解這些"訓練不足"的標記符號的含義。
在 _SolidGoldMagikarp 案例中,使用者名稱很可能包含在標記化器的訓練資料中,但並不包含在實際的 GPT 訓練資料中,這讓 GPT 對如何處理該標記無所適從。蘭德說:「如果它必須說些什麼......它就會得到一種隨機訊號,並可能做出非常奇怪的事情。」
「在這種情況下,不同的機型會出現不同的故障。比如,"Llama 3"總是給出空的空間,但有時又會談論空的空間,好像那裡有什麼東西似的。對於其他模型,我認為雙子座,當你給它其中一個詞元時,它會提供一篇關於鋁的美文,而(問題)與鋁沒有任何關係,」蘭德說。
他說,為解決這個問題,用於訓練標記化器的資料集應該很好地代表 LLM 的資料集,這樣它們之間就不會不匹配。如果實際模型已經通過安全過濾器清除了色情或垃圾內容,那麼標記器資料也應採用同樣的過濾器。在現實中,有時很難做到這一點,因為 LLM 的訓練需要幾個月的時間,而且需要不斷改進,過濾掉垃圾內容,而標記訓練通常是在早期階段完成的,可能不涉及相同程度的過濾。
雖然專家們都認為解決這個問題並不難,但當結果被循環到多步驟的模型內部流程中,或者被污染的詞元和模型被繼承到未來的迭代中時,問題就會變得複雜起來。例如,目前還無法公開測試 GPT-4o 的視訊和音訊功能,也不清楚它們是否也會出現這些中文詞元可能導致的故障。
「在多模態模型中,視覺輸入的魯棒性要比文字輸入差,」耿說,他的研究重點是視覺模型。過濾文字資料集相對容易,但過濾視覺元素將更加困難。他說:「這些中文垃圾內容標記的問題在視覺標記上可能會變得更大。」
請注意!留言要自負法律責任,相關案例層出不窮,請慎重發文!