• 搜索
官方微信群 扫码添加,拉你进群
订阅号
服务号
跨境资讯

为你推送和解读最前沿、最有料的跨境电商资讯

90% 亚马逊卖家都在关注的微信公众号

精选今日跨境电商头条资讯

今日出海简讯

网商动力
跨境电商,致力于提供一手资讯、干货知识。
2019-07-11 17:26:04
5

选自code.Facebook

作者:Yue Jia、Ke Mao、Mark Harman

机器之心编译


请注意:这不是你写 Bug 的理由。


调试代码是件很无聊的事,但是由 Facebook 工程师创建的新型人工智能混合工具——SapFix 可以大大节约工程师的时间,同时还加快了新软件的推出过程。该工具可以为特定 Bug 自动生成修复程序,然后将其提交给工程师批准并部署到生产中。


SapFix 被用来加速向装有 Facebook Android 应用程序的数百万设备传输稳定代码更新的过程,这是人工智能测试和调试工具在此类大规模生产中的首次应用。Facebook 打算与工程界分享 SapFix,因为这是自动化调试发展的下一步,可能为很多公司和研究机构促进新代码的产量和稳定性。


SapFix 被设计成一个独立的工具,无论有或没有 Sapienz(Facebook 的一款智能自动化软件测试工具,在 F8 版本时发布,已部署到生产中),它都可以运行。在目前的概念验证状态,SapFix 在部署到生成前专注于修复 Sapienz 发现的 Bug。此过程从 Sapienz 开始,连同 Facebook 的推断静态分析工具一起,能帮助定位代码中需要修复的 Bug。一旦 Sapienz 发现并推断出与 Bug 相关的特定部分代码,它就可以将该信息传递给 SapFix,后者会自动参考一些策略并生成补丁。


SapFix 是如何 debug 的


上图说明 SapFix 如何为软件 Bug 生成补丁。


为了解决高触发 bug,SapFix 创建的补丁可以完全或部分还原初始代码。对于更复杂的问题,SapFix 通过从模板修复集合中提取素材生成补丁。这些模板是从人类工程师创建的模板中自动获取的,而后者则是基于过去的修复库创建的。


当以前用过的由人类设计的模板不合适时,SapFix 将尝试基于突变进行修复。为此,它将对导致崩溃的语句的抽象语法树(AST)执行小型代码修复,调整补丁,直到找到可能的解决方案。


自主验证和人工审批


即使 SapFix 找到了特定的补丁,它的工作还远远没有结束。该工具为每个 Bug 生成多个潜在的补丁,并通过三个问题评价补丁的质量。即是否存在编译错误、程序是否仍然会崩溃,以及补丁是否引入了新的冲突?


为了解决最后两个问题,SapFix 在修复版本上运行已存的、开发者编写的测试,同时还会运行由 Sapienz 创建的测试。与之前补丁生成步骤一样,验证过程会自动执行,且与更大的代码库实现分离。SapFix 正在复制目前由人工完成的调试工作,但它并不是为了将补丁部署到产品代码中而设计的。


当自动生成的补丁经过全面测试后,SapFix 会将它们发送给人工评审员进行批准。这有些类似于人工生成的报告需要由其他开发者进行检查与审批,此外系统除了会自动追踪评审者的反馈外,它还会接受经批准的补丁、清理其它未经批准的补丁。在某些情况下,SapFix 可以从多个候选补丁中选择最佳的解决方案,并向工程师提出建议。


该工作流展示了 SapFix 如何基于它生成的补丁寻求工程师的反馈。


如果修补方案被拒绝,它将丢弃补丁,如果被接受,则加载。由于 SapFix 的底层技术非常强大,且自动运行节省了大量时间和精力,因此 SapFix 无法实现自己提出的补丁。工程师通常比较专业,该工具依赖工程师的专业知识来确认是否应该部署提出的补丁。


由于 SapFix 仍在开发阶段,因此它无法像 Sapienz 那样投入大规模使用,Sapienz 现在每月生成数百个 Bug 报告,精准定位有 Bug 的代码行,它审核与安卓设备上的 Facebook、Instagram、Workplace 和 Messenger 等 app 相关的代码。Sapienz 的报告中大约有 3/4 的 bug 是由开发者修复的。而 Facebook 八月份开始测试 SapFix,该工具可以成功生成能够被人类工程师接受的补丁,并进入生产阶段。


为完全自动化 debug 奠定基础


Facebook 称,这标志着机器生成的补丁(经过自动化端到端测试和修补)首次部署到 Facebook 规模的代码库。这是 AI 技术的重要里程碑,进一步证明了基于搜索的软件工程可以减少软件开发中的问题。Facebook 开发 SapFix 用于处理不同种类的 bug 和软件,因此该工具有可能改变代码生成的速度和质量。这不仅适用于大规模运营的企业,还适用于几乎所有写代码的个人。不管是用于组织还是个体,SapFix 和 Sapienz 都能帮开发者减少花在 debug 上的时间,把精力用在生成更多的代码上。


即使有了这项工作,Facebook 仍想鼓励社区继续研究自动调整、改进代码。在这一领域,已经有了很多激动人心的研究,包括技术的实证研究、供社区研究解决的开放性难题与挑战,以及对近期自动改进代码的调查。作为在 Facebook 规模下部署的首个工具,SapFix 将为此挑战性研究提供新的动力与能量。


Facebook 称,将在完成额外的工程部分后,开源 Sapienz 和 SapFix。而有关这些工具的反馈会帮助相关研究者,也会帮助更广泛的 AI 社区改进自动寻找、修改代码 Bug 的任务。Facebook 目前聚焦在 SapFix 如何自动制止代码崩溃,但更长期的应用应该包括如何让软件更快、反应更敏捷。这些系统提供了极大的基线收益,开发者使用它们时效果是多变、宽泛的。 





二维码
我们建了一个亚马逊卖家交流群,里面不乏很多大卖家。
现在扫码回复“ 加群 ”,拉你进群。
目前30万+人已关注加入我们
声明:此文章来源于网络,不代表网商动力立场。如有侵权,请联系我们。
快给朋友分享吧!
0 赞
最新
【卖方通跨境早报】亚马逊占据德国电商市场56%份额;亚马逊销售额大多来自于第三方卖家;eBay发布有害物质刊登新规
【卖方通跨境早报】亚马逊占据德国电商市场56%份额;亚马逊销售额大多来自于第三方卖家;eBay发布有害物质刊登新规
5月29日 周一《卖方通》>>>跨境早报60秒 知晓跨境电商大小事情!【05.31】-【舞动八闽 品耀全球】亚马逊全球开店卖家峰会报名链接:http://mtw.so/68757h 1.根据HDE...
冲上亚马逊热销榜!TikTok又带火一波家居产品!
冲上亚马逊热销榜!TikTok又带火一波家居产品!
卖方通获悉,在TikTok病毒式短视频的传播下,亚马逊上的一些创意家居产品持续爆火。以下这几款产品,销量呈持续上升趋势。 一、Shave Well防雾浴室镜 这款产品凭借其优...
Tokopedia美容和个人护理类目销量翻倍!热卖产品公布!
Tokopedia美容和个人护理类目销量翻倍!热卖产品公布!
卖方通获悉,近日,Tokopedia报告说,由于防疫措施解除,人们恢复户外活动,彩妆和护肤品的需求大增。 虽然疫情已经结束,但印尼人仍然依赖网上购物。一项调查显示,2023年,印尼...
Asos达成再融资协议!融资7500万英镑!
Asos达成再融资协议!融资7500万英镑!
卖方通获悉,Asos已从股东那里筹集了7500万英镑,并达成了一项基于资产的贷款再融资协议,以加强其资产负债表。这家零售商目前正处于巨额亏损的扭亏为盈计划中,已与专业...
全是商标维权案!GBC新代理CHRYSLER 克莱斯勒汽车超多商标维权和化妆品商标COLOURPOP立案维权!
全是商标维权案!GBC新代理CHRYSLER 克莱斯勒汽车超多商标维权和化妆品商标COLOURPOP立案维权!
CHRYSLER 克莱斯勒汽车23-cv-3304/3308 CHRYSLER 克莱斯勒汽车FCA US LLCGBC品牌介绍原告FCA US LLC是一家跨国汽车制造公司,是世界上最大的汽车制造商之一,在美国...
干货|活动期间网站如何配合烘托促销气氛
干货|活动期间网站如何配合烘托促销气氛
旺季来临,大多独立站都在为产品提供优惠,这是提高网站转化率以及培养客户忠诚度的有效途径。不过我们发现,尽管有些独立站折扣力度高达60%,但是进入网站后并没有凸显...
Copyright ? 2016-2022 ? ? 亚马逊卖家导航? ? 晋ICP备20005961号-2 声明:网站上的服务均为第三方提供,与网商动力无关。请用户注意甄别服务质量,避免上当受骗。