开源领域的领头羊 Llama3 曾在几乎所有基准测试中都超越了 GPT-3.5,甚至在某些方面超越了 GPT-4。这次就要闷声「吃瘪」了吗?
在 GPT-4o 出世后,Llama3 的风头被狠狠盖过。GPT-4o 在图像识别、语音理解上卓越的性能展现了它强大多模态能力。开源领域的领头羊 Llama3 曾在几乎所有基准测试中都超越了 GPT-3.5,甚至在某些方面超越了 GPT-4。这次就要闷声「吃瘪」了吗?
5 月 29 日,一个来自斯坦福的研究团队发布了一个能够「改变现状」的产品:Llama3-V,号称只要 500 美元(约为人民币 3650 元),就能基于 Llama3 训练出一个超强的多模态模型,效果与 GPT4-V、Gemini Ultra 、 Claude Opus 多模态性能相当,但模型小 100 倍。
Github 项目链接:https://github.com/mustafaaljadery/llama3v(已删库)
HuggingFace 项目链接:https://huggingface.co/mustafaaljadery/llama3v(已删库)
用这么少的成本,创造出了如此惊艳的成果,Llama3-V 在推特上迅速爆火,浏览量突破 30 万,转发超过 300 次,还冲上了「 HuggingFace Trending 」Top 5。
但是没发布两天,Llama3-V 就遭遇了重重质疑。有人指出,Llama3-V 项目中有一大部分似乎窃取了清华大学自然语言处理实验室与面壁智能合作开发的多模态模型 MiniCPM-Llama3-V 2.5。
MiniCPM-V 是面向图文理解的端侧多模态大模型系列。MiniCPM-Llama3-V 2.5 是该系列的最新版本。其多模态综合性能超越 GPT-4V-1106、Gemini Pro、Claude 3、Qwen-VL-Max 等商用闭源模型。OCR 能力及指令跟随能力进一步提升,并支持超过 30 种语言的多模态交互。这样的优秀性能,不仅让 MiniCPM-Llama3-V 2.5 成为受大家推崇的模型,或许也成为了 Llama3-V 的「模仿」对象。
项目地址:https://github.com/OpenBMB/MiniCPM-V/blob/main/README_zh.md
可疑的作者答复
HuggingFace 用户 JosephusCheung 在项目的评论区中提出问题,Llama3-V 是否在未提及的情况下使用 openbmb/MiniCPM-Llama3-V-2.5 进行了训练。而作者回复表明,Llama3-V 使用了 MiniCPM-Llama3-V-2.5 的预训练 tokenizer,并且是在它发布前就开始了这项工作。这样的解释明显出现了时间错位,加重了大家的怀疑。
细扒其中猫腻
此外,还有一位名为 Magic Yang 的网友也产生了质疑,他对于这两个模型的相似性也有着更深的洞察。
他首先在 Llama3-V 的 GitHub 项目 Issue 中发布了他的疑问,没想到 Llama3-V 的作者们很快就删除了质疑帖。
在这个 Issue 中,他首先提出,Llama3-V 与 MiniCPM- Llama3-V 2.5 具有相同的模型结构和配置文件,只是变量名不同。Llama3-V 的代码几乎完全照抄 MiniCPM-Llama3-V 2.5,只是进行了一些格式上的修改,包括但不限于分割图像、tokenizer、重采样器和数据加载部分。
Llama3-V 的作者立马回复,称 Llama3-V 在架构上参考的是 LLaVA-UHD,并列出了在 ViT 和 LLM 选择上与 Mini CPM-Llama3-V 2.5 的差异。
但 Magic Yang 发现,相比 LLaVA-UHD 所用的方法,Llama3-V 与 MiniCPM-Llama3-V 2.5 可谓是一模一样。特别是 Llama3-V 使用了与 MiniCPM-Llama3-V 2.5 相同的,连 MiniCPM-Llama3-V 2.5 新定义的特殊符号都「抄」上了。
于是,他向作者提问,为什么 Llama3-V 在 MiniCPM-Llama3-V2.5 项目发布之前,就未卜先知似的拿到了其 tokenizer?这似乎算是追问了作者对 JosephusCheung 的回答。
Llama3-V 作者回答称,他参考了 MiniCPM-V-2 的 tokenizer(https://huggingface.co/openbmb/MinicPM-V-2/blob/main/tokenizer.jsonBefore),MiniCPM-Llama3-V2.5 采用了新的 tokenizer 和原来版本中的特殊符号,因此 Llama3-V 的代码中保留了这个符号,但 Llama3-V 与 MiniCPM-Llama3-V2.5 是完全不同。
但事实是,MiniCPM-V-2 的 tokenizer 与 MinicPM-Llama3-V2.5 完全不同,在 Hugging Face 里是两个文件,文件大小也完全不同,也不包含 Llama3-V 所用到的与 Llama 3 有关的 tokenizer。
Magic Yang 还发现了 Llama3-V 的作者在 Hugging Face 上传项目时,直接导入了 MiniCPM-Llama3-V 2.5 的代码,后来才把一些文件里的名称替换为 Llama3-V。
于是,Llama3-V 的作者的作者再次回复,称 Magic Yang 的指控大错特错。首先,想要运行 HuggingFace Transformer,需要给模型写配置文件,但是他们恰好发现 MiniCPM 的配置能用,因此,他们使用了与 MiniCPM 相同的配置。其二,Llama3-V 的模型架构 SigLIP 的灵感来源于 Id fics ,作者之前也提到,Llama3-V 模型架构参考的 LLaVA-UHD 同样如此,并且在视觉代码方面,他们借鉴了 Id fics ,并非照搬 MiniCPM。
更令人惊讶的是, Magic Yang 发现 Llama3-V 项目的作者似乎并不理解他们自己的代码,或许也不明白搬来的 MiniCPM-Llama3-V 2.5 架构中的细节。
感知器重采样器(Perceiver Resampler)使用的是单层交叉注意力,而非双层自注意力。然而,下图中的 Llama3-V 技术博客中的描述明显存在误解。
此外,SigLIP 的 Sigmoid 激活功能并不用于训练多模态大语言模型,而是仅在 SigLIP 的预训练过程中使用。看来,作者对于自己的代码理解还是有很大偏差的。
Llama3-V 的技术博客
Llama3-V 的代码
对于清华 NLP 实验室和面壁智能团队特别采集和标注,从未对外公开的专有数据,Llama3-V 的表现也非常出色。「清华简」是一种非常特殊且罕见的中国战国时期的古文字,而美国模型 Llama3-V 不仅认识中国古文字,在认错字的时候,也和 MiniCPM-Llama3-V 2.5 一模一样。
有网友用 1000 张竹简图像对同类模型进行了测试,正常情况下,每两个模型之间的重叠应该为 0,而 Llama3-V 和 MiniCPM-Llama3-V 2.5 之间的重叠高达 87%。识别错误的结果 Llama3-V 和 MiniCPM-Llama3-V 2.5 也有高达 182 个重合。
删库?也不管用
在重重质疑之后,Llama3-V 的作者行动了。此前宣传 Llama3-V 的推特内容流已不可见。
他还隐藏了 HuggingFace 的仓库。Magic Yang 再次发难,问 Llama3-V 的作者为何在 HuggingFace 上将模型设为私密?
作者称,设为私密是为了修复 Llama3-V 的推理功能,MiniCPM 的配置与 Llama3-V 不兼容,当时 HuggingFace Transformers 无法正确地加载模型,为了避免下载模型的用户运行失败,他将进行一些修复。
同样地,Llama3-V 的 GitHub 项目主页也显示为「404」。
GitHub 地址:https://github.com/mustafaaljadery/llama3v
这些举动显然是为了应对社区的强烈反应和对模型来源合法性的质疑。但这样的逃避似乎并不管用。即使 Magic Yang 与对话已经随着项目页面 404 而隐藏。但 Magic Yang 已将对话截图评论在了 MiniCPM-V 的 GitHub 页面。
据网友反馈,当运行 Llama3-V 时,作者提供的代码无法与 HuggingFace 上的 checkpoint 兼容。然而,当把 Llama3-V 模型权重中的变量名更改为 MiniCPM-Llama3-V 2.5 后,就能成功运行。
如果在 MiniCPM-Llama3-V 2.5 的 checkpoint 上添加一个简单的高斯噪声,就会得到一个在各个测试集上的表现都与 Llama3-V 极为相似的模型。
有网友上传了 Llama3-V 删库前的检查点,大家可以自行测试验证。
检查点链接:https://twitter.com/zhanga6/status/1797293207338041719
有人认为,这是关乎道德、诚信与声誉的问题。如果抄袭得到验证,斯坦福大学应该介入调查。
图源:X@AvikonHadoop
在国内外舆情发酵了两天后,作者之一站出来道歉,称「抄袭」源于对队友 Mustafa 的盲信。
你怎么看呢?