首页 >>  正文

c++经典程序

来源:baiyundou.net   日期:2024-08-03

衡宇 克雷西 发自 凹非寺

量子位 | 公众号 QbitAI

在OpenAI祭出GPT-4的API和“最强插件”代码解释器后,竞争对手显然坐不住了。

就在刚刚,Anthropic旗下Claude发布第二代——没错,就是被外界评价为GPT-4最强竞品的那一个。

浅划一下这次更新动作的重点:

免费,不用排队,自己用邮箱注册即可登陆。

科技大佬们打起来真是妙啊,妈妈再也不用担心ChatGPT/GPT-4将我拒之门外后,打工或写作业时没有AI用了!

英伟达AI高级科学家Jim Fan火速尝鲜,并在推特上分享了自己的Claude2用户体验。

关于Jim Fan老师谈到的Things you should know,量子位挑了些重点:

  • 免费使用
  • Claude2(100K 上下文)比GPT-4-4K便宜了4-5倍
  • 实际可以支持20万token上下文,约15万个单词,输入一本书不在话下;不过现在只开放了10万token长度
  • 知识更新鲜,知识截止时间是2023年初,而GPT-4停在2021年9月;
  • 可以将多个文档导入后,询问文档之间概念的关系,支持txt、pdf多种格式(ChatPDF之类的应用,危)
  • 代码、小学数学能力,比初代Claude有所进步。

国内AI博主海辛也在微博上惊讶连连。

因为上传自己的简历后,Claude2分析出了她的MBTI人格

除了他们,第一波冲进网页体验Claude2的网友们已经在激情分享了自己的体验感:

不错子,和GPT-4-32k比,Claude2的回答更个性化~

于是乎,量子位先冲了一波网页对话,来看我们的人肉测验——

咦,Claude更新了?注册一个试试

首先奉上最有节目效果的弱智吧Benchmark,给读者朋友们开开胃。

问的问题无外乎弱智吧的典中典,譬如“咖啡算不算豆浆”“数据线可不可以暂存数据”之类的。

看到Claude2一本正经地回答弱智吧问题,就会发现AI还是太单纯了,看不出人类的小心机。

不过正经地看,这些回答倒也没毛病。

上面的两个问题算Claude2顺利过关,那么如果提问一些更无厘头的问题呢?

问,玉皇大帝到底住在九重天的哪一层?

答,从立足点来看,玉皇大帝所在的天庭,应该处于平流层,因为“这更符合天庭圣洁的定位”。

当然,没有人能评判这个回答到底对还是错,但至少Claude2的这一通分析,还算有理有据。

开胃小菜就展示到这里,下面上正餐!

长文档是本次更新的一大亮点,这一点已经被推特网友们惊呼鹅妹子嘤了。

比如上传两个pdf,可以看到,Claude2可以从两个pdf文档中做出摘要,这两个文档一个关于“语言流变模式”,一个关于“对称性”,并且将文档内容分点列在对话框中:

此前,量子位就出过让初代Cladue-100k版本在20秒速通92页论文的攻略《白嫖GPT-4最强竞品!》。

不只是较大的文档,根据Claude2开放的10万token的上下文来看,一次性上传一本书让它读,也是小菜一碟。

对普通用户来说,现在不仅能够上传长文档,还可以用上传的文件构建自己的知识库,对Claude翻阅文档后进行回答,真的是非常实用。

以至于内心出现一个疑问,会不会在ChatGPT摊薄Jasper、Notion等公司的蛋糕后,Claude也要对ChatPDF类工具下手了?

最后,我们为大家奉上今天的餐后甜点:让Claude2来写个程序试试

为了考验Claude设计算法的能力,我们选择了一种古典密码,让它试着写个解密程序出来。

这种密码叫做维吉尼亚密码,可以理解成二维的凯撒(位移)密码,其中包括密钥。

举个例子说明一下它的算法:

假如明文是B,密钥是C,B是字母表中第二个,那么从C开始数的第二个字母D就是密文。

如果数到了Z,就重新从A开始接着数,密钥长度不足时则进行循环。

解密自然就是把加密过程倒过来。

Claude输出了这样的代码(C++,下同)

#include

#include

using namespace std;

string decryptVigenere(string ciphertext, string keyword) {

string plaintext;

int keywordIndex = 0;

for (int i = 0; i < ciphertext.length(); i++) {

int p = (ciphertext[i] - 'A') - (keyword[keywordIndex] - 'A');

p = (p + 26) % 26;

plaintext += (char)(p + 'A');

keywordIndex = (keywordIndex + 1) % keyword.length();

}

return plaintext;

}

int main() {

string ciphertext;

cout << "请输入密文:";

cin >> ciphertext;

string keyword;

cout << "请输入密钥:";

cin >> keyword;

string plaintext = decryptVigenere(ciphertext, keyword);

cout << "明文是:" << plaintext << endl;

return 0;

}

我们把“CHATGPT”用密钥“CLAUDE进行了加密,密文是“ESANJTV,并尝试用Claude给出的程序解密。

一次就成功了,看来Claude的代码能力的确没让我们失望。

这个问题可能有些简单,我们再加大难度试试。

我们试着从LeetCode中找了一道中等难度的问题,人类解这道题的通过率大概是60%。

给定一个长度为n的整数数组 height 。有 n 条竖直的线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水(容器不能倾斜)。返回容器可以储存的最大水量。

这样说可能不那么容易想象,下面的这张图或许更加直观:

原题中给出的示例一共有9条线,高度分别为“1,8,6,2,5,4,8,3,7”,相应的最大水量是49。

我们给Claude2的Promot是酱婶儿的:

写一个C++程序解决这个问题,不要自己设定初始值,让用户输入:(接上面的问题)

Claude2给出了这样的答案:

#include

#include

using namespace std;

int maxArea(vector<int>& height) {

int max_area = 0;

int n = height.size();

for (int i = 0; i < n; i++) {

for (int j = i + 1; j < n; j++) {

int width = j - i;

int h = min(height[i], height[j]);

max_area = max(max_area, width * h);

}

}

return max_area;

}

int main() {

vector<int> height;

int input;

cout << "请输入一系列整数:" << endl;

while(cin >> input) {

height.push_back(input);

}

cout << "最大面积为: " << maxArea(height) << endl;

return 0;

}

}

我们没让Claude2专门调整输入和输出格式,所以没有提交给LeetCode,而是直接运行的。

用的数据也是上面提到的,结果表明,Claude2给出的代码至少在核心算法上是正确的。

(下图输入中的a是告诉CPU这一系列整数输入完了,可以替换成任意非数字字符)

看来这个问题也没能难倒Claude2。

除了代码,Claude2据称还拥有小学级别的数学水平。

那就顺便用经典的鸡兔同笼问题考一考它(这道题是ChatGPT出的)

反复尝试了很多次,虽然方程式列得没有问题,但Claude2解出的答案都是20(正确答案应该是40)

看来计算这种事,对Claude2来说还是有点困难。

有关这次更新的更多信息,可以看下Anthropic的宣传片:

,时长01:03

与OpenAI“撕”出来的AI公司

见识过Claude2的表现后,那就不得不提一下背后的公司Anthropic,毕竟真的有点意思。

Anthropic自称是一家AI安全公司,且具有公益性(PBC)

眼下,它和OpenAI同样将重心放在生成式AI上。1月份,公司在市场上已经有50亿美元估值。

Anthropic由OpenAI前研究副总裁Dario Amodei带领10名员工创业,于2021年成立。

这里面既有GPT-3首席工程师Tom Brown,也有OpenAI安全和政策副总裁Daniela Amodei(Dario的姐姐),可以说是带走了相当一批核心人才。

出走成立新公司的原因之一,自然是对OpenAI现状并不满意。

从前几年开始,微软频频给OpenAI注资,随后又要求他们使用Azure超算来搞研究,而且将技术授权给微软,甚至为微软自己的投资活动筹集资金。

这与OpenAI创立的初衷相悖,一批员工便想到了离职创业。

当然,还有一部分原因是这群人想做能控制、可解释的AI,说白了就是先搞明白AI模型背后的原理,从而在提供工具的同时设计更多可解释的AI模型。

于是,在OpenAI彻底变成“微软揽钱机器”后,他们便从这家公司离开,创办了Anthropic。

现如今,微软真的和OpenAI有了“深度绑定”的味道。

然而既狗血又八卦味十足的事情是,今年2月,谷歌CEO劈柴哥重磅宣布,斥资3亿美元,投的就是Anthropic。

之所以被外界抱以厚望,称呼Claude2为GPT-4最强竞品,不仅仅是因为Claude实测下来体验确实位于第一梯队,还因为背后实力强大的“爸爸们”:

今年5月,该公司表示筹集了4.5亿美元,使Anthropic筹集的资金总额超过10亿美元

在谷歌入股之前,Anthropic就已经获得了多位大佬的投资,如Skype创始人Jaan Tallinn,Facebook联创Dustin Moskovitz,谷歌前CEO、现技术顾问Eric Schmidt等人。

现在,合作伙伴列表里除了Zoom和Notion.AI,还多了Jasper.AI的名字。

不仅如此,公司核心技术Constitution AI也备受瞩目。

它主要围绕“语言模型如何决定它将涉及哪些问题以及它认为哪些问题不合适?为什么它会鼓励一些行动而阻止另一些行动?语言模型可能具有哪些价值?”展开。

为了解决上述问题,它让AI尽可能遵循很多原则。

原则条目有很多,包括联合国宣言、Anthropic从研究中自己发现的原则,DeepMind在Sparrow研究中提出的原则,甚至还借鉴了苹果的服务条款。

并且是通过AI反馈的方式,来评估输出,应对目前AI的缺点。具体体现在AI训练过程中,分为两个阶段:

第一阶段,模型被训练使用一套原则和一些过程的例子,来评估和修改自己的反应;

第二阶段,模型通过强化学习进行训练,使用基于原则集的AI生成的反馈来选择和输出更无害的内容。

这一点与ChatGPT的的杀手锏RLHF(人类反馈强化学习)大相径庭,而Anthropic给出的解释是:

基于Constitution AI的强化学习,比从RLHF中强化学习得出的生成内容,更有用,且更无害。

并且,还更容易规模化。

在这套Constitution AI,迭代到2.0的Claude,确实在导入文件、上下文窗口理解等功能方面,比GPT-4更引人注目。

不过也不是完美的,比如GRE考试成绩上,Claude2就5局3败,输给了GPT-4。

但不可否认,巨佬们在AI方面你追我赶的局面,让本普通用户切切实实感受了一波渔翁得利的快乐,嘻嘻嘻(狗头)

速来自己肉测:

http://claude.ai

— 完 —

量子位 QbitAI · 头条号签约

","gnid":"9ef7858b4153f7e13","img_data":[{"flag":2,"img":[{"desc":"","height":"448","title":"","url":"https://p0.ssl.img.360kuai.com/t01582cb91ddf8fc805.jpg","width":"464"},{"desc":"","height":"226","title":"","url":"https://p0.ssl.img.360kuai.com/t01dbe074a041001f7c.jpg","width":"940"},{"desc":"","height":"1163","title":"","url":"https://p0.ssl.img.360kuai.com/t01f972373aa5887ebd.jpg","width":"1080"},{"desc":"","height":"600","title":"","url":"https://p0.ssl.img.360kuai.com/t0124f2b22dc40f42fc.jpg","width":"1080"},{"desc":"","height":"306","title":"","url":"https://p0.ssl.img.360kuai.com/t016ef521617c73da65.jpg","width":"932"},{"desc":"","height":"477","title":"","url":"https://p0.ssl.img.360kuai.com/t01857f2dfba9e59990.jpg","width":"1080"},{"desc":"","height":"657","title":"","url":"https://p0.ssl.img.360kuai.com/t0174ddf6cd146631d9.jpg","width":"1080"},{"desc":"","height":"587","title":"","url":"https://p0.ssl.img.360kuai.com/t0153a5b04b4423ad4c.jpg","width":"1080"},{"desc":"","height":"600","title":"","url":"https://p0.ssl.img.360kuai.com/t01072bdb64d2f1ab10.jpg","width":"624"},{"desc":"","height":"1025","title":"","url":"https://p0.ssl.img.360kuai.com/t01fcc1df3058fc2192.jpg","width":"1080"},{"desc":"","height":"830","title":"","url":"https://p0.ssl.img.360kuai.com/t0114de83b1f750001d.jpg","width":"830"},{"desc":"","height":"449","title":"","url":"https://p0.ssl.img.360kuai.com/t01037e92723a3290df.jpg","width":"1080"},{"desc":"","height":"383","title":"","url":"https://p0.ssl.img.360kuai.com/t018d9f608def891f3c.jpg","width":"801"},{"desc":"","height":"429","title":"","url":"https://p0.ssl.img.360kuai.com/t016233f33764bf4299.jpg","width":"1080"},{"desc":"","height":"774","title":"","url":"https://p0.ssl.img.360kuai.com/t016d74d6ab66f159ed.jpg","width":"1080"},{"desc":"","height":"758","title":"","url":"https://p0.ssl.img.360kuai.com/t011270dc5fcfc4405d.jpg","width":"842"},{"desc":"","height":"408","title":"","url":"https://p0.ssl.img.360kuai.com/t01dccf9834bb24d680.jpg","width":"752"},{"desc":"","height":"468","title":"","url":"https://p0.ssl.img.360kuai.com/t01d61ea155e9fd4a66.jpg","width":"472"},{"desc":"","height":"470","title":"","url":"https://p0.ssl.img.360kuai.com/t01fcd0c88be55fc1bf.jpg","width":"1080"}]}],"original":0,"pat":"zzc,art_src_3,fts0,sts0","powerby":"hbase","pub_time":1689136980000,"pure":"","rawurl":"http://zm.news.so.com/7dcee9c41c3b6c5e954fb6c238a199aa","redirect":0,"rptid":"70f284a25285c652","rss_ext":[],"s":"t","src":"量子位","tag":[{"clk":"ktechnology_1:微软","k":"微软","u":""},{"clk":"ktechnology_1:pdf","k":"pdf","u":""}],"title":"ChatGPT最强竞品重磅升级,免费可用!第一手实测在此

全郭咱686求一个最最简单的c++类的程序学习一下下
毛终咱19354744303 ______ 给你这个你看看: #include<iostream.h> class Tdate { public: void Set(int m, int d, int y ) { month = m; day = d; year = y; } int IsLeapYear() { return ( year%4 == 0 && year%100 != 0 )||( year%400 == 0); } void Print() { cout << year << "." << month << ...

全郭咱686C++简单程序
毛终咱19354744303 ______ 一般在cout前不用加std 直接: cout<"字符串"<<endl; endl是换行用的,可以随意写它的位置但必须在<<后面;

全郭咱686C++哪本教程比较经典? -
毛终咱19354744303 ______ 入门级的:C++ 编程宝典 C++ primer(稍难) 快速入门:C++ essenial 提高: Effective C++ More Effective C++ Exceptional C++ More Exceptional C++ 高级: Inside the C++ model Modern C++ design

全郭咱686帮忙提供几个使用栈或线性表的C++程序!要简单易懂,经典的! -
毛终咱19354744303 ______ #include #include #include #include #include // 堆栈的数组实现,数组的大小固定.templateclass stack{private: T *s; // 数组的首地址(栈底) size_t N; // 指向栈顶第一个空闲块 const size_t size; // 堆栈的大小,固定不变public: stack(size_t n)...

全郭咱686几种经典排序算法优劣比较的C++程序实现 -
毛终咱19354744303 ______ 一、低级排序算法1.选择排序 (1)排序过程 给定一个数值集合,循环遍历集合,每次遍历从集合中选择出最小或最大的放入集合的开头或结尾的位置,下次循环从剩余的元素集合中遍历找出最小的并如上操作,最后直至所有原集合元素都遍历...

全郭咱686求一些c++数组的经典题(带编程程序答案) -
毛终咱19354744303 ______ #include <stdio.h> #define FROMAT ″%d,%d\n″ void main() { int a[3][4]={1,3,5,7,9,11,13, 15,17,19,21,23}; printf(FORMAT,a,*a); printf(FORMAT,a[0] , *(a+0)); printf(FORMAT,&a[0],&a[0][0]); printf(FORMAT,a[1],a+1); printf(FORMAT,&a[1][...

全郭咱686编一个程序,用C++实现矩阵的cholesky分解 -
毛终咱19354744303 ______ 给,下面是Cholesky分解法的C++经典算法://-------------------------------------------------------------------// Cholesky分解法 //------------------------------------------------------------------- template <class T> int cholesky(Matrix<T>& mat, double epsilon=EPSILON) { size...

全郭咱686C++简单程序 -
毛终咱19354744303 ______ 首先没有声明system()函数 然后在第一次循环中return时就直接跳出rever()函数返回结果(自能返回一位数据 是错误的......)#include#include int rever(int num) { int m=0; while(num>0) { m=m*10; m=m+num%10; num=num/10; } return m; } int main() { int n,r; cin>>n; r=rever(n); cout system("PAUSE"); return 0; }

全郭咱686C++ 控制台程序 -
毛终咱19354744303 ______ 应该使用API做的,或者是用TC的BGI做的.控制台绝对是有用的(你所接触的编译器,就是控制台或者DOS的).控制台绝对不会比Windows繁琐,你可以简单的写一个Windows程序,自己设计一个窗口并显示,设计窗口类,注册窗口,创建窗口,显示窗口,更新窗口,消息循环,然后还得写回调函数……比控制台繁琐(WinMain函数的参数都很长,额~) Win32控制台编程这样的书……?一般来说C++入门都是从控制台开始吧?若干年前(应该十几年前了吧~?)Dos程序的游戏“很漂亮”是对于十几年前来说的,你用上古卷轴4的画面跟仙剑奇侠传DOS版比一比?(虽说当时仙剑已是很了不起的了,现在貌似也很经典……)

全郭咱686请问使用最普遍的C++开发工具是什么?
毛终咱19354744303 ______ 给你一个全面的C++开发工具集哦! ■...开发环境 ---->Turbo c DOS时代c语言开发的经典工具,目前适合两类人使用:c语言beginner(尤其是学生一族),具有怀旧...

(编辑:自媒体)
关于我们 | 客户服务 | 服务条款 | 联系我们 | 免责声明 | 网站地图 @ 白云都 2024