【AI大模型】程序员AI的未来——Copilot还是Claude3.5 Sonnet?

近期,Anthropic发布了Claude 3.5 的“大杯”模型 —— Claude 3.5 Sonnet!

这次发布的 Sonnet 代表意大利的“十四行诗”,结构复杂,在智能水平、功能多样性和处理能力上都有所提升,能够应对更复杂的认知任务,提供更高质量的输出。

Claude 3.5 Sonnet 作为 Claude 3.5 系列的首个模型版本,在行业智能水平上取得了显著提升。它不仅超越了竞争对手的性能,还超越了自家的上一代“超大杯” Claude 3 Opus,同时保持了与中端模型 Claude 3 Sonnet 相同的速度和成本优势。

Sonnet 在研究生级推理(GPQA)、本科级知识(MMLU)和编程能力(HumanEval)方面都设立了全新的行业标准。

它在理解细微差别、幽默和复杂指令方面有显著提高,并能以自然、易于理解的语调撰写高质量内容。其运行速度是 Claude 3 Opus 的两倍,性能提升与成本效益相结合,使 Claude 3.5 Sonnet 成为复杂任务的理想选择,例如上下文敏感的客户支持和多步骤工作流程的管理。

划重点,在编程能力方面都设立了全新的行业标准。

我记得,ChatGPT4o的Copilot号称最强编程插件。

👉 GPT功能:

  1. GPT-4o知识问答:支持1000+token上下文记忆功能
  2. 最强代码大模型Code Copilot:代码自动补全、代码优化建议、代码重构等
  3. DALL-E AI绘画:AI绘画 + 剪辑 = 自媒体新时代
  4. 私信哪吒,直接使用GPT-4o

在这里插入图片描述

下面从7个方面,横向对比一下ChatGPT4o和Claude 3.5 Sonnet,看谁的编程能力更强。

round 1:图片识别能力

上传一张图片,是经典算法题“猴子吃桃”的题目。

PS:只上传图片,啥也不说,对比一下ChatGPT4o和Claude3.5 Sonnet的图片识别能力和理解能力。

原图:

ChatGPT4o

ChatGPT4o识别了图片内容,不过默认转化为了英文。

ChatGPT4o给出了解决方案,默认是Python语言。

ChatGPT4o最后给出了代码的解释说明:

Claude3.5 Sonnet

Claude3.5 Sonnet识别了图片内容,默认也是英文。

Claude也识别出这是一道算法题,并给出了解决问题需要的算法,不过只给出了一个简单的解题思路。

图片识别能力小结:

在我看来,ChatGPT4o完全理解了我的用意,不仅识别了图片内容,还给出了解题思路、代码示例和解释说明,图片识别能力堪称完美。

反观Claude3.5 Sonnet,只是识别了图片中的内容,给出了了一个简单的解题思路。

图片识别能力,ChatGPT4o完胜。

round 2:代码能力

Prompt:请根据上面描述,给出解题思路,通过Java代码解答此题,关键代码添加注释,并根据示例中的输入输出进行代码测试,代码如果有错误,请重新修改代码

ChatGPT4o

ChatGPT4o给出了解题思路、Java代码、代码解释、测试用例。

Claude3.5 Sonnet

Claude给出了解题思路、Java代码、代码解释、测试用例、时间复杂度。

验证代码正确率,我们将ChatGPT4o和Claude的代码Copy到Idea中,通过测试用例测试一下。

测试通过,通过率100%。

代码review:

如下图所示,左侧为ChatGPT4o,右侧为Claude3.5 Sonnet。

肉眼可见,ChatGPT4o代码共74行,Claude共54行,相差20行。Claude3.5 Sonnet明显更加简洁。

代码能力小结:

ChatGPT4o给出了解题思路、Java代码、代码解释、测试用例。

Claude3.5 Sonnet给出了解题思路、Java代码、代码解释、测试用例,还给出了算法的时间复杂度。

ChatGPT4o与Claude3.5 Sonnet的代码都没有问题,通过率100%。

通过review代码,Claude3.5 Sonnet明显更加简洁。

代码能力,Claude3.5 Sonnet小胜。

round 3:代码优化

PS:我们将“通过回溯算法解答猴子吃桃的代码”发给它们,让它们对代码进行优化。

ChatGPT4o

ChatGPT4o指出了代码存在4个问题:

  1. 效率低,递归回溯,时间复杂度为 O(N)
  2. 递归深度限制,可能会导致 StackOverflowError
  3. 不必要的排序
  4. 全局变量使用,不符合编码规范

ChatGPT4o给出了优化后的代码、关键点、下一步改进建议。

Claude3.5 Sonnet

Claude指出了代码存在4个问题:

  1. 效率低,递归回溯,时间复杂度为 O(N)
  2. 不必要的排序
  3. 全局变量使用,不符合编码规范
  4. 代码没有处理输入异常的情况

Claude给出了优化建议、优化后的代码、优化说明、小总结。

代码优化小结:

ChatGPT4o和Claude都指出了4项问题,给出了优化建议、优化代码,略有差异,区别不大。

代码优化能力,旗鼓相当。

round 4:解读代码

Prompt:请给出代码的解题思路

ChatGPT4o

ChatGPT4o给出了具体的解题思路、优化后的代码、代码解析、建议的下一步改进

Claude3.5 Sonnet

Claude3.5 Sonnet给出了优化后代码的解题思路:

  1. 问题分析
  2. 输入处理
  3. 初始验证
  4. 二分查找最小速度
  5. 验证函数
  6. 返回结果
  7. 分析代码优势

Claude3.5并没有再次输出代码,其实这一点是好评的,因为上面已经输出过了,完全没必要再次输出。

解读代码小结:

ChatGPT4o看似给的东西比较多,Claude3.5只是返回了解题思路。

但是,提示词就是输出代码的解题思路,ChatGPT4o反而有点本末倒置了。

解读代码能力,Claude3.5 Sonnet小胜。

round 5:测试用例及说明

Prompt:给出3个测试用例和说明

ChatGPT4o

ChatGPT4o给出了三个测试用例,涵盖了不同的场景、完整代码及测试用例、测试用例结果

Claude3.5 Sonnet

Claude3.5 Sonnet给出了3个测试用例,并对每个用例进行详细说明。

这些测试用例涵盖了几种不同的情况:

  1. 正常情况,需要计算的最小速度
  2. 需要较高速度才能完成的情况
  3. 无法完成任务的情况(时间不足)

解读代码小结:

ChatGPT4o给出的东西很多,又输出一遍完整代码,但是回答内容有些重复。

Claude3.5 Sonnet给出了3个测试用例,并对每个用例进行详细说明,还指出了3个测试用例覆盖了3种不同的情况。

测试用例及说明能力,Claude3.5 Sonnet小胜。

round 6:Java转Python

Prompt:将代码转为Python语言

ChatGPT4o

ChatGPT4o给出了Python代码、关键代码解析、测试用例

Claude3.5 Sonnet

Claude3.5给出了Python代码、解题思路、时间复杂度

转码能力小结:

ChatGPT4o和Claude3.5都给出了Python代码、解题思路、测试用例,测试后,通过率100%。

转码能力,旗鼓相当。

round 7:添加注释

ChatGPT4o

Claude3.5 Sonnet

ChatGPT4o和Claude3.5都为Python代码添加了详细的代码注释,能力堪称顶级。

添加注释能力,旗鼓相当。

总结

我们分别从七大方面对比了ChatGPT4o和Claude3.5 Sonnet。

  1. 图片识别能力,ChatGPT4o完胜
  2. 代码能力,Claude3.5 Sonnet小胜
  3. 代码优化能力,旗鼓相当
  4. 解读代码能力,Claude3.5 Sonnet小胜
  5. 测试用例及说明能力,Claude3.5 Sonnet小胜
  6. 转码能力,旗鼓相当
  7. 添加注释能力,旗鼓相当

就今天的测试而言,我们不难看出,Claude3.5 Sonnet在代码能力方面,小胜ChatGPT4o。

屏幕前的你,是不是也想试一下打败了Copilot的Claude3.5 Sonnet。

👉 GPT功能:

  1. GPT-4o知识问答:支持1000+token上下文记忆功能
  2. 最强代码大模型Code Copilot:代码自动补全、代码优化建议、代码重构等
  3. DALL-E AI绘画:AI绘画 + 剪辑 = 自媒体新时代
  4. 私信哪吒,直接使用GPT-4o

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1486595.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

解决VS2019+Qt联合开发双击Resource Files弹不出资源编辑器问题

目录 一、右键Resource.qrc文件 二、选择打开方式 三、鼠标选择Qt Resource Editor,并设置为默认值 四、最后点击确定,再次双击qrc文件,成功打开 最近在开发中,遇见一个问题,在VS联合Qt开发时,需要添加…

前后端分离项目部署,vue--nagix发布部署,.net--API发布部署。

目录 Nginx免安装部署文件包准备一、vue前端部署1、修改http.js2、npm run build 编译项目3、解压Nginx免安装,修改nginx.conf二、.net后端发布部署1、编辑appsetting.json,配置跨域请求2、配置WebApi,点击发布3、配置文件发布到那个文件夹4、配置发布相关选项5、点击保存,…

推荐一款基于 SpringBoot2 的后台管理系统脚手架,非常轻量简单(附源码)

前言 在现代软件开发中,后台管理系统是企业数字化转型的关键组成部分。然而,现有软件常常存在一些痛点,如复杂的权限管理、缺乏灵活的工作流配置、监控和日志功能不完善等。此外,许多系统study 成本高,依赖关系复杂&a…

VS2015加断点(红色),修改过后,断点变为白色不能命中

实际这个问题是因为:源文件和原始版本不同。解决方法有二: 一,在断点上右键,选择“位置”》勾选”允许源代码与原始版本不同; 二,点击菜单栏“调试”》“选项和设置”》“常规”》去掉“要求源文件与原始…

MINE:Mutual Information Neural Estimation

Mutual Information Neural Estimation 摘要 文章认为高维连续随机变量之间的互信息可以通过在神经网络上梯度下降优化得到。 文中提出了互信息估计器(Mutual Information Neural Estimator),它在维度和 样本大小上都是可伸缩的,可以通过反向传播训练的&#xff0…

OCC 布尔运算

目录 一、裁剪原理 二、使用详解 1. 差集 (Cut) 2. 联合 (Fuse/Union) 3. 交集 (Common/Intersection) 三、例子 1、两个盒子裁剪 2、任意面裁剪 四、总结 一、裁剪原理 OpenCASCADE (OCC) 中的裁剪(Boolean Cut)原理主要基于布尔运算。布尔运算是计算机图形学中的…

力扣第二十四题——两两交换链表中的节点

内容介绍 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 示例 1: 输入:head [1,2,3,4] 输出&#xff…

Python-numpy基础--------2

1.full()创建函数 目录 1.full()创建函数 2.创建单位矩阵 3.linspace创建 4.logspace 创建 5.二维数组的索引和切片: 1.索引直接获取 在NumPy中,full() 函数用于创建一个给定形状、类型的新数组,并用指定的值填充这个数组。这个函数非…

数模·插值和拟合算法

插值 将离散的点连成曲线或者线段的一种方法 题目中有"任意时刻任意的量"时使用插值,因为插值一定经过样本点 插值函数的概念 插值函数与样本离散的点一一重合 插值函数往往有多个区间,多个区间插值函数样态不完全一样,简单来说就…

AWS监控工具,监控性能指标

执行AWS监视是为了跟踪在AWS环境中主动运行的应用程序工作负载和资源,AWS监视器跟踪各种AWS云指标,以帮助提高在其上运行的应用程序的整体性能。 借助阈值突破警报系统,AWS应用程序监控在识别性能瓶颈来源方面起着至关重要的作用&#xff0c…

linux版mysql8配置表名不区分大小写

mysql8的安装步骤可参考: mysql8的安装步骤 如果在安装mysql8,初始化之前,没有在my.cnf配置忽略大小写配置: [mysqld] lower_case_table_names1我们就需要重新初始化mysql 1 备份数据库文件 2 停止mysql服务 systemctl stop …

HTML+CSS+JS扫雷(可自定义雷数,大小,可插旗)

源代码在最后面 点赞❤️ 关注⭐️谢谢&#x1f61c; 实现功能 随机扫雷自定义地雷数、游戏棋盘大小插旗 效果图&#xff08;部分图片&#xff09; 源代码 <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><m…

学习TS-类

class Car{ // 字段 name : String; age : Number; //静态 静态成员可以直接通过类名调用 static shooch:string; // 构造函数 // 构造函数会在对象创建时调用 constructor(name:string,age:Number){ //在实例方法中&#xff0c;this就表示当前当前的实例 //在构造函数中当前对…

kettle从入门到精通 第七十九课 ETL之kettle kettle读取数据库BLOB字段转换为文件

上一课我们讲解了如何将文件以二进制流的方式写入数据库&#xff0c;本节课我们一起学习下如何将二进制数据读取为文件。 1、将二进制流转换为文件这里主要用到了步骤【文本文件输出】。表输入步骤从表中读取blob字段&#xff0c;java代码定义二进制流转换为文件的全路径&#…

openmv学习笔记(24电赛笔记)

#opemv代码烧录清除详解 openmv的代码脱离IDE运行程序&#xff0c;只需要在IDE中将代码烧录道flash里面&#xff0c;断开IDE连接&#xff0c;上电之后&#xff0c;会自动执行main.py中的程序&#xff0c;IDE烧录的时候&#xff0c;会默认将程序后缀保存为 .py文件。 ​​​​​…

SpringBoot3整合Druid报错Cannot load driver class: org.h2.Driver

报错显示springboot自带的H2数据库报错&#xff0c;其实是因为druid并未加载进去。如果你其它配置都没问题的话&#xff0c;请检查druid的依赖是什么版本的&#xff0c;因为springboot3刚开始是不支持druid的。 方案一&#xff1a; 即需要手动在resources目录下创建META-INF/s…

利用request + BeautifulSoup 模块批量爬取内容,实现批量获取书名对应的豆瓣评分

文章目录 代码代码解释控制台输出结果 代码 #-*- coding:utf-8 -*- from bs4 import BeautifulSoup import requests, time, jsonheaders {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.39…

实际生活中网段不通的典型分析及处理方案

关于端口&#xff1a; 应用层&#xff1a; FTP TELNET SMTP DNS TFTP SNMP 端口号&#xff1a; 21 23 25 53 69 161 传输层&#xff1a; TCP UDP&#xff08;DNS两个都占…

《Java初阶数据结构》----3.<线性表---LinkedList与链表>

目录 前言 一、链表的简介 1.1链表的概念 1.2链表的八种结构 重点掌握两种 1.3单链表的常见方法 三、单链表的模拟实现 四、LinkedList的模拟实现&#xff08;双链表&#xff09; 4.1 什么是LinkedList 4.2LinkedList的使用 五、ArrayList和LinkedList的区别 前言 …

【C++中的IO流和文件操作精讲】

【本节目标】 1. C语言的输入与输出 2. 流是什么 3. CIO流 4. stringstream的简单介绍 1. C语言的输入与输出 C语言中我们用到的最频繁的输入输出方式就是scanf ()与printf()。 ⭐scanf(): 从标准输入设备(键盘)读取数据&#xff0c;并将值存放在变量中。 ⭐printf(): 将…