跳到正文
Hacker News· sunshowers·· 2 天前AI 评分60

Anthropic 的 Scion 被指抄袭 Mononoke,作者称问题在署名而非复制

More on Anthropic's Scion ripping off Mononoke

AI 导读

Mononoke 前负责人 sunshowers 发文称,Anthropic 的 Scion 并非无意借鉴,而是有意抄袭 Mononoke,且双方存在人员重叠。

正文 · AI 翻译

更新:Anthropic 的 Nick G. 已在 Hacker News 上作出回应,并且 充分的署名 已添加到 Anthropic 的博客文章中。我坚持我在撰写这些文章时的立场。


在 Hacker News 上讨论。

针对昨天关于 Anthropic 的 Scion 抄袭 Mononoke 的文章,我收到了许多问题和疑虑。以下是针对主要问题的后续回应。

这是一次抄袭。 我昨天的文章在已知信息的前提下尽量保持了善意,尤其是认为与 Mononoke 的相似性大多是无意的,而缺乏署名则是未尽到尽职调查的结果。然而,在文章发布后,我私下收到了确认,Scion 是有意且公然抄袭了 Mononoke,尤其是存在人员重叠。这绝不可能是无意的致敬。这是我昨天有所预感,但鉴于当时所知信息不便明说的事情。

相似之处远比派生数据这一概念要深得多。 有人指出派生数据只是一个索引,这是一个众所周知的概念。我想澄清的是,派生数据仅仅是最显著的相似之处。相似之处远不止于此,它延伸到了整个数据模型,以及围绕它构建的许多结构。

以下是 Anthropic 对 Scion changeset 的描述:

In Scion, the unit of work is a “changeset,” an entry in a write-ahead log. A changeset stores most of what you’d expect from a commit in git. But where a git commit stores a pointer to the tree, a changeset stores a list of the files that changed relative to its first parent,1 along with content-addressed pointers to the compressed file contents in blob storage. Changesets are created server-side and are available everywhere, instantly. (followed by a pictorial of a changeset)
Anthropic 如何描述 Scion 的 changeset。

Mononoke 有相同的概念;我们称之为 Bonsai changeset。在 2022 年同样的 Oxide 材料中,我是这样描述它们的:

The Bonsai data model. To solve this problem, we flipped around how we look at commits. Rather than containing a pointer to the root tree object, a Bonsai changeset contains the metadata (author, commit message etc), hashes of parents, plus the list of files changed in it and hashes of blobs. (A Bonsai changeset is still a Merkle DAG, just with a different model.)
我如何描述 Mononoke 的 Bonsai changeset。

它们完全相同。甚至“Scion”这个名字也是将“Bonsai”的音节颠倒并去掉了“B”!这可能是巧合,也可能不是。

关于派生数据,我还想提请注意所构建的索引种类,例如用于 blame 的索引。需要这样做是 Bonsai 数据模型的自然结果,因此需要构建索引并不奇怪;我提请注意的,是术语和表述框架上惊人的相似性,因为在我于 Meta 源代码控制团队工作期间,我们确实就是这样思考的。

另一组相似之处在于用于进行版本控制查询和变更的服务器端 API。这在 Mononoke 中实现了,但我相信 Mononoke 之前的其他系统也有,所以我不会声称这是新颖的。但如果你所做的就是把 Claude 指向 Mononoke 并要求它重建,你可能会设计出非常相似的东西。

Bonsai 数据模型极其反主流。 我想强调,源代码控制领域的主流观点是类似 Git 的数据模型。构建预写日志风格的 Merkle DAG 在 2018 年与其他人所做的相去甚远,并且在此过程中需要解决几个难题,例如如何执行服务器端 rebase(据我所知,这是 Mononoke 中几个新颖算法之一)。当我在 2018 年领导团队设计和实现该模型时,我个人不得不向 Meta 的多个管理层级证明其合理性。跨级人员被拉来深入讨论一个系统的数据模型,这是相当罕见的。

Bonsai 数据模型也取得了巨大成功。 近十年后的今天,这个模型已被远远拉伸到超出其最初设计参数的范围,却依然运转良好。团队为构建它付出的努力,至今仍是我职业生涯中最引以为傲的成就之一。考虑到人员上的重叠,Scion 团队不可能不知道这件事。(这也是他们相当合理地照搬它的原因!)这就引出了我的下一点:

问题在于署名,而非复制。 我在最初的帖子中提到过这一点,但我完全接受好想法被复制。我不接受的是序列号被无意中抹去,我当然更不接受它们被有意抹去。

把“来之不易的经验教训”归功于 Sapling 是不够的。 有几个人指出 Mononoke 是 Sapling 生态系统的一部分。问题在于,Sapling 既可以指 VCS 客户端(sl,最初从 hg 分叉而来),也可以指整个系统。如果你以前在 Meta 的源代码控制团队工作过,你绝对知道这两者的区别。此外,相似程度远不止“来之不易的经验教训”这么简单。Lore VCS 可以声称受到 Mononoke 的启发,但它在若干方面也有所不同。Scion 与 Mononoke 的相似程度远超于此,仅仅把“来之不易的经验教训”归功于 Sapling(甚至都不是 Mononoke)是不诚实的。(具体来说,我期望 Scion 的 changeset 部分提到 Bonsai changeset 才是它们被复制自的东西。)

这让 Anthropic 的成就显得远没有那么令人印象深刻。 任何把分布式系统投入生产的人都知道,在生产化过程中往往会冒出多少问题。“我们的 LLM 构建了这个东西,将其生产化,并在 5 个月内处理了所有随之而来的挑战”是一个远比“Meta 的源代码控制团队花了 10 年构建并生产化这个系统,而我们能够把 LLM 指向它并在 5 个月内重建它”更有说服力的叙事。

……然而,这仍然是一项相当了不起的成就。 能够指向一个现有系统并在如此短的时间内重建它,仍然相当惊人。令我震惊的是,Anthropic 没有直接说他们复制了 Mononoke 并在 5 个月内重建了它。这仍然值得注意,即使没有那么宏大。他们肯定知道会被指出来吧?

把工作置于更大的背景中总是好的。 我们都站在巨人的肩膀上!借鉴并改编现有工作以适应新情境没有任何问题——这是我作为工程师所做的绝大部分事情。当你把自己的工作定位为衍生作品时,你是在承认那些先于你的人,正如你希望被后来者承认一样。

没有团队就没有一切。 就个人而言,我已经很多年没有参与 Mononoke 的工作了。多年后的今天,仍有一个团队在继续高举火炬前行。Anthropic 剽窃 Bonsai 数据模型这件事对我打击很大,但也请为现在正在做这件事的团队想一想:那些被最直接抄袭的人。想象一下,他们的工作被刻意整体复制,并被有意呈现为别人的成果,他们会有何感受。


距我最初在 Bluesky 和 Linkedin 上发布此事已经过去两天,我还没有看到原帖有任何更新。这仍然是大型 AI 公司挪用公共资源、将他人的工作据为己有的又一个可耻例子。我不知道要怎样才能从这里重建信任,但我现在的默认假设是,Anthropic 的公开工程演示大多是恶意的剽窃。这真令人遗憾。

来源:Hacker News · sunshowers.io