6月12日,在「2025 春季火山引擎 FORCE 原动力大会-开发者主论坛」上,字节跳动开发工具 TRAE 负责人发表了主题演讲《TRAE:从代码生成到软件生成的跨越》。
演讲整体介绍了 TRAE,TRAE 是 The Real AI Engineer 的简称,致力于通过 AI 的能力帮助全球开发者提升研发效能,加速软件创新。它将产品、工程、模型有机结合,提供代码补全,局部代码生成的核心功能;支持自然语言开发,可完成代码重构、批量修改、知识问答等复杂任务;并能让开发者在 “AI 主导” 和 “AI 辅助” 之间自由切换,找到最适合的协作方式。
自今年1月上线至今,TRAE 月活用户已经超过了100万;下一个版本还将整合不同的 Agent 和工具,协调任务流程,实现自动串联操作,逐步从 AI 辅助编程向支持 AI 开发全流程进阶。
以下是演讲全文:
石扬在演讲现场
大家好,我是石扬,是字节跳动开发者工具 TRAE 的负责人,很开心今天有机会在这个平台和大家来做一次关于 TRAE 的分享,我今天分享的主题有两个关键词代码与软件,代码和软件作为基石塑造了互联网时代的繁荣,而在 AI 驱动的今天,它们正准备开启下一轮跃迁。
先让我们把时钟拨回到计算机诞生之初,感受一下“写代码”这件事是如何一步一步演进到今天的。
纵观编程语言的发展史,就是一部不断抽象与求简的历史,同一功能,用汇编语言可能需要 2000 行,用 C 语言写需要 500 行,用 Python 可能只需要一百行。
编程门槛不断降低,也带来了写代码的人群的指数级增长:1990 年,全球程序员还只有百万级;而到 2023 年,仅 GitHub 的注册开发者就已破亿。每一次代码抽象升级,都在围绕着:代码更少、效率更高、参与者更多而进行。如今 AI Coding 正在酝酿下一次飞跃,通过自然语言生成代码、自动补全逻辑、智能调试等方式,让“写代码”不再是少数人的技能,而成为更多人实现想法的手段。这不仅是生产力的飞跃,更是开发者边界的重塑。
TRAE: The Real AI Engineer
我们团队的愿景是:通过 AI 的能力帮助全球开发者提升研发效能,加速软件创新。我们希望通过构建智能的 AI 工程师来实现这一目标,我们构建的不仅仅是更强大的 AI 编程工具,更是每位开发者的智能协作伙伴——一个真正的 AI 工程师。
我们设想的 AI 工程师,不仅能编写代码,更具备自主理解、思考、优化和协作的能力。不再是被动执行指令的工具,而是能分析需求、优化方案、提供智能建议,并通过持续学习适应开发者的风格,实现真正的人机深度协作。
这正是 TRAE 名字的由来——The Real AI Engineer,它不仅是一个 AI IDE,更是能够与人类协作的 AI 工程师。就像织布机让织工从反复抛梭中解放出来,TRAE 也要把开发者从重复敲键盘中解放出来,我们认为程序员应该更加聚焦在架构设计与产品创造。
AI 时代的应用
= 产品 × 工程 × 模型
我们认为一个好的 AI IDE 是 产品能力 × 工程能力 × 模型能力的有机结合。
产品要能“听得懂人话”,才能真正参与协作。在 TRAE 中,我们不是通过写命令或点击按钮来操控 AI,而是构建了“目标驱动”的交互模式:开发者用一句自然语言描述目标,AI 便能生成文件结构、拆分模块、补全代码、甚至自动新建 UI 页面。
AI 要完成开发任务,就需要具备执行细节的能力:如何拆分目标?任务之间如何衔接?流程卡住时如何中断与恢复?在 TRAE 里,我们构建了一个底层任务调度框架,支持 Agent 并行执行、异步控制、中途回调与状态追踪。比如用户要求“生成一个管理后台并联通数据库”,AI 会将需求拆分成“页面生成”、“权限配置”、“数据库建表“”等子任务,并按依赖顺序调度执行,中间若有失败,也能自动回滚或重试。
所有交互与执行的底层基础,仍然是模型本身的智能能力。包括自然语言理解、结构化推理、代码生成、状态保持等,这些决定了 AI 对用户意图的把握力和对复杂上下文的处理深度。例如,当你给 AI 一段业务逻辑,要求“换一种更高效的实现方式”,TRAE 的模型需要理解现有代码的功能意图、识别冗余、并生成语义等价的优化代码。
这三项能力并非孤立存在,而是相互支撑:就像人一样,模型能力是理解问题的大脑,工程能力就像执行任务的肌肉,产品能力就是和人沟通的语言。TRAE 正试图将这三者结合起来;让“懂意图、会思考、能动手”的 AI 成为可能。
自动补全 - cue
我相信今天线上线下有非常多 TRAE 的用户,也一定有很多第一次听说 TRAE 的朋友,因此我还是希望通过 TRAE 的最新版本介绍一下 TRAE 的核心场景和功能。
第一个场景是代码补全,我们的产品功能叫做 cue,中文的意思是“提示”,在这个版本之前,我们只有对于代码片段的补全,新版本中我们增加了预测下一个补全位置和连续补全的能力。解释一下,什么是 cue,即当在一处代码发生变更后,AI 会基于变更预测下一次变更,用户可以通过点击 TAB 键接受补全。cue 这个功能对于专业的程序员非常重要,也是非常容易让程序员进入编码心流的功能之一。下面我们通过一个视频来展示一下 cue 的能力。
用自然语言方式开发
让 AI 成为你的开发搭档
第二个场景是通过自然语言写代码。用自然语言方式开发,让 AI 成为你的开发搭档。
首先,你可以把 TRAE 当做非常理解你的项目和代码专家。
TRAE 可以精准理解你的代码仓库,你的 IDE 内的各种信息。每一次对话输出,都经过深度理解和思考,确保结果的准确性和质量。
例如你期望在当前的项目里,新增一个需求。传统的方式需要调研方案,再更改代码。现在你只需要让 AI 来解决,AI 会根据需求理解项目和技术文档,提供最合适的解决方案。
你可以审查 AI 生成的结果,如果满意就应用到项目中,如果不满意可以继续提要求,对整个项目的迭代过程有掌控。
如果说 cue 是帮助程序员解决“我知道写什么,但是 AI 帮我来更快速地写”的需求,那么自然语言编程就是去提升用户“不知道怎么写”的体验。
我相信做过程序员的人都知道 Stack Overflow 这个网站,我自己原来也是一个程序员,经常会遇到一些报错,或者需要使用一个新的框架来实现功能的时候,不知道该如何入手,我一般会在 Stack Overflow 搜索答案,当然答案不总是正确的,我可能需要看 5-6 个答案,每次把对应答案手动粘贴到我的代码库中,然后最终找到能够运行的结果,甚至有的时候最终我不得不求助其他程序员来帮助解决问题,而如果通过自然语言编程的能力就很好的将以上场景解决。
现在我们通过一个视频来展示一下自然语言编程的能力。
人和 AI 的协作是动态的
在不同的开发场景中,开发者可以根据实际需求和自身能力,在 “AI 主导” 和 “AI 辅助” 之间自由切换,找到最适合的协作方式。
你既可以通过对话与 AI 互动完成任务,同时我们在 TRAE 中引入了不同的智能体,每一个智能体都集成了 1 个或者多个 MCP。用户可以结合自定义的提示词, 引用不同的上下文来实现用户不同的代码任务。
例如你希望创建一个网页应用,调用前端智能体,对 AI 说一句简单的提示词:“生成一个 TODO List 应用”。TRAE 会设计相应的代码结构与代码风格,创造出项目代码,并解释代码的设计思路。
你可以清晰地看到高亮展示的变化(diff),并轻松地快速应用到项目中。TRAE 还可以直接在 IDE 内部执行终端命令,并将结果展示在内置的网页预览之中,帮助你实时调整、优化。如果你不满意,你也可以快速回溯修改历史,随时回滚到你觉得任何合适的版本当中。
我分享几个数字和一些 TRAE 团队的开发历史。
我们在去年的 6 月份发布了豆包 MarsCode 插件,今年的 1 月份发布了 TRAE IDE 海外版,3 月份发布了 TRAE IDE 国内版,4 月份我们将豆包 MarsCode 插件升级为 TRAE 插件,同时产品能力也对齐了 TRAE IDE,让 VSCode 和 JetBrains 用户也能尽可能获得 TRAE IDE 用户同样的 AI 体验与开发效率。
这里我可以向大家分享 3 组数据,截止到 5 月份,TRAE 当前的月活用户已经超过了 100 万,累计生成了超过 60 亿行被用户采纳的代码,以及每天产生 150 万条用户 Query。
从 AI Coding
到 AI Development
回到今天的主题,从代码生成到软件生成,在这里我想先分享一个我们字节内部同学的一个案例。
这是字节内部的一位产品经理,非技术背景,过去从未写过代码,没有独立完成过完整 App 开发与上线。他想做一款拍照识别食物卡路里和营养成分的 App。过去这需要一个产品、一个设计、一个前端工程师,一个后端工程师和一个运维工程师协作。而这一次,他一个人完成了整个项目从 0 到 1 的过程。
这里是他自己总结的工作流程,从构思业务、明确产品运营计划、完成设计稿、编写程序、测试、部署上线、营销获客、客服、运营、到商业化变现的全流程,想得非常全,再基于用户数据收集反馈,不断循环优化。
基于他的工作流程,他也拆解了不同的工作内容,比如利用豆包进行战略分析和产品设计,用即梦进行 UI 和品牌设计,用 TRAE 进行代码编写。
每一个步骤,因为 AI 的加持,让他可以独立地完成。在和他交流的过程中,他也提到了,虽然 AI 可以很大程度上帮助他解决很多问题,但依然需要他具备超强执行力、足够的想象力和好奇心,以及在不同应用之间手动补充上下文的能力。
当前的 AI 能力并不足以能够完成端到端的服务,需要大量的耐心和 AI 进行对话,理解怎么使用 AI,去切换这些上下文。
Open AI 一位非常著名的首席科学家提出了 Vibe Coding 这件事,他的分享曾提到:如果单纯做一个案例,现在 AI 的能力可以非常好地解决,但当他想把应用上线时,他的原话是“非常痛苦”。因为人掌握了所有上下文,可以在不同应用中切换,但当我们把AI引入到软件生产的流程里时,就需要非常多的耐心和 AI 交互。
实际上今天无论是 AI 模型和 AI 产品都还处在非常早期的阶段,我们还有非常大的空间提升用户体验,降低用户使用 AI 产品的门槛。
比如从这个案例的开发流程中我们可以看到,我们开发软件的流程是分在不同的产品中,不同的平台上。在前 AI 时代,从文档工具、设计平台、到 IDE 与终端,开发者扮演着“流程调度者”的角色,不断在系统之间切换、同步意图、消解误差。但是在 AI 时代,我们将面临的一个新问题是,我们需要 AI 也参与到这个过程中,我们要把上下文在不同的 AI 之间切换,同步意图,消解误差。
如果我们能围绕着 AI 打造为一个“工作空间”,不再为每一个工具配备一个 Copilot,而是将这些工具模块化、组件化,由 AI 来调度使用,让上下文在同一个空间中流动,用户能够通过与 AI 对话的方式提出指令,AI 执行命令并产出结果,用户审查结果,给予反馈,让 AI 和用户共同在这个工作空间中完成任务。
最终,我们会从“把 AI 集成到工具中”转向“把工具集成到 AI 中”。我们将 TRAE 进行了一次迭代,把 TRAE 引入当中。下面我们通过一段视频来展示一下 TRAE 在 AI 开发过程中产品形态。
总结
正如我们视频中的产品演示一样,我们未来的产品会分为两个比较重要的区域:AI 区和工具集区。大家粗略一看可能会觉得,这不就是把 TRAE 右边的聊天换到了左边吗?
其实我们做了一些巧思。
人类的视觉习惯是从左向右的,我们认为,未来随着工具做得越来越好,你和 AI 的交互才是主要的工作区,所以把 AI 放到了左边,与此同时把工具放到了右边。
未来我们会不断集成更多的智能体和工具,也会与第三方一起构建智能体和工具集的生态。
我们相信,对话将成为新的终端。用户输入的不再是代码,而是任务目标和标准,AI 在统一的工作空间中理解、组织并交付结果。从 AI 写代码到 AI 做开发,从工具增强到流程重构,这就是我们对未来开发形态的思考,也希望大家和我们一起见证未来。
感谢大家对 TRAE 的喜爱与支持。