AI又进化了,AI 写代码工具

news2025/4/22 3:53:01

今年 AI 的发展可谓一日千里,相信不少同学应该都用过 AI 来帮助自己提高开发效率吧?

比如让 AI 根据注释生成代码、解释整段代码、提供技术问题的答疑、修改 Bug、生成单元测试等等。

在 12 月 28 日刚刚结束的 WAVE SUMMIT + 深度学习开发者大会上,百度发布了新的产品 Comate AutoWork。这是智能代码助手 Comate 的一项重大发布,已经突破了限制,不再局限于代码片段和单文件的生成,而是能够帮助开发者 轻松应对复杂项目,提高企业开发效率。

图片

那这个产品有什么 “魔力”?怎么帮助我们提高复杂项目的开发效率呢?

进化的 AI 工具能干啥?

和已有的 AI 写代码工具不同,开发者不需要自己一步步地设计方案和编写代码,而是直接化身 “产品经理”,尽管向 AI 提需求。接下来 Comate AutoWork 智能助手就会根据你的需求,自主理解需求 => 拆解工作 => 制定工作计划和方案 => 熟悉项目并生成代码 => 调试运行。

图片

也就是说,AI 不再只是按照开发者的命令去生成代码,它更像是你的智能编程伙伴,可以跟你并肩作战、参与整个项目的协作开发。这不仅是 AI 代码工具的进化,也是 人机协同 研发流程的创新!

口说无凭,来看看百度官方的演示视频。

,时长01:45

文字省流:

1)首先向 Comate AutoWork 提出需求,让它给已有的网站项目增加一个按钮,用户点击后会弹出一个转盘。

如下图,可以直接甩给 AI 一个 Word 版本的需求文档:

图片

2)AI 会自主理解你的需求,并跟你分享自己的思考过程。跟真人一样,它会阅读整个项目代码;遇到不理解的需求时,还会再主动跟你确认。

图片

3)理解了需求后,AI 就会对工作进行拆解,并给出自己的执行计划。比如先找到要修改的页面、理解老的代码、甚至查询是否有可直接复用的组件!

图片

我们可以对 AI 给出的执行计划进行查看和修改,如果发现 AI 的理解有任何错误,能够及时人工纠正。

图片

这一步真的太重要了,我是深有感触,在带团队开发复杂的程序时,一定要根据成员的思路和计划,多给他们一些指导,防止他们按照错误的方法和步骤进行开发。

4)确认好执行计划后,AutoWork 就开始 “吭哧吭哧” 干活了。我们可以喝杯咖啡,愉快地看着它一步步完成工作。

图片

5)最后,AI 完成了工作,写了一大堆的代码。我们可以像 Code Review(代码审查)一样,一条一条地阅读并采纳 AI 的代码,而不用担心它写的代码会侵入我们的项目,干净又卫生~

图片

如视频所示,最终百度Comate AutoWork 按照需求(包括追加需求),并与工程师问答/确认,比较出色地实现了这个具有一定复杂性的“限时反馈”任务开发。

图片

我的思考

不知道大家看了上面的演示后有何感想,至少我觉得这个 AI 工具对我们研发同学和企业来说意义重大。

作为程序员,以前我们的视角是 “码农”、“搬砖者”,所有的工作都要自己做,需求自己分析、方案和代码都要自己写,一周能做完一个需求就不错了。而现在,使用 Comate AutoWork 研发助手,我们的视角是 “架构师”、“管理者”,更多的工作是提需求、指导 AI、审方案、审代码。不仅能够将我们从枯燥的工作中解放出来,还能通过和 AI 的交互学到很多新的知识和研发方法(比如拆解工作、调试 Bug)。

对于企业来说,如果引进了 Comate AutoWork 工具,能够让团队的开发者更专注于创新,释放更多的生产力,提高整体的研发效率。

来吃螃蟹

怎么使用上面提到的智能研发助手呢?

首先,百度 Comate 智能研发助手是对所有个人和企业用户开放的,并且支持 SaaS 版和企业私有化定制。

如果想尝鲜使用 AutoWork,企业可以直接到百度 Comate 官网申请试用。

指路:https://comate.baidu.com/

图片

此外,Comate 也全新发布了 开放计划,企业可以结合自身属性、需求、私域知识,定制专属的研发插件、按需精调大模型等,打造企业自有的智能研发助手。

这个能力可真是太实用了。举个例子,我们公司内部自研了一些通用的开发模板和组件,可以接入到 Comate 中,下次它在生成代码时,就能想到复用我们现有的代码。再比如每个公司都有自己的研发规范,可以把规范文档接入到 Comate,然后它生成的代码就会遵循规范啦。

使用建议

我们公司如果要用智能研发助手,最关注的肯定是准确性、性能和安全性。

先说准确性,也就是生成的代码靠不靠谱、能不能用。目前根据官方的数据,我了解到百度 Comate 智能研发助手已经有超过 8000 家企业伙伴,代码采纳率超过 40%,这已经是个不错的成绩了。而随着 AI 大模型的持续增强,助手也会更聪明,能够给出更符合要求的代码。

然后是性能,也就是生成代码的速度。我自己试用下来,百度 Comate 生成代码的性能是很强的,丝滑流畅。

在安全性方面,Comate 做的非常不错。首先是用户隐私安全,官方承诺不会存储和分析用户的代码,生成代码时会先脱敏再请求,而且还支持 SaaS 及私有化部署,保证数据不会流出。在内容安全方面,百度通过对模型训练数据及推理内容进行风险检测与过滤。总之,可以放心使用。

有很多朋友会拿国内的 AI 研发助手对比微软的 Copilot,其实 Copilot 我在最早的时候就使用过,生成的准确度确实很强。但是经过测试,Comate 开箱即用,在功能完备性、部署灵活性、性能上都是优于 GitHub Copilot 的。最重要的还是更高的安全性,就单凭这一点,国内 AI 必须支棱起来!

OK,就分享到这里,感兴趣的朋友可以试试看。学会的同学,点个赞或在看支持一下吧,感谢!

图片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1344299.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

引领手游技术潮流:武汉灰京文化的卓越技术创新与市场推广支持

在数字娱乐领域,手游行业正蓬勃发展,为数以亿计的玩家提供了丰富的娱乐选择。武汉灰京文化,作为该领域的佼佼者,以其强大的技术创新和全面的市场推广支持,为合作伙伴的成功铺平了道路,不仅提升了游戏质量&a…

Amlogic HDMI驱动分析

目录 一、简介 二、代码结构介绍 三、HDMI资料 四、宏观认识一下HDMI 1、硬件连接 2、Amlogic方案中HDMI的位置 3、Amlogic HDMI驱动模块的划分 五、HDMI-RX驱动分析 1、芯片手册解读 2、RX -makefile 3、驱动模型分析 4、RX的运行 5、HDMI RX调试 六、HDMI-TX驱…

单列集合Collection常用api

集合体系结构 Collection Collection是单列集合的祖宗接口,它的功能是全部单列集合都可以继承使用的。 public static void main(String[] args) {//TODO Collection类 所有集合的接口 /*public boolean add(E e) 添加public void clear() …

Ubuntu20.04 上启用 VCAN 用作本地调试

目录 一、启用本机的 VCAN​ 编辑 1.1 加载本机的 vcan 1.2 添加本机的 vcan0 1.3 查看添加的 vcan0 1.4 开启本机的 vcan0 1.5 关闭本机的 vcan0 1.6 删除本机的 vcan0 二、测试本机的 VCAN 2.1 CAN 发送数据 代码 2.2 CAN 接收数据 代码 2.3 CMakeLists.…

图像质量评估:使用 SSIM 计算图像相似性

在图像处理领域,衡量两幅图像之间相似性的一种常见方法是使用结构相似性指数(SSIM)。SSIM 是一种全参考的图像质量评估指标,它不仅考虑了图像的亮度、对比度,还考虑了结构信息。在本文中,我们将介绍一个使用…

Qt QAction添加图片

QAction用的时候,时常需要添加图片,如上图所示,代码如下所示: 测试的图片格式包含png,jpg,bmp,svg,其他未测试

OpenCV-Python(9):图像基础操作

目录 学习目标 获取图像像素并修改像素值 获取图像属性 图像ROI 拆分及合并图像通道 图像边缘扩充 学习目标 获取像素值并修改获取图像的属性(信息)图像的ROI获取图像通道拆分及合并图像扩边 获取图像像素并修改像素值 几乎所有这些操作与Numpy 的关系要比与OpenCV 的…

大语言模型(LLM)框架及微调 (Fine Tuning)

大语言模型(LLM) 技术作为人工智能领域的一项重要创 新在今年引起了广泛的关注。 LLM 是利用深度学习和大数据训练的人工智能系统,专门 设计来理解、生成和回应自然语言。这些模型通过分析大量 的文本数据来学习语言的结构和用法,…

跟着LearnOpenGL学习11--材质

文章目录 一、材质二、设置材质三、光的属性四、不同的光源颜色 一、材质 在现实世界里,每个物体会对光产生不同的反应。 比如,钢制物体看起来通常会比陶土花瓶更闪闪发光,一个木头箱子也不会与一个钢制箱子反射同样程度的光。 有些物体反…

器件的静态特性

器件的静态特性 静态特性(伏安特性) 1.器件在导通或关断的状态下,其电压与电流对应关系。 2.静态过程体现器件最基本的电压与电流稳态特性。 动态特性(开关特性) 1.器件在开或关过程中,其电压、电流随时…

关于java循环结构for

关于java循环结构for 在上一篇文章中,我们了解到了while和do…while的结构以及用法,这篇文章我们主要学习一下最常用的循环结构,for结构😀,这个结构理解起来相对while结构会难一些,本篇文章内容会很多&…

深入Mybatis数据源

数据源是持久层框架中最核心的组件之一,在实际工作中比较常见的数据源有 C3P0、Apache Common DBCP、Proxool 等。作为一款成熟的持久化框架,MyBatis 不仅自己提供了一套数据源实现,而且还能够方便地集成第三方数据源。 javax.sql.DataSourc…

Linux之缓冲区的理解

目录 一、问题引入 二、缓冲区 1、什么是缓冲区 2、刷新策略 3、缓冲区由谁提供 4、重看问题 三、缓冲区的简单实现 一、问题引入 我们先来看看下面的代码:我们使用了C语言接口和系统调用接口来进行文件操作。在代码的最后,我们还使用fork函数创建…

单纯形的几何意义 Simplex

单纯形是 n 维空间 n1 个仿射无关的点的集合的凸包。在几何意义上: 1维单纯形是一个线段2维单纯形是一个三角形3维单纯形是一个四面体(tetrahedron)

MySQL线上慢SQL问题分析处理小记

相同数据量表结构,线上执行12s 本地执行0.1s过程分析 1. 慢SQL信息 SELECT t1.id,t2.idFROM t_platform_target_standard_target_index t1LEFT JOIN t_platform_target_standard t2 ON t1.target_number t2.target_numberWHERE t1.delete_flag 0 AND t2.user_num …

Linux上管理不同版本的 JDK

当在 Linux 上管理不同版本的 JDK 时,使用 yum 和 dnf 可以方便地安装和切换不同的 JDK 版本。本文将介绍如何通过这两个包管理工具安装 JDK 1.8 和 JDK 11,并利用软连接动态关联这些版本。 安装 JDK 1.8 和 JDK 11 使用 yum 安装 JDK 1.8 打开终端并…

如何在 Linux 中配置 firewalld 规则

什么是FirewallD “firewalld”是firewall daemon。它提供了一个动态管理的防火墙,带有一个非常强大的过滤系统,称为 Netfilter,由 Linux 内核提供。 FirewallD 使用zones和services的概念,而 iptables 使用chain和rules。与 ip…

22款奔驰S450L升级主动式氛围灯 浪漫婉转的氛围感

主动式氛围灯有263个可多色渐变的LED光源,营造出全情沉浸的动态光影氛围。结合智能驾驶辅助系统,可在转向或检测到危险时,予以红色环境光提示,令光影艺术彰显智能魅力。配件有6个氛围灯,1个电脑模块。 1、气候&#xf…

Spring系列学习四、Spring数据访问

Spring数据访问 一、Spring中的JDBC模板介绍1、新建SpringBoot应用2、引入依赖:3、配置数据库连接,注入dbcTemplate对象,执行查询:4,测试验证: 二、整合MyBatis Plus1,在你的项目中添加MyBatis …

IP地址的四大类型:动态IP、固定IP、实体IP、虚拟IP的区别与应用

在网络通信中,IP地址是设备在互联网上唯一标识的关键元素。动态IP、固定IP、实体IP和虚拟IP是四种不同类型的IP地址,它们各自具有独特的特点和应用场景。 1. 动态IP地址: 动态IP地址是由Internet Service Provider(ISP&#xff…