AI找Bug,一键快速预测
作者 | Jane
出品 | AI科技大本营(ID:rgznai100)
在程序开发中,程序员每天都要和 Bug 打交道,对新手程序员而言,debug 是一件非常让人头疼的事情。好不容易写完一段代码,一运行,全是红色,找了好几圈,被几个符号累瞎了眼。
而且不同的编程语言的错误类型也不同。比如 JavaScript 定义了一些错误类型:Error(错误)、EvalError(全局错误)、RangeError(引用错误)、ReferenceError(参数错误)、SyntaxError(语法错误)、TypeError(类型错误)、URIError (编码错误)等;同样 Python 中也有几十种错误类型。
大家在学写代码的同时应该也学过一些解决 bug 的方法。比如,刚开始写的代码都比较简单,没有太过复杂的逻辑与实现,最直接的方法就是从头逐行检查,检查的时候注意 error 中提到的问题,是否括号少了另一半?是否哪个变量声明错了等等。比如刚学 C++ 的时候,出错时先检查 ; 、{}、() 是不是都有;再熟练一些,代码量增加,从语法错误到逻辑错误,大家会逐渐用到其他的方法或工具。有网友总结“初级码农靠编译器,中级码农用调试器,中高级码农靠写日记,而高级码农靠冥想和顿悟”。
今天营长要给大家介绍一款可以帮助大家快速预测、分析 bug 原因的工具:code-with-ai。操作非常简单,只要两步就可以给出可能存在的错误及其可能性。
操作简单,只需两步
1.把 error 描述复制粘贴到输入框中
2.点击搜索,一键即可。
无需登录,即可使用。
工具地址:
https://code-with-ai.app.render.com
支持多语言
营长先是用 Python 语言简单检测了一下效果,看看到底给出哪些参考结果,随后又分别随机挑选了不同语言的报错提示。
比如,用 Python 最简单的 print 语句试验,如果我要输出 AI科技大本营,正确的语句为 print("AI科技大本营");随意更改语句中的 () 或 "",制造一些错误,来看看 code-with-ai 会给出怎样的分析结果:
print(AI科技大本营)
#去除 ""
可能有两种原因,一是 implement 问题,概率为 22%,二是 data structures,错误概率 52%。
print("AI科技大本营)
#只有一个 "
分析结果提示优先注意 strings 错误,其次是 data structures 错误。
print("AI科技大本营")
#英文括号改成中文括号
看了以上三个简单的试错,对 code-with-ai 的原理和功能大家应该有了基础的了解,通过给出的预测,可以在相应位置先从概率较高的问题类型开始检查。
接下来营长又随机挑选了不同语言的问题报错:
C++ 报错:
Java 报错:
JS 报错:
营长只是用最简单的代码进行测试,大家可以用自己项目中的 error 测试一下,根据概率提供的优先级进行快速分析。
关于作者
研发这个神奇工具,造福万位码农的作者是一位印度开发者——Gaurav Arora,毕业于印度 Chandigarh PEC 理工大学。学习期间参与了多个编程和机器学习项目,并且是一名深度学习爱好者,热衷于解决对数百万人有影响力的复杂问题。
目前在高盛用户体验组中担任技术分析师,在高盛实习期间,为公司构建和维护 UI 工具包。也曾是创业项目 Researchshala 的联合创始人,Researchshala 是一个在线平台,有 40 多个研究项目,将教授和研究实习生联系起来,帮助他们完成研究项目,有 90 多名学生在卡内基梅隆大学、印度理工学院等大学的教授手下工作。
最后附上作者个人 Github 地址:
https://github.com/goru001
今天你的Bug都解决了吗?欢迎大家试用并交流~
(本文为 AI科技大本营原创文章,转载请微信联系 1092722531。)
——————————————— 征稿 ————————————————
推荐阅读:
2019最新实战!给程序员的7节深度学习必修课,最好还会Python
知否?知否?一文看懂深度文本分类之DPCNN原理与代码
PDF翻译神器,再也不担心读不懂英文Paper了
Facebook增强版LASER开源:零样本迁移学习,支持93种语言
Caicloud 开源 Nirvana:让 API 从对框架的依赖中涅槃重生
程序员有话说 | 那个拒绝加班的程序员后来怎么样了
告别摩拜
6大改进:盘点以太坊的2018冒险之旅
不难!月薪 50K大牛,悉心整理程序员必备技能!
相关文章:

专业研究HP procurve网络、阿姆瑞特和系统集成的论坛
一个专业研究HP procurve网络、阿姆瑞特防火墙和系统集成的论坛http://www.vlan2.com确实不错。转载于:https://blog.51cto.com/showrouter/284235

到底是什么特征影响着CNN的性能?
作者 | 刘畅 编辑 | Jane出品 | AI科技大本营(ID:rgznai100)开门见山。最近阅读了一篇论文,加上看了一些之前的工作。记录一下,CNN 到底学到了什么东西,或者换句话讲。到底是什么样的特征在影响着CNN 的性能࿱…

Java数据结构与算法(八)-二叉树
一、为什么要使用树 有序数组插入、删除数据慢。链表查找数据慢树可以解决这两个问题二、相关术语 树的结点:包含一个数据元素及若干指向子树的分支;孩子结点:结点的子树的根称为该结点的孩子;双亲结点:B 结点是A 结点…
linux驱动:i2c驱动(四)流程图之注册驱动
二、i2c设备的驱动部分 1、i2c驱动i2c_driver 2、通过i2c_add_driver注册 2、注册过程中 比较i2c_device_id数组中各成员的id与i2c_client中的名字,找到设备 3、执行i2c_driver驱动中的probe

Expression Blend实例中文教程(2) - 界面快速入门
上一篇主要介绍Expression系列产品,另外概述了Blend的强大功能,本篇将用Blend 3创建一个新Silverlight项目,通过创建的过程,对Blend进行快速入门学习。 在开始使用Blend前,首先需要进行Silverlight的开发环境搭建&…
Lua基本语法-书写规范以及自带常用函数
Lua基本语法-书写规范和常用函数本文提供全流程,中文翻译。Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) 1String Operation —— 字符串操作2Table ——…

linux驱动:音频驱动(一)ALSA
一、【基础知识】 1、J2 《--HPR_OUTHPL_OUT 《-- U13(TLV320AIC3104IRHBR)的HPROUTHPLOUT 2、驱动源码 IPNC_RDK_V3.8.0.1/Source/ti_tools/ipnc_psp_arago/kernel/sound/soc/codecs/tlv320aic3x.c 3、依赖于I2C驱动 4、声卡驱动框架:…

秘籍 | 机器学习数据集网址大全
作者 | Will Badr译者 | Linstancy整理 | Jane出品 | AI科技大本营(ID:rgznai100)要找到一定特定的数据集可以解决各种机器学习问题,是一件很难的事情。越来越多企业或研究机构将自己的数据集公开,已经成为全球的趋势,…

为asa防火墙配置ssh登陆
由于最近事情超多,单位下发某些令人恶心的制度,今天突然说北京分公司和总公司之间要做***的连接,虽然俺是个CCNP,但是对于***来说接触的少之又少,并且工作繁忙,每天头大,北京分公司的安全ie同事…

70.nodejs操作mongodb
转自:https://www.cnblogs.com/whoamme/p/3467374.html 首先安装nodejs mongodb npm install mongodb var mongodb require(mongodb); var server new mongodb.Server(localhost, 27017, {auto_reconnect:true}); var db new mongodb.Db(mydb, server, {saf…

明晚8点公开课 | 用AI给旧时光上色!详解GAN在黑白照片上色中的应用
在改革开放40周年之际,百度联合新华社推出了一个刷屏级的H5应用——用AI技术为黑白老照片上色,浓浓的怀旧风勾起了心底快被遗忘的时光。想了解如何给老照片上色?本次公开课中,我们邀请到了百度高级研发工程师李超,他的…

linux驱动:音频驱动(二)ASoc
五、【ASoC声卡驱动框架】 1、ASoC将嵌入式设备的音频系统从软件层面划分为3个组件 1.1 codec驱动:音频编解码器驱动,与平台无关,实现音频控制项添加、音频接口实现、DAPM(动态音频电源管理)、音频编解码器的IO功能 …

把32位的SharePoint服务器场迁移到64位, 应该怎么做?
总体步骤如下: 1. 迁移已经存在了的数据库服务器到新的数据库服务器. 先迁移这一层的目的是避免可能发生的一些由64位系统对32位系统执行查询或写入操作所引起的性能问题. 2. 迁移WFE服务器到64位环境下. 准备工作: 1. 重新编译已经存在的32位的应用程序和自定义的程序集(web p…

testem方便的web tdd 测试框架使用
备注:单元测试,对于日常的开发是比较重要的,testem 简化了我们的代码编写,以及运行。主要特性:a. 支持的测试框架有:jasmine quint mocha buster.js ,同时也包含一些其他的适配器,支…
linux驱动:音频驱动(三)ASoc之machine驱动及card初始化
一、machine驱动及card初始化

程序员老在改Bug,就不能一次改好吗?
作者丨伍杏玲来源 | 程序人生(ID:coder_life)程序员的日常三件事:写Bug、改Bug、背锅。连程序员都自我调侃道,为什么每天都在加班?因为我的眼里常含Bug。但是真的有这么多Bug要改吗?就不能一次改…

一场库文件的远程修复
一场库文件的远程修复系统环境RHEL 4.7一、原因:发现每天早上7点1分备份的数据库文件时间不对,登录上去后date下发现时间是正确。二、尝试解决:1)setup->Timezone configuration-> Asia/Shanghai保存后,发现由原…
linux驱动:音频驱动(四)ASoc之machine设备
linux驱动:音频驱动(四)ASoc之machine设备

Sql server Insert执行的秘密(下) 带外键的INSERT分析
2019独角兽企业重金招聘Python工程师标准>>> 这一篇分析一下带外键表的INSERT的例子。 本文所用的数据表结构如上图所示;其中Blog表上BlogID是自增的主键,并在CreateUserID和CreateTime列上分别建有两个非唯一索引。 我们要往Blog表中插入一…

熬夜写代码,不如换女装入GitHub获上千Star?
作者 | 琥珀出品 | AI科技大本营(ID: rgznai100)程序员如何以合规手段快速获得 GitHub 上千 Star?新年刚过,GitHub Trending 上一个名为“Dress”的开源项目迅速蹿红,并成功掀起了不少程序员及吃瓜群众的热议。项目地址…

CCNp笔记(EIGRP)
EIGRP<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />特性1属于混合路由协议具有距离矢量路由协议的特性,又有链路状态路由协议的特性。2属于高级距离矢量路由协议3快速收敛4保证100%无环路5增量更新6支持默认4条最多…
linux驱动:音频驱动(五)ASoc之codec驱动
linux驱动:音频驱动(五)ASoc之codec驱动

科大讯飞市值腰斩背后,AI产业集体思考如何落地?
作者丨郭敏本文经授权转载自钛媒体(ID:taimeiti)【导语】在过去的一年里,科大讯飞受到了多方质疑,质疑的声音不外乎盈利疲软、靠政府补助、技术优势逐渐变弱等,种种质疑背后,其实整个 AI 产业从…

zabbix系列之邮件告警(三)
设置邮件告警有两种方式:1)、通过Linux自带的mail发送告警邮件2)、通过第三方邮箱发送(如QQ邮箱、163邮箱等)告警邮件1、修改 zabbx_server.conf 文件,指定脚本路径,没有则添加[rootcentos1 ~]# vim /usr/l…

Python告诉你:为何年终奖多发一元,到手却少两千多?
作者 | shenzhongqiang来源 | Python数据与分析(ID:ML_Python)年终奖多发一元,到手却要少两千多,甚至更多。听到这个消息的时候,大家是不是觉得有点意外,意外之余还有点淡淡的忧伤?上…

[译]一个系统管理员眼中的DevOps
前言 原文发表在Patrick Debois大神的官网上,传送门>> 通篇围绕运维工作进行阐述,始终是在强调运维人员和开发人员需要通力协作,这大概也是DevOps理念的核心价值所在吧!大概是因为作者来自比利时吧!翻译的时候还…
linux驱动:音频驱动(六)ASoc之codec设备
linux驱动:音频驱动(六)ASoc之codec设备

屏蔽“网页上有错误”提示,屏蔽java script 错误的代码
<script>window.onerrorhide_error_message;functionhide_error_message(){returntrue;}</script>代码再简写一点,就是: <script type"text/java script ">window.onerrorfunction(){returntrue;}</script >原来只要让…

linux驱动:音频驱动(七)交叉编译alsa库及工具集alsa-utils
0、编译时用到的库 libunistring0_0.9.3-5_i386.deb libgettextpo0_0.18.1.1-5ubuntu3_i386.deb gettext_0.18.1.1-5ubuntu3_i386.deb 1、下载源码 alsa-lib-1.0.27.tar.bz2 alsa-utils-1.0.27.2.tar.bz2 一、交叉编译alsa lib 1、su 进入root用户 2、进入/home/MY/evm-lin…

Python一键转Java?“Google翻译”你别闹
作者 | 若名出品 | AI科技大本营(ID:rgznai100)近日,Reddit 上有网友放出了一张疑似 Google 翻译添加了能让编程语言间互相转换的图片,立即引发数千名程序员网友的跟帖热议。图片显示,Google 翻译中添加了编程语言进行…