QCon 演讲火热征集中,快来分享技术实践与洞见! 了解详情
写点什么

字节跳动发布“豆包 MarsCode”智能开发工具,面向国内开发者免费

  • 2024-06-27
    北京
  • 本文字数:1559 字

    阅读完需:约 5 分钟

大小:751.93K时长:04:16
字节跳动发布“豆包MarsCode”智能开发工具,面向国内开发者免费

6 月 26 日,字节跳动发布了基于豆包大模型打造的智能开发工具豆包MarsCode ,并面向国内开发者免费开放。

 

现场,字节跳动开发者服务团队、豆包 MarsCode 负责人李东江还分享了一些对 AI 时代开发工具演进趋势的思考。

 

进入 AI 时代,大语言模型在编程语言方面具备强大的优势和潜力,相比起复杂的自然语言,编程语言是更加简洁、严谨、可预测。关于“应当如何构建一款 AI 时代的开发者工具”的命题,豆包 MarsCode 团队更多的从如何赋能开发者的角度入手。

 

李东江认为,在 AI 技术驱动下,一定会衍生出下一代的开发工具。AI 不是替代开发者的“竞争者”,而是开发者的“好帮手”,团队更希望打造一款软件,能够助力提升开发者工作效率,让开发者有更多精力和时间用于思考和创造。

 

豆包 MarsCode 首发功能揭秘

随后,豆包 MarsCode 产品负责人王海建介绍了豆包 MarsCode 产品的两种形态:编程助手和 Cloud IDE,同时通过需求开发、修复 Bug、开源项目学习三个实际场景,详细演示了豆包 MarsCode 的项目问答、代码补全、单测生成、Bug Fix 等功能。

 


需求开发场景

 

通过一个翻译机器人构建的实际案例,王海建演示了在 AI 的辅助下,开发者可以如何通过唤起编程助手进行 Chat 提问,分析需求、熟悉代码、编写代码和调试代码。



代码补全不仅仅可以帮助开发者更快地输入代码,更是可以通过不断提供代码建议,给开发者带来灵感和启发。豆包 MarsCode 的创新功能——代码补全 Pro,不同于传统的代码续写,它支持自动根据用户编辑意图预测下一个改动点并给出代码推荐。

 


除了代码预测与补全,当编码中出现需要修复的代码 Lint 错误时,编程助手会直接在编辑器中主动给出修改代码,我们不需要去查看是什么报错原因,只需要判断修复结果是否正确,如果正确,一键采纳修复后的代码即可。



最后,当我们写完代码,为了保障代码的质量与后续的可维护性,通常还需要写单元测试。这时只需要在编程助手中触发 test,就可以得到这个函数的测试用例。可以看到,相比于传统的开发方式,豆包 MarsCode 编程助手可以帮助开发者更轻松、更专注地编程。

 

Bug 修复场景

在 Debug 场景下,豆包 MarsCode 的 AI 修复功能可通过理解报错信息、调用栈的代码、全局的项目代码,去分析错误原因,从而直接给出针对性的修复建议。

 


除了单轮修复,豆包 MarsCode 也在尝试基于 Agent 方式实现多轮自动修复,AI 会自主调用一系列代码查询工具、调试工具获取报错信息、自主规划方案、自主写出代码并应用到项目当中去,来修复 Bug。目前,该功能正在字节内部做验证。

 


开源项目学习场景

第三个场景下,豆包 MarsCode IDE 通过提供开发模板,让开发者能够快速进入项目而无需运维本地环境。借助原生集成的 AI 能力,开发者不再需要自己去理解代码,从而更高效地上手项目。

 


总的来说,豆包 MarsCode 在以下两个方面帮助开发者:

  • 对于想的阶段,提供更好的信息,例如做代码解释,研发知识的问答,来激发开发者创造;

  • 对于做的阶段,帮助开发者更快地完成编码,例如代码的补全、下一步编码动作的预测,代码的错误修复,来提升开发者效率。

 

后续,豆包 MarsCode 会通过成立用户组、各类系列开发者活动等方式,助力开发者探索 AI 编程新范式。现场,豆包 MarsCode 市场运营负责人赵旭东介绍了豆包 MarsCode 开发者与社区共创计划。

 

据悉,豆包 MarsCode 用户组将由开发者自组织自运营,豆包 MarsCode 团队不会参与到用户组的管理,但是会为用户组提供丰富的各类资源支持,支持各地用户组发展,例如场地资源、产品资源、活动物料、专家讲师支持等。在开发者活动方面,豆包 MarsCode 将陆续在北、上、深、杭等城市举办 Meetup 。

 

豆包 MarsCode 还计划协同各开发者社区,将 AI 能力融入到社区使用场景中,将豆包 MarsCode 的能力更便捷地提供给开发者。

 

2024-06-27 10:225651

评论

发布
暂无评论
发现更多内容

MySQL基础之十:union与limit

打工人!

myslq 6月日更

【Vue2.x 源码学习】第十二篇 - 生成 ast 语法树-流程说明

Brave

源码 vue2 6月日更

Python——数值列表

在即

6月日更

提升代码格调——JavaScript 数组的 reduce() 方法入门

编程三昧

JavaScript 大前端 数组 js ES6

redis分布式锁原理

Skysper

redis 分布式锁

话题讨论|如何看待腾讯试点强制6点下班

石云升

话题讨论 加班文化 6月日更

《原则》(十二)

Changing Lin

6月日更

Windows 10 如何设置网络属性为私有

HoneyMoose

HTTP 长连接和短连接

看山

TCP/IP HTTP协议 6月日更

职场礼仪之坐车礼仪

石云升

6月日更 职场礼仪

雪花算法的原理及实现

架构精进之路

算法 6月日更

「SQL数据分析系列」1. SQL背景知识介绍

Databri_AI

数据库 sql

分享8个可以提高开发效率的JavaScript库

devpoint

node.js axios 6月日更

【LeetCode】重复的DNA序列Java题解

Albert

算法 LeetCode 6月日更

贪心算法最优装载问题(Java代码实现)

若尘

数据结构 贪心算法 6月日更

网络攻防学习笔记 Day43

穿过生命散发芬芳

网络攻防 6月日更

TempDB 的使用和性能问题

悟空聊架构

sql 性能调优 6月日更 TempDB

立flag(第………………次)

凯迪

随笔杂谈

【21-5】Grafana 时间Panel 如何使用

耳东@Erdong

Grafana 6月日更 panel clock

SpringCloud Gateway 路由数量对性能的影响研究

黄仲辉

性能优化 动态路由 SpringCloud Gateway JMH性能基准测试

未来,能源枯竭可以逆转吗?

脑极体

内卷的出路是躺平?

Qien Z.

创新 内卷 6月日更 躺平

一文带你深入了解 Java 字节码

mghio

技术 后端 Java 25 周年 基础

【Flutter 专题】105 图解自定义 ACEPageMenu 滑动菜单 (一)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 6月日更

【译】JavaScript 中几种循环遍历方式对比

KooFE

6月日更

Scrum Patterns : MetaScrum(译)

Bruce Talk

敏捷开发 译文 Agile Scrum Patterns

模块六作业 - 拆分电商系统为微服务

张大彪

【通俗易懂】虚拟DOM,如何更高效DIFF

蛋先生DX

Diff 6月日更

架构实战营-作业六

大可

未来,能源枯竭可以逆转吗?

白洞计划

并发王者课-黄金2:行稳致远-如何让你的线程免于死锁

MetaThoughts

Java 多线程 并发

字节跳动发布“豆包MarsCode”智能开发工具,面向国内开发者免费_生成式 AI_华卫_InfoQ精选文章