OpenAI于5月13日(周一)发布GPT-4o后不久,一些会说中文的人开始注意到这个最新版本的聊天机器人似乎有些不对劲:它用来解析文本的标记充满了垃圾信息和色情短语。5月14日,普林斯顿大学研究大型语言模型推理效率的博士生蔡天乐(TianleCai)访问了GPT-4o的公共标记库,并调出了该模型用于解析和压缩中文提示的100个最长中文标记的列表。
访问:
人类以单词为单位进行阅读,而LLM则以词元为单位进行阅读,词元是句子中具有一致且重要意义的独特单位。除了字典中的单词,它们还包括后缀、常用表达、名称等。模型编码的词元越多,"阅读"句子的速度就越快,消耗的计算能力就越少,从而使响应的成本更低。
在100项结果中,只有3项是日常对话中常用的,其他都是专门用于赌博或色情的词汇和表达。最长的词元有10.5个汉字,字面意思是"免费观看日本色情视频"……
蔡写道:"这有点荒唐,"他在GitHub上发布了词元列表。
OpenAI没有回复《MITTechnologyReview》在发稿前提出的问题。
GPT-4o在处理多语言任务方面应该比其前代产品更胜一筹。特别是,GPT-4o的进步是通过一个新的标记化工具实现的,该工具能更好地压缩非英语语言的文本。
但至少在中文方面,GPT-4o使用的新标记器引入了过多的无意义短语。专家表示,这很可能是由于在训练标记器之前,数据清理和过滤工作做得不够。
由于这些标记不是实际常用的单词或短语,聊天机器人可能无法理解它们的含义。研究人员就能利用这一点,诱使GPT-4o产生幻觉,甚至绕过OpenAI设置的安全防护措施。
为什么非英语词元很重要
对模型来说,处理文本最简单的方法是逐个字符处理,但这显然比识别某串字符(如"c-r-y-p-t-o-c-u-r-r-e-n-c-y")始终代表相同的意思更费时费力。这些字符串被编码为"标记",模型可以用来处理提示。包含更多更长的词元通常意味着LLM更有效率,用户也更能负担得起,因为用户通常是按词元计费的。
它们承诺比Siri或Alexa等工具更胜一筹。
OpenAI在5月13日发布GPT-4o时,还发布了一个新的标记符,以取代之前版本GPT-3.5和GPT-4中使用的标记符。据OpenAI网站介绍,新的标记器特别增加了对非英语语言的支持。
MenloVentures公司的人工智能投资人迪迪-达斯(DeedyDas)说,新的标记符总共有20万个标记符,其中约25%是非英语语言。他使用语言过滤器统计了不同语言的标记符数量,除英语外,排名靠前的语言还有俄语、阿拉伯语和越南语。
Das说:"因此,在我看来,标记器的主要影响是降低了这些语言的成本,而不是显著提高了这些语言的质量。当LLM拥有更好、更长的非英语语言标记时,它就能更快地分析提示,并为同样的答案向用户收取更少的费用。成本几乎可以降低四倍。"
达斯还会说印地语和孟加拉语,他查看了这些语言中最长的词元。这些词元反映了这些语言中的讨论情况,因此包括"纳伦德拉"或"巴基斯坦"等词,但"首相"、"大学"和"国际"等常用英语词汇也经常出现。它们也没有表现出与中文标记相关的问题。
达斯说:"我的理论是,印地语和孟加拉语的网站非常简陋。主要是新闻报道。所以我认为情况就是这样。这些语言的垃圾邮件机器人和色情网站并不多。大多数情况下都是英语"。
数据污染和缺乏清理
然而,中文的情况却截然不同。根据多位研究人员对GPT-4o使用的新标记词库的研究,中文中最长的标记词几乎都是色情、赌博和诈骗语境中使用的垃圾词汇。即使是较短的词元,如三个字长的中文词,也在很大程度上反映了这些主题。
"问题很明显:用于训练[标记化器]的语料库并不干净。"来自普林斯顿大学的Cai说:"英文标记看起来很好,但中文标记却不好。语言模型在收集训练数据时抓取垃圾数据的情况并不罕见,但通常会在使用前花大力气清理数据。涉及中文时,他们有可能没有进行适当的数据清理。"
这些中文词元的内容可能表明,它们受到了一种特殊现象的污染:网站劫持与中文或其他语言无关的内容,以增加垃圾邮件的数量。
这些信息通常是色情视频和赌博网站的广告。它们可能是真实的企业,也可能只是骗局。这些语言被插入内容农场网站,有时也被插入合法网站,这样它们就能被搜索引擎收录,避开垃圾邮件过滤器,在随机搜索中出现。例如,Google索引了美国国立卫生研究院网站的一个搜索结果页面,其中列出了一个中文色情网站。同样的网站名称还出现在GPT-4o中的至少五个中文词元中。
中国用户报告称,这些垃圾网站今年频繁出现在无关的Google搜索结果中,包括在Google搜索支持社区的评论中。这些网站很可能也进入了OpenAI用于GPT-4o新标记器的训练数据库。
卡内基梅隆大学(CarnegieMellonUniversity)计算机科学博士生耿正阳(ZhengyangGeng)说,GPT-3.5和GPT-4使用的上一代标记符和中文标记符不存在同样的问题。在那里,最长的中文标记是"生命周期"或"自动生成"等常用术语。
曾在Google搜索团队工作过三年的达斯说,垃圾内容泛滥是一个众所周知的问题,并不难解决。"每个垃圾邮件问题都有解决方案。不需要用一种技术来解决所有问题,"他说。他补充说,即使是简单的解决方案,比如在检测到某些关键词时要求对内容进行自动翻译,"也能达到60%的效果"。
但在发布GPT-4o之前,OpenAI很可能没有清理中国数据集或词元,达斯说:"说到底,我只是不认为他们在这种情况下做了工作。"
目前还不清楚是否有其他语言受到影响。一位X用户报告说,韩语词元中也普遍存在类似的色情和赌博内容。
词元可用于越狱
用户还发现,这些词元可以用来破解LLM,要么让它吐出完全不相关的答案,要么在极少数情况下生成OpenAI安全标准不允许的答案。
卡内基梅隆大学的耿晓峰说要求GPT-4o将一些较长的中文词组翻译成英文。该模型随后开始翻译提示中从未出现过的单词,这是LLM幻觉的典型结果。
他还成功地用同样的词元"越狱"了GPT-4,也就是说,让模型生成了不该生成的东西。"使用这些[很少使用的]词元诱导模型产生未定义的行为非常容易,"他说。"我做了一些个人红队实验......最简单的例子是让它制造炸弹。在正常情况下,它会拒绝,但如果你先用这些罕见的词语让它越狱,那么它就会开始听从你的命令。一旦它开始听从你的命令,你就可以问它各种问题了。"
耿晓峰说,在他的测试中,他可以看到GPT-4o逐行生成答案。但当它快到终点时,另一个安全机制就会启动,检测出不安全的内容,并阻止其显示给用户。
加拿大人工智能公司Cohere的机器学习工程师桑德-兰德(SanderLand)说,这种现象在LLM中并不罕见。兰德和他的同事马克斯-巴托洛(MaxBartolo)最近起草了一篇论文,探讨如何检测那些可能导致模型失灵的异常标记。其中一个最有名的例子是"_SolidGoldMagikarp",人们发现这个Reddit用户名会让ChatGPT生成不相关、奇怪和不安全的答案。
问题在于,有时标记符号生成器和实际的LLM是在不同的数据集上训练的,而标记符号生成器数据集上的流行词在LLM数据集上由于某种原因并不存在。其结果是,虽然标记符号生成器能识别出它经常看到的某些词,但模型却没有对它们进行充分的训练,因此无法完全理解这些"训练不足"的标记符号的含义。在_SolidGoldMagikarp案例中,用户名很可能包含在标记化器的训练数据中,但并不包含在实际的GPT训练数据中,这让GPT对如何处理该标记无所适从。"兰德说:"如果它必须说些什么......它就会得到一种随机信号,并可能做出非常奇怪的事情。
在这种情况下,不同的机型会出现不同的故障。比如,"Llama3"总是给出空的空间,但有时又会谈论空的空间,好像那里有什么东西似的。对于其他模型,我认为双子座,当你给它其中一个词元时,它会提供一篇关于铝的美文,而(问题)与铝没有任何关系,"兰德说。
他说,为了解决这个问题,用于训练标记化器的数据集应该很好地代表LLM的数据集,这样它们之间就不会不匹配。如果实际模型已经通过安全过滤器清除了色情或垃圾内容,那么标记器数据也应采用同样的过滤器。在现实中,有时很难做到这一点,因为LLM的训练需要几个月的时间,而且需要不断改进,过滤掉垃圾内容,而标记训练通常是在早期阶段完成的,可能不涉及相同程度的过滤。
虽然专家们都认为解决这个问题并不难,但当结果被循环到多步骤的模型内部流程中,或者被污染的词元和模型被继承到未来的迭代中时,问题就会变得复杂起来。例如,目前还无法公开测试GPT-4o的视频和音频功能,也不清楚它们是否也会出现这些中文词元可能导致的故障。
"在多模态模型中,视觉输入的鲁棒性要比文本输入差,"耿说,他的研究重点是视觉模型。过滤文本数据集相对容易,但过滤视觉元素将更加困难。"他说:"这些中文垃圾内容标记的问题在视觉标记上可能会变得更大。"
【查看完整讨论话题】 | 【用户登录】 | 【用户注册】