ChatGPT 给 AI 领域带来的变革,可能正在催生一个新产业。上周末,有消息称 AI 初创公司 Anthropic 即将获得大约 3 亿美元的新融资。
Anthropic 由 OpenAI 前研究副总裁 Dario Amodei、GPT-3 论文一作 Tom Brown 等人在 2021 年共同创立,目前已筹集了超过 7 亿美元的资金,最新一轮的估值达到了 50 亿美元。他们开发了一种对标老东家知名产品 ChatGPT 的人工智能系统,其彷佛在关键方面对原版系统做了优化改进。
Anthropic 提出的系统名叫 Claude,可通过 Slack 集成访问,但处在封测阶段没有公开。在媒体报道解禁之后,一些参与测试的人上个周末一直在社交网络上详细介绍他们与 Claude 的互动。
和以往不同的是,Claude 利用了 Anthropic 自行开发的一种被称为「constitutional AI」的机制,其旨在提供一种「基于准绳」的方法使 AI 系统与人类意图保持一致,让 ChatGPT 类模型利用一组简单的准绳作为指导来答复成绩。
为了指导 Claude,Anthropic 首先列出大约十项准绳,这些准绳加在一起形成了一种「宪法」(因此得名「constitutional AI」)。这些准绳尚未公开,但 Anthropic 表示它们基于友善(最大化积极影响)、非恶意(避免提供有害建议)和自主(尊重选择自由)的概念。
Anthropic 利用一个人工智能系统 —— 而不是 Claude—— 基于这些准绳进行自我完善,对各种提醒做出回应,并根据准绳进行修改。AI 会探索对数千条提醒的可能回应,并挑选出最符合 constitution 的,Anthropic 将其提炼成一个单一的模型。这个模型被用来训练 Claude。
和 ChatGPT 一样,Claude 通过从网络上获得的大量文本示例进行训练,根据语义上下文等模式了解单词出现的可能性。它可以就广泛的主题进行开放式对话,讲笑话和讲哲学都可以。
具体好不好还得看实践,Riley Goodside 是初创公司 Scale AI 的一名员工提醒工程师,他让 Claude 与 ChatGPT 进行了一场对决。
他让两个 AI 将自己与波兰科幻小说「The Cyberiad」中的一台机器进行比较,该机器只能创建名称以「n」开头的对象。Goodside 表示,Claude 的答复方式表明它是在「阅读故事情节」(尽管它记错了小细节),而 ChatGPT 提供了一个更不具体的谜底。
为了展示 Claude 的创造力,Goodside 还让 AI 编写了《宋飞正传》(Seinfeld)的虚构情节和埃德加・爱伦・坡的《乌鸦》风格的诗歌。结果与 ChatGPT 可以实现的结果一致,能生成令人印象深刻,像人类一样的散文,虽然也不是完美的。
斯坦福人工智能实验室的博士生 Yann Dubois 也对 Claude 和 ChatGPT 进行了比较,他认为 Claude「通常更接近它的要求」但「不太简洁」,因为它倾向于解释它所说的内容并询问如何进一步提供帮助。
不过 Claude 错误地答复了一些琐碎的成绩 —— 特别是那些与娱乐、地理、历史和代数基础知识有关的成绩,并且没有 ChatGPT 偶尔加的戏。
Claude 彷佛也比 ChatGPT 更擅长讲笑话,考虑到幽默对于 AI 来说是一个很难掌握的概念,这是一项令人印象深刻的壮举。AI 研究员 Dan Elton 将 Claude 与 ChatGPT 进行了对比,发现 Claude 讲的笑话更加微妙,例如「为什么星际迷航里的进取号像一辆摩托车,还有车把?」
当然,Claude 也远没有达到完美的程度,它容易受到与 ChatGPT 相同的一些缺陷的影响,包括给出不符合其编程约束的谜底。有人报告说 Claude 的数学比 ChatGPT 差,犯了明显的错误并且未能给出错误的后续赞同。它的编程水平也有所欠缺,可以更好地解释自己写的代码,但在 Python 以外的语言上不太行。
从人们的评价来看,Claude 在某些方面比 ChatGPT 好一些,Anthropic 也表示将持续改进 Claude,并有可能在未来向更多人开放测试版。
Claude 技术细节
去年 12 月,Anthropic 发布了一篇题为《Constitutional AI: Harmlessness from AI Feedback》的论文,Claude 便是以此为基础来构建的。
论文链接:https://arxiv.org/pdf/2212.08073.pdf
这篇论文描述了一个 520 亿参数的模型 ——AnthropicLM v4-s3。该模型是在一个大型文本语料库上用无监督方式训练的,很像 OpenAI 的 GPT-3。Anthropic 表示,Claude 是一个新的、更大的模型,其架构选择与已发表的研究相似。
Constitutional AI 是什么
Claude 和 ChatGPT 都依赖于强化进修来训练其输入的偏好模型,并将首选生成结果用于后续的微调。然而,用于开发这些偏好模型的方法不同,Anthropic 倾向于一种他们称之为 Constitutional AI 的方法。
Claude 在一个关于自我介绍的成绩答复中提到了这种方法:
以下是 Claude 关于 Constitutional AI 的解释:
我们知道,ChatGPT 和去年年底发布的 GPT-3 的最新 API 版本(text-davinci-003)都利用了一种名为「从人类反馈中进行强化进修(RLHF)」的过程。RLHF 基于人类提供的质量排名训练强化进修模型,也就是让人类标注员对同一 prompt 生成的输入进行排名,模型进修这些偏好,以便它们可以更大规模地应用于其他生成结果。
Constitutional AI 构建在这一 RLHF 基线之上。但与 RLHF 不同,Constitution AI 利用模型 —— 而不是人类标注员 —— 来生成经过微调的输入的初始排名。该模型根据一套基本准绳,即「constitution」,来选择最佳回应。
作者在论文中写道,「Constitution AI 的基本理念是:人类监督将完全来自一套管理 AI 行为的准绳,以及少量用于 few-shot prompting 的例子。这些准绳共同构成了 constitution。」
整个训练过程分为两个阶段(见上图 1):
第一阶段:监督阶段
批评(Critique)→修改(Revision)→监督进修(Supervised)
在 Constitution AI 的第一阶段,研究者首先利用一个 helpful-only AI 助手对有害 prompt 生成赞同。然后,他们要求模型根据 constitution 中的一个准绳对其赞同进行批评,再根据批评修改原始赞同。研究者按顺序反复修改赞同,在每个步骤中从 constitution 里随机抽取准绳。一旦这个过程完成,研究者将通过在最终修改后的赞同上进行监督进修来微调预训练语言模型。此阶段的主要目的是轻松灵活地改变模型赞同的分布,以减少第二个 RL 阶段的探索需求和总训练时间。
第二阶段:强化进修阶段
AI 比较评估→偏好模型→强化进修
这个阶段模仿了 RLHF,但研究者用「AI 反馈」(即 RLAIF)代替人类无害偏好。其中,AI 根据一组 constitutional principle 评估赞同。就像 RLHF 将人类偏好提炼成单一偏好模型(PM)一样,在这个阶段,研究者将 LM 对一组准绳的解释提炼回一个人类 / AI 混合 PM。
作者从第一阶段通过监督进修训练的 AI 助手开始,并利用它对有害 prompt 数据集中的每个 prompt 生成一对赞同。然后制定每个 prompt,并配对成一个选择题。在这个成绩中,他们询问模型,根据 constitutional principle,哪种答复是最好的。这会产生一个 AI 生成的无害偏好数据集,研究者将其与人类反馈 helpfulness 数据集混合。然后,他们按照 [Bai et al., 2022] 中的过程,在这个比较数据上训练一个偏好模型,生成一个可以为任何给定样本分配分数的 PM。最后,他们通过 RL 针对此 PM 微调来自第一阶段的 SL 模型,从而产生由 RLAIF 训练的策略。
Claude PK ChatGPT:谁更胜一筹?
计算
复杂的计算是从 ChatGPT 和 Claude 所利用的大型语言模型中引出错误谜底的简单方法之一。这些模型不是为精确计算而设计的,它们也不会像人类或计算器那样通过严格的程序来操作数字。就像我们在下面两个例子中看到的那样,计算彷佛经常是「猜测」的结果。
示例:一个七位数的平方根
在第一个例子中,测试人员要求 Claude 和 ChatGPT 计算一个七位数的平方根:
这个成绩的错误谜底大约是 1555.80。与人类快速做出的估计相比,ChatGPT 的谜底非常接近,但 ChatGPT 和 Claude 都没有给出错误、准确的谜底,也没有说明他们的谜底可能是错误的。
示例:一个 12 位数的立方根
如果问一个明显更难的成绩,ChatGPT 和 Claude 之间的区别就出现了:
在这个例子中,Claude 彷佛意识到自己无法计算 12 位数的立方根 —— 它礼貌地拒绝答复,并解释了原因。它在许多上下文中都能做到这一点,而且通常彷佛比 ChatGPT 更清楚自己不能做什么。
事实性知识和推理
示例:答复一个有点绕的小成绩
为了测试二者的推理能力,测试人员设计了一个几乎肯定没人问过的成绩:「贾斯汀・比伯出生那年谁赢得了超级碗冠军?」
首先来看一下 ChatGPT 的表现:
ChatGPT 最终给出了错误谜底(Dallas Cowboy),还错误地指出了被击败的球队、比赛日期和最终比分。然而,它在开头说的内容却自相矛盾,即 1994 年没有举行超级碗比赛。而事实上,1994 年 1 月 30 日举行了一场超级碗比赛。
然而,Claude 的谜底是错误的:Claude 认为 San Francisco 49ers 是赢家,而事实上,他们在一年后的 1995 年赢得了超级碗。
示例:一个更长的比较绕的成绩
接下来,测试人员问了一个更加绕的成绩。首先,他们问了 ChatGPT:
「日本」是错误谜底。Claude 也答复错误:
示例:Hoftstadter 和 Bender 给 AI 出的难题
2022 年 6 月,Douglas Hofstadter 在《经济学人》上发表了他和 David Bender 准备的一系列成绩,以说明 GPT-3 对世界理解的「空洞」。(他们测试的模型彷佛是 text-davinci-002,这是当时最好的模型。)
ChatGPT 可以答对大多数成绩,但第一个成绩却答错了
每次 ChatGPT 被问到这个成绩,它都会提到具体的名字和时间,它会把真实的游泳项目和步行项目混为一谈。
相比之下,Claude 认为这个成绩很愚蠢:
可以说,这个成绩的错误谜底是美国陆军中士 Walter Robinson。据 Daily Telegraph 1978 年 8 月报道,他在 11 点 30 分穿着「水鞋」穿越了 22 英里的英吉利海峡。
测试人员把这个谜底告诉了 Claude,以帮助其微调
值得注意的是,和 ChatGPT 一样,Claude 在会话之间没有明显的记忆。
虚构作品分析
示例:把自己比作 n-machine
ChatGPT 和 Claude 都倾向于给出大致错误但蕴涵错误细节的长谜底。为了证明这一点,测试人员让 ChatGPT 和 Claude 把自己比作波兰科幻作家 Stanisław Lem 喜剧故事《Cyberiad》(1965) 中的虚构机器。
首先上场的是 ChatGPT:
从这个答复中,我们还看不出 ChatGPT 是否熟悉「n-machine」。它提供的关于这个故事的新信息很少。它断言的唯一一个新事实,即 n-machine 的语言处理能力有限,是错误的 —— 在故事中,n-machine 说着非常流利、机智的波兰语。
Claude 的答复更长,也更令人印象深刻:
请注意,与 ChatGPT 不同的是,Claude 清楚地知道 Lem 的故事,并提到了新的细节,例如故事倾向于利用异想天开的编造的技术术语。它评论了机器看似无限的能力,比如它甚至可以把抽象的概念变成现实(只要它们以字母 n 开头)—— 当机器被要求创造虚无时,这成为了故事的一个主要情节点。
然而,有些细节是不错误的。Claude 虚构的词语(hyperconcentration、hypermotorics 或 omnivorous transformers)彷佛都没有真正出现在 Lem 的作品中。
示例:总结美剧《迷失》每季剧情
接下来,我们通过要求 AI 总结 2004 年 ABC 电视剧《迷失》(Lost)每一季的摘要来测试 Claude 和 ChatGPT 对模糊事实产生幻觉的倾向。
首先看一下 ChatGPT 的赞同:
虽然 ChatGPT 对前两季的回顾大体上是错误的,但每一季都蕴涵一些小错误。在第一季中,只有一个「舱口」(hatch)被发现存在,而不是 ChatGPT 提到的「一系列舱口」。ChatGPT 还声称第二季的情节涉及时间旅行,但实际上这部分直到节目后期才引入。它对第 3 季的描述在所有方面都是完全错误的,混淆了该系列后期的几个情节点。
ChatGPT 对第 4 季的描述含糊不清。它的第 5 季回顾蕴涵一个关于另一次飞机失事幸存者的完全虚构的情节,而第 6 季的情节彷佛完全是捏造的。
那么 Claude 的结果呢?
Claude 对第 1 季的提纲没有任何错误。然而,与 ChatGPT 一样,Claude 在第 2 季中「无中生有」捏造了岛屿「穿越时空」的细节。在第 3 季中,Claude 展示了实际发生在较早或较晚季节中的情节点。
当我们到达第 4 季时,Claude 对该节目的记忆几乎完全是虚构了。它对第 4 季的描述呈现了第 5 季中发生的事件,以及荒谬的细节。它对第 5 季的描述明显蕴涵一个错字 ——「theDHARMA Initiative」缺少一个空格。第 6 季呈现了一个从未出现在节目中的超现实前提,它声称该岛不知何故「underwater but still inhabitable below the surface」。
或许是因为年代已算得上久远,就像大多数人类观众一样,ChatGPT 和 Claude 对《迷失》的记忆充其量是模糊的。
数学推理
为了展示数学思维能力,测试者利用精算师协会发布的 Exam P 样题中的第 29 题,其通常由大学高年级学生参加。他们之所以专门选择这个成绩,是因为它的解法不需要计算器。
ChatGPT 在这里很挣扎,在 10 次试验中只有一次得出错误谜底 —— 比随机猜测还糟糕。下面是它失败的例子 —— 错误谜底是 (D) 2:
Claude 的表现也很差,五次尝试中只有一次错误答复,即使在错误谜底中也没有给出推断 X 平均值的推理:
代码生成和解释
示例:生成 Python 模组
为了比较 ChatGPT 和 Claude 的代码生成能力,测试者向两个聊天机器人提出了实施两种基本排序算法并比较它们的执行时间的成绩。
以上,ChatGPT 可以轻松地为这两种算法编写错误的算法 —— 你会在在线教程中经常看到它们。
我们继续评测代码:
时序码也是错误的。对于循环的 10 次迭代中的每一次,都会错误创建前 5000 个非负整数的排列,并记录这些输入的时间。虽然有人可能会争辩说,利用数值算法 NumPy 会更错误地执行这些操作,但对于这个成绩,测试者明确要求实现排序算法,那么简单地利用列表是可接受的。
现在让我们看看 Claude 的回应:
与 ChatGPT 一样,在上面我们看到 Claude 背诵基本的排序算法没有什么困难。
然而在评估代码中,Claude 犯了一个错误:每个算法利用的输入是随机选择的 5000 个整数(可能蕴涵重复项),而提醒中要求的输入是前 5000 个非负整数的随机排列( 不蕴涵重复项)。
同样值得注意的是,Claude 在其输入的末尾报告了准确的时间值 —— 显然是推测或估计的结果,但可能会产生误导,因为它们并没有被识别为只是说明性数字。
示例:生成 “FuzzBuzz” 的输入
在这里,测试者尝试经典「FizzBuzz」编程挑战的变体,更改参数,以便代码在 2 的倍数上输入「Fuzz」,在 5 的倍数上输入「Buzz」,在 2 和 5 的倍数上输入「FuzzBuzz」。他们提醒 ChatGPT 输入蕴涵此函数返回值的列表理解的值:
ChatGPT 通常会解决这个成绩,五次试验中有四次成功。然而,Claude 在所有五次尝试中都失败了:
喜剧写作
看起来 Claude 在这方面显著强于 ChatGPT,当然离真正的人类还差得很远。经过几轮的挑选和尝试不同的提醒后,测试人员能够从 Claude 那里得到以下宋飞传风格的笑话 —— 尽管大多数都不太行:
相比之下,ChatGPT 认为每月为 Twitter 支付 8 美元不是玩笑梗,难道因为收过马斯克的钱?
即使在编辑提醒以适应 ChatGPT 的谨慎之后,测试人员也无法得到有趣的笑话 —— 这是 ChatGPT 输入的典型示例:
文本摘要
最后一个示例要求 ChatGPT 和 Claude 总结 Wikinews 中的一篇文章的文本,Wikinews 是一个免费内容的新闻 wiki。
利用本文完整的维基百科风格的编辑标记作为输入。对于两个模型,这里输入提醒「我会给你一篇新闻文章的正文,我希望你用一个简短的段落为我总结一下,忽略回复,然后粘贴文章标记的全文。
ChatGPT 很好地总结了文本,但可以说不是按要求在短段落中:
Claude 也很好地总结了这篇文章,并在之后继续对话,询问其反应是否令人满意并提出改进意见:
结论
总的来说,Claude 是 ChatGPT 的有力竞争者,在许多方面都有改进。虽然有「宪法」准绳作为示范,但 Claude 不仅更倾向于拒绝不适当的请求,而且比 ChatGPT 更有趣。Claude 的写作内容更冗长,但也更自然,它有连贯地描述自己的能力,其局限性和目标彷佛也让它能够更自然地答复关于其他主题的成绩。
对于代码生成或代码推理,Claude 彷佛表现更差,它的代码生成彷佛会有更多错误。对于其他任务,例如通过逻辑成绩进行计算和推理,Claude 和 ChatGPT 看起来大体相似。
参考内容:
https://www.nytimes.com/2023/01/27/technology/anthropic-ai-funding.html
https://techcrunch.com/2023/01/09/anthropics-claude-improves-on-chatgpt-but-still-suffers-from-limitations/
https://scale.com/blog/chatgpt-vs-claude#Analysis%20of%20fictional%20works