写点什么

知名 UP 主被锤用开源项目“伪装原创”,原作者越南 AI 工程师愤怒维权,网友:把收益赔给他!

  • 2024-11-21
    北京
  • 本文字数:3752 字

    阅读完需:约 12 分钟

大小:1.70M时长:09:53
知名 UP 主被锤用开源项目“伪装原创”,原作者越南 AI 工程师愤怒维权,网友:把收益赔给他!

整理 | 华卫


违反开源许可的事情,在技术圈内屡见不鲜,但这种行为一旦被揭露,往往会引发轩然大波。


近日,拥有超 1200 万粉丝的 B 站知名 UP 主“老师好我叫何同学”,因一条名为《我用 36 万行备忘录做了个动画…》的最新视频中,将基于某开源项目改动的程序称作其“专门开发的软件”,在各大平台引发热议并冲上了热搜榜。尽管该项目采用了最为宽松的 MIT 开源协议,但未主动注明作者信息等举动还是招致网友的诸多吐槽。不仅何同学的视频评论区,就连被涉及开源项目在 GitHub 的 Issue 区,都已经“沦陷”了。


又一起违反开源协议“翻车”事件


视频中,在介绍核心功能(字符画转制程序)时,何同学声称“我们专门写了一个软件”,引发了大量网友的质疑。原因是,这款“专门写的转件”实际是 GitHub 上的开源项目“ASCII generator”,该项目可用于生成 ASCII 码,支持图像转文本、图像转图像、视频转视频。


项目链接:_https://github.com/vietnh1009/ASCII-generator


也就是说,何同学的视频成品是基于该开源项目实现,但在视频发布时其并未在任何地方注明相关来源及原作者信息。对此,何同学在评论区回应,承认“使用的字符转制程序确实是由开源项目 ASCII-generator 改动而来,改动的内容主要是优化字符生成比例、图片裁切方式和传参方式”,而之所以没有在视频中指出这一点是因为“并没有意识到这个程序是从开源程序改动而来,也没有尽到审稿义务”。



据何同学称,目前他们已经对视频进行换源,修改了相关描述并增加引用来源。微博及油管视频平台平台由于无法做换源处理仍保持原视频,仅在评论区作了上述图片中的解释。



视频前后对比


网友显然也并不买账,表示:“怎么被发现了才来紧急避险,难道没人指出来你就可以一直藏起来了吗?”还有知乎网友指出,“被使用的开源项目实际上是视频里技术含量最高、实现难度最大的部分。”


那么,何同学视频中用到的字符画转制程序是改动了这个开源项目的哪些地方?是否在协议层面违反了相关开源许可呢?


改动处被网友质疑是“伪装原创”


根据 ASCII generator 的自述文件,使用该项目的 python 源代码可以实现:


  • 给定输入图像,可以生成以不同语言文本格式(.txt)存储的 ASCII 图像

  • 给定输入图像,可以生成以不同语言图像格式(.png、.jpg…)存储的 ASCII 图像。每种格式都有 2 个选项:黑底白字,反之亦然。

  • 在输入视频的情况下,可以生成以不同语言视频格式(.avi、.mp4…)存储的 ASCII 图像。

  • 视频 / 图像输出可以是灰度或彩色格式。


有知乎网友根据视频中展示的代码片段,和原项目进行比对后得出了以下改动结果:



更具体地说,何同学的改动是:

1. 将开源项目的作者声明部分「@author:Viet Nguyennhviet1009@gmail.com」删除;

2. 将「get」改成了「set」;

3. 改变了函数的传参方式,使用关键字参数 input_pathj、Toutput_pathj、「cols」、「model;

4. 改变了「–language」和「–mode」的项目参数默认值。


该网友指出,上述改动除了第三点可以认为是提高代码可读性及维护性以外,“其他的改动都说不过去”。


第①点删除开源项目的作者声明部分,甚至号称代码是自己写的,已经严重违反了 MIT 协议。

第②点将函数名中的 get 改成了 set,让人感觉莫名其妙,特别像是程序设计课里不同人之间互相抄代码,为了降低查重率就把函数名或者变量名改一下而已。黑人问号脸???

第④点改变了项目参数默认值,尤其是将 english 改为 general ,特别像是想抹除原作者痕迹,方便自己标榜原创。但凡何同学要是改成 chinese 我都能理解他们是为了方便使用而已……


除上述说法外,还有不少网友也都严重质疑何同学“手动删除”作者声明部分注释的行为和目的。在何同学回应之后,知名科技 up 主 epcdiy 在评论区这样问道,“请问删除原作者名字是无意识的吗?”


ASCII generator 开源项目采用的是 MIT 许可证,与其他常见的软件授权条款(如 GPL、LGPL、BSD)相比,MIT 是相对宽松的软件授权条款。


根据 MIT 许可证的说明,被授权人有权利使用、复制、修改、合并、出版发行、散布、再授权及贩售软件及软件的副本,可根据程序的需要修改授权条款为适当的内容,但被授权人在软件和软件的所有副本中都必须包含版权声明和许可声明。


因此,有网友认为,何同学应该将该期视频的收益作为赔偿给 ASCII generator 开源项目的开发者。



项目原作者发声


根据 GitHub 上的介绍,被涉及的 ASCII generator 开源项目是由 Sporttotal 高级 AI 工程师 Viet Nguyen 开发的。据了解,Sporttotal 是一家专注于体育转播和数码化领域创新解决方案的技术媒体公司。



同时,Nguyen 也是一位积极的开源贡献者。在 Nguyen 的个人页面上,我们看到其发布的多个受欢迎的开源项目,包括快速绘图应用程序、照片马赛克生成器,以及通过异步优势 Actor-Critic (A3C) 算法和近端策略优化算法训练 Agent 玩超级马里奥兄弟、用深度 Q 学习玩俄罗斯方块和 flappy bird 游戏、在不触摸键盘的情况下用手部检测模型玩游戏等各种有趣的实践。


据 Nguyen 介绍,他本人本科毕业于越南河内科技大学,之后在慕尼黑工业大学攻读计算机科学硕士学位,主修人工智能和机器人技术,并且精通 Python,包括 Tensorflow、Pytorch、Keras、Scikit-learn、Pandas、NLTK、OpenCV 和其他机器学习框架,对 NLP 和计算机视觉中的深度学习、强化学习的课题感兴趣。


近期,Nguyen 正在油管视频平台上持续更新有关机器学习各种常用算法、函数和模型以及数据科学方面的学习教程。在从事 AI 工程师之前,Nguyen 还曾在两家公司担任过数据科学家。


而 Nguyen 本人目前也知晓了此事,刚刚知名科技 up 主 epcdiy 转发原作者 vietnh1009 写给何同学的一封信的中文翻译:


各位好,

今天,多亏了一些在 Github 上的中国朋友告诉我,你们正在使用我的个人项目(https://github.com/vietnh1009/ASCII-generator/blob/master/img2img_color.py),并且声称自己编写了该代码(视频中的时间戳为 00:56)。我还制作了两段 YouTube 教学视频,指导我的观众(主要是越南人)如何免费编写这段 Python 代码。你们不仅在窃取他人的工作成果,还在欺骗自己的订阅者。我想我可能不是第一个被你窃取作品的人。对我来说这没有关系,但我不希望从中获利,因为这不是你的原创作品,并且你的观众值得更好的东西。他们付钱给你是为了欣赏你的创意和努力,而不是为了从互联网上盗用别人的东西。


开源协议的红线:违规代价与行业反思


事实上,近年来还有不少违反开源协议的事件发生。2021 年,国内首例违反 GPL 协议致侵权的案例被判罚,被告公司赔偿原告公司经济损失及维权合理费用共计 50 万元。


像何同学一样,违反 MIT 许可证的案例也不在少数。上个月,就先后有两家机构被指控。


10 月 10 日,Abstract Chain 团队成员 @0xCygaar 曝料称,美国联邦调查局 FBI 在发行代币 NexFundAI 时涉嫌违反 MIT 许可证。该工作人员称,FBI 在其智能合约中直接复制了 OpenZeppelin 的多个库文件,但未按要求在代码中附加许可证声明,构成了版权侵犯。


10 月 1 日,AI 创业公司 PearAI 的创始人 Duke Pan 承认其发布的 AI 编码器产品确实"借鉴"了开源项目 VS Code 和 Continue,前者采用的是 MIT 许可证,后者是 Apache 开源许可证。Pan 表示,PearAI 现在已将项目重新发布在与 Continue 相同的 Apache 开源许可证下。但仍有网友指出,“删除原始的 MIT 许可证并用限制性更强的许可证(Apache)取而代之,违反了版权法。”



截图来源:https://x.com/CodeFryingPan/status/1840831339337302204


违反开源许可的事情,在技术圈内屡见不鲜,但这种行为一旦被揭露,往往会引发轩然大波。PearAI 的创始人也不得不出来发长文道歉,希望得到开源社区的原谅:“你们帮助我们明白了,我们这样做的方式是随意的,是对我们热爱的开源社区的冒犯。”“这种随意的处理方式不仅在技术上是不正确的,而且冒犯了所有为开源项目做出贡献的人,也冒犯了开源的本质。我们已经纠正了我们的错误,我们不会再犯这样的错误。”


一位开源策略顾问 Phil Albert 曾表示,“几乎没有理由在软件上违反 MIT 许可证,因为 MIT 许可证施加的要求很少。所需要做的就是将软件中获取的八行左右的文本包含在软件的其他地方。”


随着开源代码中 Heartbleed 和 Log4Shell 等抢眼漏洞的出现,隐藏的开源代码风险来源——许可证不合规却开始被忽视了。但哪怕只有一个许可证不合规,都可能导致法律诉讼、耗时的修复工作以及产品上市的延误。


乍一看,保持开源许可证合规性听起来很简单。但实际上,它与开源本身的本质一样复杂。开源许可证种类繁多,不同许可证的要求差异也很大。因此,企业和开发者们有必要建立起全面的开源管理策略。


通过采取积极主动的方法,在开发生命周期的早期识别和修复开源许可问题,不仅可以提高开发人员的工作效率,还能减少在开发生命周期后期不得不淘汰和替换软件中不合规软件包所带来的心痛。开源框架的存在应该是为了追求终极目标,即最大的善。


参考链接:


https://www.zhihu.com/question/4389622860/answer/35499540383?utm_psn=1842513046217564160


https://x.com/CodeFryingPan/status/1840831339337302204


https://www.quora.com/What-are-the-consequences-of-breaching-MIT-license


https://www.paloaltonetworks.com/blog/prisma-cloud/why-you-need-proactive-open-source-license-compliance/


2024-11-21 18:009127

评论 2 条评论

发布
用户头像
有相关部门罩着,犯错也没事,国际上犯错国内无错。/doge
2024-11-26 09:39 · 北京
回复
用户头像
丢人呐。
2024-11-22 16:08 · 江苏
回复
没有更多了
发现更多内容

龙归科技 |软件的成本下降

龙归科技

身份认证 企业信息化 SSO

工作11年,从阿里P8出来,头发也没了,人也虚了,就剩下这份笔记了!

Java架构之路

Java 程序员 架构 面试 编程语言

字节内部MySQL宝典意外流出!极致经典,堪称数据库的天花板

比伯

Java 编程 架构 面试 程序人生

DeFi流动性挖矿管理系统开发|去中心化金融借贷系统开发

W13902449729

去中心化金融借贷系统开发 DeFi流动性管理系统开发

超强Android进阶路线知识图谱:Kotlin可能带来的一个深坑,持续更新中

欢喜学安卓

android 程序员 面试 移动开发

nodejs事件和事件循环详解

程序那些事

nodejs 异步编程 程序那些事 事件和事件循环 nodejs event

甲方日常 85

句子

工作 随笔杂谈 日常

五分钟快速掌握Maven的核心概念

Java架构师迁哥

厉害了!来看看这份超全面的《Android面试题及解析》,一线互联网公司面经总结

欢喜学安卓

android 程序员 面试 移动开发

AES/CBC/PKCS5Padding到底是什么

kof11321

加密解密

TCP波场拼系统开发|TCP波场拼软件APP开发

系统开发

重学JS | 异步编程 async/await

梁龙先森

大前端 编程语言 28天写作

案例研究之聊聊 QLExpress 源码 (六)

小诚信驿站

28天写作 QLExpress源码 聊聊源码

企业如何预防短信验证码被别人盗用

香芋味的猫丶

短信防刷 短信轰炸机 短信验证码 短信防轰炸 短信防火墙

关于事务、redolog 写入的两个问题分析

程序员架构进阶

MySQL innodb 事务 28天写作

从一场营地教育直播,看懂众盟“私域流量营销”的底层逻辑

脑极体

阿里2021年首次公开五份Java并发编程全彩小册:模型+原理+应用+模式+面试题五管齐下

Java架构追梦

Java 学习 架构 面试 并发编程

“区块链+数字身份”,道路坎坷前途光明

CECBC

数字技术

并发阻塞队列(BlockingQueue)— 生产者消费者模式核心部件

李尚智

Java 架构 jdk 设计模式

中美上市软件公司对比中的投资启示

ToB行业头条

为什么建议没事不要随便用工厂模式创建对象?

李尚智

Java 学习 设计模式

K线成交量管理系统开发、成交量管理系统开发

W13902449729

K线成交量管理系统开发 成交量管理系统开发

音乐混音怎么做?教你完美制作野狼disco与周杰伦双节棍合唱!

懒得勤快

音频技术 音频制作 混音 音乐混音

区块链大趋势

CECBC

数字经济

阿里面试官纯手打:金九银十跳槽必会Java核心知识点笔记整理

Java架构之路

Java 程序员 架构 面试 编程语言

2021年编排将成为DevSecOps关键推动者

啸天

DevSecOps 应用安全 开发安全

盘点2020|征文大赛获奖名单公布

InfoQ写作社区官方

盘点2020 热门活动

Hadoop的MapReduce到底有什么问题?

hanke

大数据 hadoop spark mapreduce 开源

持续集成对IT团队和企业分别有哪些好处?

禅道项目管理

DevOps 运维 开发 CI/CD

区块链发展应以密码应用创新为根基

CECBC

区块链 密码学

细节!3部分讲明白HotSpot:运行时+编译器+垃圾回收器

996小迁

Java 架构 虚拟机 hotspot

知名 UP 主被锤用开源项目“伪装原创”,原作者越南 AI 工程师愤怒维权,网友:把收益赔给他!_开源_华卫_InfoQ精选文章