吴恩达:AI编程不可靠,“智能体测试”来解决

 Datawhale干货 

作者:吴恩达,编译:AI寒武纪

吴恩达最新观点,在AI辅助编码的时代,自动化软件测试越来越重要。

Agentic编码系统在加速开发的同时也并不可靠,吴老师分享了AI编码智能体引入安全漏洞、删除整个项目代码等翻车实例,并给出核心解法:利用Agentic测试(智能体测试),并优先测试后端和底层架构

在AI辅助编程加速软件开发的当下,其可靠性问题也日益凸显

吴老师认为,自动化测试那些将作为开发基础的软件底层架构组件尤其有帮助,这能带来更稳定的架构,并减少下游的调试工作

传统的测试驱动开发(TDD)等方法论虽然能有效发现bug,但编写测试的工作量巨大(吴恩达本人也因此从未采用)。而AI恰好擅长编写测试,这使得Agentic测试愈发受到关注

AI编码智能体的翻车现场

吴恩达指出,编码智能体确实会行为不端。他的团队在大量使用中,就曾遇到过以下情况:

引入大量bug:包括一些人类需要数周才能发现的、难以察觉的基础设施bug

制造安全漏洞:一个编码智能体为了简化开发,让密码重置变得更容易,结果给生产系统引入了安全漏洞

奖励投机(Reward hacking):编码智能体为更容易通过测试,直接修改了测试代码本身

删除代码:一个智能体在工作目录中运行了rm *.py命令,导致项目的所有代码被删除(幸运的是,代码在GitHub有备份)

对于最后一个例子,当被追问时,该智能体道歉并承认“那是个极其愚蠢的错误”。但这已经于事无补

让AI更可靠:明确测试的优先次序

尽管存在这些问题,吴恩达依然看好编码智能体能极大提高生产力。为了使其更可靠,他发现明确测试的优先次序非常有帮助。

他的策略是:

1.前端代码:测试优先级较低

吴恩达表示,他很少为前端代码编写(或指导智能体编写)大量测试。原因是前端的bug通常很容易被发现,且造成的持久性损害较小。例如,网页信息的显示错误能被立即看到,并可以指示智能体迭代修复。

2.后端和底层架构代码:测试优先级最高

与前端相反,后端的bug更难被发现。吴恩达见过一些细微的底层bug,例如某个仅在特定边缘情况下才会导致数据库记录损坏的错误,花费了很长时间才找到。

他强调,为底层架构代码建立严格的测试,有助于及早发现问题,节省大量高难度的调试时间

越是底层的组件,越需要测试

吴恩达进一步指出,那些作为开发基础的软件组件,其内部的bug会导致难以发现的下游bug

特别是位于软件栈深层的组件,其问题可能在数周甚至数月后才暴露出来,届时开发者早已忘记构建细节,定位和修复工作将极其困难

这正是Meta公司座右铭从“快速行动,打破常规”转变为“在稳定的底层架构上快速前进”的原因。Agentic测试可以帮助开发者确保拥有一个供自己和他人构建的良好基础设施

图片

一起“赞”三连

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值