逐帧分析,Devin如何成为AI软件开发者

这篇具有很好参考价值的文章主要介绍了逐帧分析,Devin如何成为AI软件开发者。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Devin官方Bloghttps://www.cognition-labs.com/blog

先说结论

最近一个十人团队的初创公司公布的人工智能模型Devin火了一把,因为其宣称其是首个人工智能软件工程师。铺天盖地的公众号消息无一不打着“程序员干掉了自己的饭碗”的口号在为其卖力宣传着。实际效果如何,以下是我根据上面官方博客的介绍和几个演示视频得来的一些看法。

1、如果你有明确的目标,可以让Devin做一些尝试。

在演示视频中,大部分的要求都需要人类做出明确的指示,比如去哪里获取资料,做一个什么样的软件,有些类似需求沟通的过程。这要求人类需要了解如何与Devin进行有效沟通。

2、Devin未必能对存量项目进行梳理和重构

Devin的执行过程还是类似通过对任务进行分解,然后带着目的一步步的去执行。这适合于没有历史包袱的开创性任务,比如演示中的做一个小游戏、生成一张hidden text的图像等。但存量项目中牵扯太多隐含逻辑和大量代码,Devin未必可以胜任。

3、Devin没有自我驱动的能力

Devin的每一步思考都需要人工参与,比如需要给他指出哪里不够好,哪里有bug,这样他才会去定位、去分析。即使是演示视频3中对开源项目编写测试用例并进行调试和bug修复,一开始也需要人为告知其具体是哪一段代码可能有问题,或者给他提供issues信息、readme信息。

总体而言,Devin最大的突破是long-term reasoning and planning,其他的部分比如为其配备的workspace,随时上报进度并进行交流这些仍然是GPT或者是类AutoGPT的内容。如果希望其真正具有一个Software Engineer的素质,还有很多努力需要做。正如Cognition博客最后说的,建立Devin只是第一步,最艰难的挑战还在后面。

官方案例

截止2024-03-14,官网上的演示视频有如下几个。

  1. 在阅读了一篇博客文章后,Devin在Modal上运行ControlNet,为Sara制作隐藏信息的图像。YouTube
  2. Devin制作了一个模拟生命游戏的互动网站!它会增量地添加用户要求的功能,然后将应用程序部署到netflix上。YouTube
  3. Devin可以自主地发现和修复代码库中的错误。Devin帮助开发者维护和调试开源项目。YouTube
  4. Devin可以训练和微调自己的AI模型。‍Devin为一个大型语言模型设置了微调,只给GitHub上一个模型库的链接,他可以自己拉取模型,阅读README,根据文档描述构建环境并执行微调。在微调报错后,他也能判断出是环境问题还是代码问题,并快速修复。YouTube
  5. Devin可以解决代码库中的bug和功能要求。只要提供一个github issue的链接,Devin就会完成所需的所有设置和上下文收集。YouTube
  6. Devin可以为成熟的生产代码库做出贡献。‍Devin解决了sympy Python代数系统中对数计算的错误。要知道这个项目代码量有68万行。YouTube
  7. 甚至可以让Devin在UpWork上完成一个真正的工作,比如搭建一个图像识别的人工智能模型。YouTube

下面对其中比较有代表性的两个案例进行逐帧分析。

发现和修复代码库中的错误

案例三中使用的代码库为github上开源的c++项目cp-book,代码行数大约7265,但在案例六中,Devin也能处理更大代码规模的项目,比如68万行代码的sympy。

devin ai,AI,人工智能
cp-book的统计结果
devin ai,AI,人工智能
sympy的统计结果(案例六的项目)

首先,用户明确告知Devin项目路径、可能有bug的结构体名称、要求添加测试用例

devin ai,AI,人工智能

可以从步骤列表中看出,Devin的规划能力不错,每一个步骤都是可执行且相关的。更重要的是,Devin的规划和执行是嵌套进行的,这一点从步骤中已经包含了mod_constraint所在的modnum.hpp文件位置就可以看出来。就不知道Devin是用的什么技术来实现检索和快速定位的了,RAG?Long-Term?Who knows?

devin ai,AI,人工智能

用户给出了详细的测试用例,详细到可以说任何开发者看了都明白如何写的程度。

devin ai,AI,人工智能

Devin在接收到要求后,几乎立即就完成了测试用例的代码编写。

devin ai,AI,人工智能

devin ai,AI,人工智能

用户在已有测试基础上,提出了更高的要求,即用循环实现多轮随机值的回归测试。

devin ai,AI,人工智能

这一次的回归测试验证失败,证明代码中仍然存在bug

devin ai,AI,人工智能

Devin在代码中报错前的位置添加了打印输出,来观察变量和结果的变化

devin ai,AI,人工智能

在打印的结果中,某个case的结果出现了负数,而这个程序不应该出现负数。很显然,Devin也发现了这一点,然后定位到导致出现负数的代码行,修复这个bug后,再次执行。

devin ai,AI,人工智能

devin ai,AI,人工智能

最终全部测试用例通过。

devin ai,AI,人工智能

完成一个真正的工作

upwork是美国的一个自由职业平台市场,Cognition的研究者希望看看Devin能否胜任一个真实的工作。

下面是研究者在upwork上找到的一个工作任务,利用roadDamageDetection2020项目实现自动识别道路毁坏程度。

devin ai,AI,人工智能

这个项目看起来很有趣,但要将其运行起来也有一定难度。

devin ai,AI,人工智能

devin ai,AI,人工智能

研究者将upwork上的工作要求原封不动的转给了Devin。可以看到,Devin知道需要拉取这个开源项目,并理解这个项目如何部署,比较有趣的是,Devin会分析完成这项任务可能的一些细节,比如是否需要提供更多的图像或数据。这是不是像极了小心翼翼的乙方。

devin ai,AI,人工智能

Devin表示他会阅读文档和代码来弄清楚如何安装环境和运行模型。下面的灰色小字意味着这时候Devin已经有一个初始计划了,并且已经开始执行。

devin ai,AI,人工智能

通过初始计划的执行(阅读理解文档和代码),Devin对该计划进行了进一步的更新,可以看到这个计划更加具有可执行性和相关性。

devin ai,AI,人工智能

接着可以看到他开始工作的过程,下面是拉取了roadDamageDetection2020到本地。

devin ai,AI,人工智能

开始用pip install -r requirements.txt安装环境。不出意外出了一个版本找不到的意外。

devin ai,AI,人工智能

在Planner中可以看到Devin的规划方式,那就是将要做的事列一个清单,把当前要做的事当成第一优先级来进行重点关注,比如现在他的关注点是解决依赖安装的问题。

devin ai,AI,人工智能

可以看到Devin将requirements中的torch版本改了。

devin ai,AI,人工智能

随着环境的变化,清单中的内容也在不断更新,已经完成的工作有些被合并了,还有新的工作被添加了进去。(比如上面的“set up the environment for running the models”任务就消失了)

devin ai,AI,人工智能

在拉取sample数据后进一步执行又发现了一些问题。

devin ai,AI,人工智能

Devin开始Debug,在代码中插入print语句来打印关键变量的值。

devin ai,AI,人工智能

定位到异常位置后,Devin很快修复了Bug。

devin ai,AI,人工智能

一切就绪后,Devin将该项目运行了起来。

devin ai,AI,人工智能

Devin很快意识到项目跑起来,没有model文件也不行,于是向研究人员提出要认证信息用来获取Google Drive网盘上的模型文件。

devin ai,AI,人工智能

拿到认证信息后,Devin又开始了新的计划,下载模型文件、训练、验证、测试数据集...

devin ai,AI,人工智能

经过一系列的处理,最终Devin成功运行了这个项目,并利用该项目完成了实例验证,对一些道路图像做出了推理分析。而且询问是否需要对一些图像的检测进行一些可视化的处理,方便我们更好的理解分析结果。

devin ai,AI,人工智能

研究员接受了这一建议,于是Devin返回了图像和报告的链接。到这里,Devin已经完成了UpWork所要求的所有工作!

devin ai,AI,人工智能

devin ai,AI,人工智能文章来源地址https://www.toymoban.com/news/detail-850686.html

到了这里,关于逐帧分析,Devin如何成为AI软件开发者的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在开源经历中成长,让开发者成为创新主体

    本文背景 积极推进“满天星”行动计划,促进开发者成长,重庆软件园产业学院“成长营”将聚焦“技术提升”“职业成长”“价值提升”等话题开展系列主题活动,赋能软件技术开发者更好发展、更快成长。本次直播访谈,聚焦在开源经历中成长,让开发者成为创新主体。

    2024年02月11日
    浏览(46)
  • 建议这样使用ChatGPT,让你成为更好的开发者

    这样使用ChatGPT,让你成为更好的开发者 作为开发人员,您的责任之一是不断学习和提高您的技能。ChatGPT 是一个强大的工具,可以通过多种方式帮助您成为更好的开发人员。如果你不知道什么是 ChatGPT,它是 OpenAI 开发的一种大型语言模型,可以生成类人文本并执行各种自然

    2023年04月08日
    浏览(53)
  • 如何利用AI学习区块链知识,ChatGPT x Kapa.ai ⇒ 开发者的福音

    由OpenAI推出的人工智能聊天机器人ChatGPT在各大平台掀起了一阵狂热之风。发布仅四个月的时间,获得超一亿用户,成长速度远高于现今网络应用巨头脸书和Amazon。随着最新版本GPT-4的正式上线,其AI性能和完善程度再度提升,深受用户和开发者的青睐。 GPT-4是一种基于文本的

    2024年02月08日
    浏览(50)
  • Stack Overflow开发者调查发布:AI将如何协助DevOps

    Stack Overflow 发布了开创性的2023年度开发人员调查报告 [1]。报告对 90,000 多名开发人员进行了调查,全面展示了当前软件开发人员的体验。接下来,本文将重点介绍几项重要发现,即 重要编程语言和工具偏好、人工智能在开发工作流程中的应用 以及 这些趋势对 DevOps 领域可能

    2024年02月10日
    浏览(38)
  • 玩转css逐帧动画,努力成为更优质的Ikun~

    css3的 animation 想必大家都知道吧,那 steps 逐帧动画你知道吗?对于我来说,实际工作及练习中也很少用到这种跳跃式变化的动画,而它 start 和 end 的解释又比较“不说人话”,以前用到 steps 动画的时候,常常是靠调试,来回设置 start 和 end ,主打的就是瞎猫碰上死耗子。虽

    2024年02月08日
    浏览(36)
  • 华人团队创造AI软件工程师Devin,可一键完成编程!人类程序员:真要失业了

    演示站点:   https://ai.uaai.cn 创作模块 官方论坛:   www.jingyuai.com 京娱AI 近期,全球首位AI程序员Devin的出场,不禁让我想到了一个有趣的问题:AI程序员会不会抢程序员的饭碗呢?先别着急下结论!虽然AI技术在编程领域越来越广泛,但它真的能完全替代我们程序员吗?

    2024年04月15日
    浏览(71)
  • Devin内测注册全攻略:一文带你快速体验最新AI软件工程师技术 ️

    博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接 : 🔗 精选专栏 : 《面试题大全》 — 面试准备的宝典! 《IDEA开发秘籍》 — 提升你的IDEA技能! 《100天精通鸿蒙》 — 从Web/安卓到鸿蒙大师! 《100天精通Golang(基础入门篇)》 — 踏入

    2024年03月16日
    浏览(124)
  • 手把手教你成为荣耀开发者:数据报表使用指引

    荣耀开发者服务平台是荣耀面向开发者的统一生态入口,通过聚合周边内外部系统,分全球多站点部署,为全球开发者提供业务全生命周期的商业支撑服务,拥有应用分发、智慧服务、开放能力、HONOR Connect等众多业务等您来合作。 “数据报表”为荣耀开发者提供产品详细的

    2024年02月09日
    浏览(52)
  • 爱签电子合同成为国家区块链服务网络BSN指定合格开发者

    近日,中国区块链服务网络(Blockchain-based Service Network,以下简称“BSN”)官方宣布, 爱签数字科技有限公司正式成为 BSN 的合格开发者 ,这标志着爱签数字正式成为国家区块链服务网络 BSN 的官方指定应用。 今后,爱签将与 中国移动、中国联通、微众银行、京东数科、百度

    2023年04月08日
    浏览(56)
  • 8年前端与众不同的Vue实战系列,助你成为前端顶级开发者

    目录 一、写这个Vue实战系列专栏的初衷 1. 帮朋友做推荐 2. 市面上卖源码的多,讲实战项目过程的少 3. 想到了自己刚毕业的时候 二、 本专栏的优势  1. 需求的适应性强 2. 技术主流  三、 读完本专栏,你可以得到什么 1. 帮朋友做推荐 我记得最初的时候,我也只是单纯的分享

    2024年02月02日
    浏览(58)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包