叮叮叮,又一款聊天机器人——Claude 2 来了,它可以编写代码、分析文本和撰写文章,当然也支持中文!
其实,Claude 2 的聊天机器和 OpenAI 也颇有渊源,因为它是 OpenAI 前高级成员 Daniela Amodei 和 Dario Amodei 在离职后创立的 Anthropic 公司开发的。
今年 3 月,创立仅 2 年的 Anthropic 便推出了 Claude 的初版,彼时在申请测试之后,有不少媒体直接将其定位为“ChatGPT 最强劲的竞争对手”。
为什么这么说?
从最新的 Claude 2 来看,用户可以直接通过 Anthropic 网站使用上 Claude 2,而不需要等待漫长的“候选名单”。不过,目前仅限美国和英国地区用户使用 。
同时,需要花 20 美元付费购买 ChatGPT Plus 服务才能用上的一些功能,如上传文件自动总结 PDF 文档,可以在 Claude 2 上免费就能用上。
而且,Anthropic 声称 Claude 2 在三个关键领域展示了进步:编码、数学和推理。他们在博客中写道:“我们最新的模型在律师考试多项选择部分的得分为 76.5%,高于 Claude 1.3 的 73.0%。与申请研究生院的大学生相比,Claude 2 在 GRE 阅读和写作考试中的得分高于 90%,在定量推理方面与申请者的中位数类似。”
那么,Claude 2 和 ChatGPT 相比,真实能力究竟如何?是否能赶超 ChatGPT?CSDN 也在第一时间上手体验了一下!
自我介绍
话不多说,先让大家对它有个基础的了解:
常规聊天机器人有的能力,Claude 2 都有,而且正如上文所说,多了一个“查找并提取信息”的能力。
和 Google Bard 相比,至少 Claude 2 是支持中文的,不过在理解能力上还有一定的局限性。
稍微尖锐一些的话题,当问及 Claude 2 ,它和 ChatGPT 相比有何优势时,Claude 2 直白地拒绝做比较。同时,不知道是不是中文能力不太好,在回答问题的过程中出现了一些不明所以的数字内容。当问及它时,它也进行了解释,“数字就是一段无意义的数字串。”
编码
根据Anthropic官方表述,在编码能力方面,Claude 2 表现出熟练程度的提高。它在Python 编程测试 Codex HumanEval上的得分从 56% 上升到 71.2%。
先来一道简单的编码问题。
问:用 Python 实现冒泡排序
Claude 2 最终会对代码思路进一步讲解,方便即使不太精通代码的用户也能了解。
提问:
Claude 2:
#include #include class Complex {public: double real; double imag; Complex(double real = 0.0, double imag = 0.0) { this->real = real; this->imag = imag; } // 复数加法 Complex operator+(const Complex& other) { return Complex(real + other.real, imag + other.imag); } // 复数减法 Complex operator-(const Complex& other) { return Complex(real – other.real, imag – other.imag); } // 复数乘法 Complex operator*(const Complex& other) { return Complex(real*other.real – imag*other.imag, real*other.imag + imag*other.real); } // 复数除法 Complex operator/(const Complex& other) { double r = other.real; double i = other.imag; double denominator = r*r + i*i; return Complex((real*r + imag*i)/denominator, (imag*r – real*i)/denominator); } // 复数乘方 Complex pow(int exponent) { double r = pow(abs(), exponent) * cos(exponent * arg()); double i = pow(abs(), exponent) * sin(exponent * arg()); return Complex(r, i); } // 复数取模 double abs() { return sqrt(real*real + imag*imag); } // 复数辐角 double arg() { return atan2(imag, real); }};int main() { Complex a(1.0, 2.0); Complex b(3.0, 4.0); Complex c = a + b; Complex d = a – b; Complex e = a * b; Complex f = a / b; Complex g = a.pow(2); std::cout << “c = ” << c.real << ” + ” << c.imag << “i\n”; std::cout << “d = ” << d.real << ” + ” << d.imag << “i\n”; std::cout << “e = ” << e.real << ” + ” << e.imag << “i\n”; std::cout << “f = ” << f.real << ” + ” << f.imag << “i\n”; std::cout << “g = ” << g.real << ” + ” << g.imag << “i\n”; return 0;}
自动总结 PDF 文档
在查找并提取信息维度,我们通过上传一篇《Exploring Length Generalization in Large Language Models》的 PDF 论文,让其帮忙总结。
Claude 2 在响应速度和生成内容维度表现都不错,而且用中文提问,即使文档是全英文的论文,其生成的总结内容也是采用中文输出:
数学问题
同样,根据官方评测,Claude 2 在 GSM8k(一项包含小学数学问题的测试)上,它的得分从 85.2% 提高到 88%。
那我们便以经典的鸡兔同笼问题来检测一下 Claude 2 的能力。
有些出乎意料的是,Claude 2 给出的思路是对的,但是在计算时出现了错误。当告诉它“算错了”时,它也会及时明白错误,并在重新输出后给出了正确的答案:
再来一题:7 年前,妈妈年龄是儿子的6 倍,儿子今年 12 岁,妈妈今年多少岁?
这一次 Claude 2 没有出错。
再试试看:同学们进行广播操比赛,全班正好排成相等的6行。小红排在第二行,从头数,她站在第5个位置,从后数她站在第3个位置,这个班共有()人。