文心一言和讯飞星火全面对比测试:(五)编程能力

2023-10-29

相关文章:

实战 | 用ChatGPT处理word表格数据:直接采用ChatGPt和利用ChatGPT编写python脚本两种方法

「文心一言」 vs ChatGPT,结果没有你想向中的那么不堪

文心一言和讯飞星火全面对比测试:(一)语言理解能力

文心一言和讯飞星火全面对比测试:(二)任务完成

文心一言和讯飞星火全面对比测试:(三)常识问题

文心一言和讯飞星火全面对比测试:(四)逻辑数学

前文回顾:

(一)语言理解能力测试中,我们主要测试了两个大语言模型对复杂语义的理解、对文章情绪的识别、对文章进行摘要总结、对文章进行要素提取,测试结果表明:在语言理解能力上:除了有些问题他拒绝回答之外,讯飞星火的表现明显要好于文心一言,可以说很接近ChatGPT3.5的水平。

在(二)任务完成能力中,我们测试了模型对表格的处理能力,完成了藏头诗,拟定了跑步计划,总体发现,两个模型在这方面的能力上表现一般。

在(三)常识问题中,回答不够满意,不知到具体的原因,在逻辑推理上,文心一言和讯飞星火都要比ChatGPT差不少。最后,面对错误的问题,测试关公战秦琼和林妹妹倒拔垂杨柳,AI本着你胡说八道,我就更胡说八道的理念,基本上的就是错上加错。

在(四)逻辑数学中,测试了简单的逻辑推理和文字逻辑题,表现都不如意,测试了几个小学的数学题和奥数题,除了鸡兔问题外,其他的题完成也不好,AI在数学上的表现还要继续努力

今天我们来测试两个模型在编程能力上的表现。比较AI在编程能力上还是有优势的。

 1.测试内容设计

自深度学习使得AI技术进入跨越式发展阶段以来,业界就一直在尝试用AI来写代码。

他们自己也表明熟悉多种语言

文心一言:

讯飞星火:

ChatGPT:

测试分为两个方面:

1. 简单代码完成:常见入门级别的编程问题(洛谷入门级),主要的语言为Python和C++;

2. 代码阅读和debug:给一段代码,代码进行注释;根据AI自己编的错误程序,看能不能完成Debug。

2.简单逻辑推理

用例1:B2010 带余除法

请用Python和C++分别帮我编写程序实现如下功能:

给定被除数和除数,求整数商及余数。此题中请使用默认的整除和取余运算,无需对结果进行任何特殊处理。

输入:

一行,包含两个整数,依次为被除数和除数(除数非零),中间用一个空格隔开。

输出:

一行,包含两个整数,依次为整数商和余数,中间用一个空格隔开。

文心一言:

看程序,文心一言完成没有问题,但是他对输入输出的有问题,提醒后,依然没有修改。

讯飞星火;

这个程序输入到洛谷,可以通过100分

ChatGPT

程序正确,提交能够通过,100分。

用例2:B2048 计算邮资

用Python和C++编程计算邮费。计算规则如下:

根据邮件的重量和用户选择是否加急计算邮费。

重量在1000 以内(包括),基本费8 元;

超过1000 克的部分,每500 克加收超重费4 元,不足500克部分按500克计算;

如果用户选择加急,多收5元。

输入格式:

一行,包含一个正整数x(大于1小于10e6)和一个字符c(取值为y或n),之间用一个空格隔开,分别表示重量和是否加急。

如果字符是 y,说明选择加急;如果字符是 n,说明不加急。

输出格式:

输出一行一个正整数,表示邮费。

文心一言:

看程序,文心一言完全没有理解到题意,从前几次的测试上来看,文心一言的理解能力是比较差的,这样的程序肯定是通不过的。

讯飞星火;

讯飞星火的Python程序得了20%的分,主要问题在于计算加重没有扣除1000g,C++代码变量定义就有问题,编译没有办法通过,后面的逻辑也是和Python一样的错误。

ChatGPT

python,C++程序提交,10个测试点通过9个,一个应该是超重是500的倍数时,如图中标红的地点,就不要+1。

题目只是稍微变难一点,就拉开差距了。后面的测试觉得没有必要做了,很多的题目完成度太低,就不贴出来了

2.程序标注和debug

用例1:对一个简单的程序进行注释

文心一言:

标注得不错,但是输出不是很稳定,有时会出错。

讯飞星火:

回答也不错。

ChatGPT:

就标注来说,整体完成不错。

用例2:对程序进行Debug

选择的是ChatGPT编写的计算邮费的程序,指出当重量是2000时计算错误。

我用Python编程计算邮费。计算规则如下:根据邮件的重量和用户选择是否加急计算邮费。重量在1000 以内(包括),基本费8 元;超过1000 克的部分,每500 克加收超重费4 元,不足500克部分按500克计算;如果用户选择加急,多收5元。输入格式:一行,包含一个正整数x(大于1小于10e6)和一个字符c(取值为y或n),之间用一个空格隔开,分别表示重量和是否加急。如果字符是 y,说明选择加急;如果字符是 n,说明不加急。输出格式:输出一行一个正整数,表示邮费。

我编写的程序如下:

weight, is_urgent = input().split()

weight = int(weight)

basic_fee = 8

if weight > 1000:

overweight = weight - 1000

extra_fee = (overweight // 500 + 1) * 4

else:

overweight = 0

extra_fee = 0

if is_urgent == 'y':

total_fee = basic_fee + extra_fee + 5

else:

total_fee = basic_fee + extra_fee

print(total_fee)

但是,当重量超出部分刚好被500整除时,计算错误,请帮我修改程序,并将程序输出。

文心一言:

首先做了一个修改,但是这修改变得更差了,我提醒他:

我提醒他,但是,他就这样回答我?,是我的描述不对吗?算了吧

讯飞星火:

没有做任何的修改,提醒之后:

指出,但是就不改,像极了我自己,

ChatGPT:

当我提出整除出现错误时,立马体会到了我的意思,而且这个+499向上取整的做法也挺巧妙的,要我会加一个判断

差距啊,差距!!

提交,全部通过!

4.总结

今天测试了三个模型的编程能力,ChatGPT的能力还是可以的,我在其他的测试中已经体会道路,但是文心一言和讯飞星火还要努力。

关于文心一言和讯飞星火的测试就全部结束。

还有没有测试到的地方,或是测试方法有错误的地方,希望大家指出,后期看有没有时间做更详细的测试。

希望国产的AI大模型越来越好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

文心一言和讯飞星火全面对比测试:(五)编程能力 的相关文章

随机推荐

  • 使用Java的反射和字节码操作实现动态代码生成

    使用Java的反射和字节码操作可以实现动态代码生成 下面是一些步骤和示例代码 1 获取类对象 使用 Class forName 方法或直接使用类名获取类对象 java Class
  • openGL之API学习(一八一)glTexGen

    产生纹理坐标 opengl es无此函数 启用后 根据与该坐标关联的生成函数计算指定的纹理坐标 禁用时 后续顶点从当前纹理坐标集中获取指定的纹理坐标 void glTexGeni GLenum coord GLenum pname GLin
  • C/C++ 获取当前时间(最全方法)

    文章目录 一 获取当前时间 1 使用C语言标准库 2 使用VS提供的ATL模板库 3 使用Win API 二 代码解析 1 time函数 2 localtime函数 3 tm结构体 4 localtime s函数 5 CTime类 6 Ge
  • Redis基本了解

    Redis 基于内存进 存储 持 key value 的存储形式 底层是 C 语 编写的 基于 key value 形式的数据字典 结构 常简单 没有数据表的概念 直接 键值对的形式完成数据的管理 Redis 持 5 种数据类型 字符串 列
  • RecyclerView详解 —— 自定义分割线

    RecyclerView作为ListView和GridView的升级版 Google并没有提供默认的分割线实现 不得不说这是一大遗憾 不过Google为我们提供了一个与之相关的抽象类 public static abstract class
  • 使用Element-Ui的el-select组件无法选中回显的问题

    最近在实习开发中使用了Element Ui的select组件 在选择上级科目下拉后出现了下拉无法回显的情况 但是在科目名称一填内容 上级科目马上就回显了的情况 经过排查也并不是下拉框绑定的值有问题 最后是使用了Vue 官方提供了 vm fo
  • 基于SSM+JSP的高校信息资源共享平台管理系统

    项目背景 21世纪的今天 随着社会的不断发展与进步 人们对于信息科学化的认识 已由低层次向高层次发展 由原来的感性认识向理性认识提高 管理工作的重要性已逐渐被人们所认识 科学化的管理 使信息存储达到准确 快速 完善 并能提高工作管理效率 促
  • Git的git fetch, git merge和git pull, git rebase操作

    Git push merge pull fetch rebase各自在什么场景下使用 基本上顺序是这样的 你修改好了代码 准备要提交到远程仓库 但是此时有可能其他人已经在此分支上已经进行了修改 那么该如何操作呢 这里我们就使用之前模拟多用户
  • 解决 Maven 本地仓库有jar包,还是要到远程仓库去取的问题

    删除maven本地仓库jar包目录下的 lastUpdated 和 repositories 文件 即可解决 使用cmd命令批量清除 cd d cd d maven local repository 首先要进入本地仓库目录 for r i
  • osg传递数组到shader,(以qedl为例)

    一 对float类型的数组 osg ref ptrosg FloatArray m dampingPixelDist 赋值 void ccBilateralFilter updateDampingTable m dampingPixelDi
  • python提示错误TypeError: write() argument must be str, not bytes

    还是在学习 Machine Learning in Action 中决策树一章中 在学习决策树存储过程中先是提示错误TypeError write argument must be str not bytes 看错误信息是说write 函数
  • halcon与c#联合编程实现相机控制+图像平移缩放+日志记录+缺陷检测+路径规划

    halcon与c 联合编程实现相机控制 图像平移缩放 日志记录 缺陷检测 路径规划 前言 本人近期在工作中遇到需要对某场景下利用海康相机进行图像缺陷检测与对应路径规划 通过对海康相机示例代码进行吸收与借鉴 最终实现了对海康相机的控制 并增加
  • 【c语言】新手学习了switch后的思考总结

    今天初学switch 有了一下四方面的思考 其一 switch是一种语句 这是否意味它需要在某函数内使用 由于初学我的表达不一定准确 即不能独立出来 其二 switch的定位为在多分支的情况下的一种优于 ifelse 的语句 但它的优点在哪
  • css三列布局--两边固定中间自适应和中间固定两边自适应

    三列布局 本篇讲三列布局 面试常考题 自己总结的 如有什么问题 欢迎指出 我会用红色标注出主要作用部分 都是最精简的写法 没有多余的修饰 布局方式一 两边固定中间自适应 1 flex布局 思路 将父元素box设为display flex 可
  • 如果只能推荐3本关于python的书,你会推荐哪3本?

    如果只能推荐3本Python书的话 我推荐这3本 第一本 Python编程快速上手 让繁琐工作自动化 第2版 豆瓣评分8 9 本书是一本面向初学者的Python编程实用指南 本书不仅介绍了Python语言的基础知识 而且通过案例实践教读者如
  • 【QT】Halcon与VS的联合编程2

    1 Halcon代码的导出 导出为C 语言 进行机器视觉应用 在halcon界面的菜单栏项上选择 文件 导出 界面如下 导出之后 在上述导出文件的路径下 你就可以看到程序了 此时这个程序就和halcon没有关系了 就是独立的cpp文件了 2
  • Web3社交基础设施SBT

    今年年初 V神发表了一篇文章并提出soulbound token SBT 概念 5月份 又联合撰写了一篇 去中心化社会 找寻 Web3 的灵魂 让 去中心化社会 和 SBT 概念在大熊市又爆火一波 SBT到底是什么 有什么价值 在概念到应用
  • windows批处理命令总结(超详细滴)

    总结自 https baike baidu com item E6 89 B9 E5 A4 84 E7 90 86 1448600 fr aladdin 文件夹管理 cd 显示当前目录名或改变当前目录 md 创建目录 rd 删除一个目录 d
  • 成功解决Win10连接上wifi但是却显示“无Internet,安全”

    成功解决Win10连接上wifi但是却显示 无Internet 安全 目录 解决问题 解决方法 解决问题 解决Win10连接上wifi但是却显示 无Internet 安全 解决方法 先将wlan先禁用 然后重新启用wlan即可
  • 文心一言和讯飞星火全面对比测试:(五)编程能力

    相关文章 实战 用ChatGPT处理word表格数据 直接采用ChatGPt和利用ChatGPT编写python脚本两种方法 文心一言 vs ChatGPT 结果没有你想向中的那么不堪 文心一言和讯飞星火全面对比测试 一 语言理解能力 文心