EPISODE· generated 2026-05-29 14:52:42· 15 min
How are coding agents changing software engineering?
ready · seed-vc · qwen3-tts
0:00/0:00
⚠ The Chinese audio is an AI-generated dub (speech synthesis / voice conversion), not a real recording and may contain errors. Based on the original English interview; all rights remain with the original creator.
original lang
EN
dubbed into
中文 (ZH)
pipeline
Plan C · voice conversion
voice model
seed-vc · qwen3-tts
001
我写代码已经15年了,从事软件工程也有10年。然而感觉整体的软件工程每几个月都在发生如此快速的变化
002
新的模型发布或当编码代理变得更好时。这可能会让人很难理解这些趋势。所以,Cursor 我们刚刚发布了一大堆关于 AI 辅助开发和编程的数据
003
代理已经改变了软件工程领域。因此,我想现场阅读它并给出一些我对这一变化的看法以及它如何影响我自己作为工程师的工作。
004
engineer. 这份开发者习惯报告将涉及五个方面。所以,编码速度每年翻一番。
005
我们看到更多的PR。我们会更多地讨论这一点。生成的代码会保留下来。
006
嗯,我们已经对许多不同的模型家族进行了基准测试,每行的成本和实际提交这些请求的成本在不同模型和不同提供商之间差异很大。
007
我们看到这种趋势,最顶尖的1%使用AI和编码代理的用户非常高效,并且与普通用户的差距越来越大。
008
上下文正在增长。我们看到输入令牌有大幅增加,并且转向尽可能多地缓存,这很有道理。然后我们看到很多人从
009
更多的基础提示来构建这个系统,构建这个工厂,帮助你生产高质量的软件。
010
我们有一些有趣的数据显示这一点。所以,让我们从开发者加速开始
011
开发者现在每周添加更多的代码,自2026年初以来增长加速。
012
现在我想加一点。这并不是一个完美的指标,但我确实认为新增代码行数至少在方向上是有趣的。显然,你可以添加很多糟糕的代码
013
实际上对代码库来说是一个净负数。但当你从 Cursor 用户数据的整体来看时,确实显示了这种趋势,即越来越多的开发者不仅在创建更多的项目,还在尝试新的
014
想法,尝试新的原型。其他人可以在开发过程之外贡献于软件的构建,我认为这总的来说是一件非常好的事情。但
015
这本身也带来了一些挑战,所以我们不能仅仅孤立地看待那一项数据。值得注意的是,在PR中代码添加量正在增长。每PR增加的行数提高了两倍半
016
年同比增加,而且还在继续增长。然后具体来说,我认为这个大规模的PR非常有趣。一千行更改的PR变得越来越常见。
017
有道理。你看有些人发这些PR,里面有很多改动。也许他们还不明白锁定文件是什么以及为什么它会增加几千行代码
018
在他们的diff中,或者也许他们不小心生成了一些代码需要在Git中忽略,或者也许就是大量的代码。
019
我认为这真的很有趣,有两个原因。一是你看到假期期间的峰值,我认为那是很多人开始探索最新模型Opus 45的时候
020
进入Cursor,尝试使用它和其他编码代理。其次,我认为这些大规模的公关确实给开发者带来了真正的挑战。维护起来很难
021
随着生成的代码行数增加,质量也会下降,总体而言,这些代码可能会变成一种负担。我之前发过一条推特讨论这个问题,如果你想看看可以去检查一下,但你应该尽量减少
022
代码量,一个没有适当驾驭和控制的代理将会很乐意为你编写大量的代码。
023
你可能根本不需要那部分代码。它可能是过度防御性的。它可能为了应对那些实际上并不存在或根本不重要的情况而过于兼容回退版本。所以,真的需要这样做的
024
这做得很好有很多细微之处,而且这些模式中的许多仍然在被逐步弄清楚。
025
但有趣的是,在过去的几个月里,如果你看看工具调用,比如编写或编辑文件、运行shell命令、上网搜索等,你会发现这种情况仍在继续
026
上升约30%。而对我来说,我思考的方式是代理和模型通常在调用工具方面变得更好。如果你调用工具,这基本上可以近似为一个代理的能力
027
有用性。如果他们正在做更多的文件更改,正在浏览网络,运行shell命令,那么它们可能对你来说更具有生产性和帮助性。所以,我将这个图表视为通用的
028
模型智能和模型质量随着时间的推移而提高,这让我觉得很有趣。
029
然后,在这一部分的最后一部分,AI生成的代码存活时间更长。
030
这是一个Cursor可以通过我们的数据提供的非常有趣的统计数据,但AI线条在60分钟后仍然存在。而且,你可以争论
031
那个时间段的正确时长。
032
我认为对我来说,我得到的感悟是代码是非常粘性的,这也是为什么很多人说添加大量的代码是对该软件维护的一种负担
033
时间。所以,伴着强大的权力也伴随着巨大的责任。是的,我们能够生成和编写大量的代码确实令人惊叹,但是那些资深的高级工程师、代码架构师,
034
思考如何构建这些系统并在长时间内保持可维护性的人,也在试图对抗AI,并利用AI来进行代码审查
035
更容易,确保我们不会添加不必要的东西。我认为这种趋势将继续上升。目前市场上还没有完美的解决方案
036
已经搞定了这一点。大家仍在努力应对通过代理生成代码的便捷性,以及这对我们长期维护的软件系统意味着什么。
037
好的,第二部分。
038
智能。这真的很有趣。也就是说,这里有一个更深层次的哲学问题,我想知道人们为什么喜欢Opus?人们为什么喜欢GPT?人们又为什么喜欢其他模型呢?并且
039
是有一些关联的,你对模型温暖度的看法和模型品牌的反应之间,有点像你在建立一种类似同事的关系,
040
可能愿意为使用该模型支付溢价。我认为很多人喜欢Claude模型,很多人也喜欢GPT模型,两者都在某些方面有所趋同。
041
如何应对的最佳实践,你应该多积极地提出修改意见,你应拒绝多少建议,以及在不需要频繁询问的情况下你应该继续努力完成长期任务的程度
042
进行一些澄清问题。
043
这真的很难,让这个模型的行为正确无误是我们所有模型实验室多年努力的结果。
044
所以这里挺有趣的,可以看到Claude模型通常会稍微贵一些。但当你看每条被接受的文本的成本时,事情就开始变得有趣了。因此,如果一个模型更
045
昂贵,但可以帮助你更快完成工作,这意味着它实际上和一个需要进行大量编辑或工作效率低得多的较便宜模型的成本是一样的吗
046
更长吗?我认为在某些情况下是的。比如如果你能用最智能的模型一次性完成某件事,整体价格会比一个非常不智能的模型反复尝试要低
047
很长时间了。但这是一个微妙的问题,因为对于你大多数代理工作来说,可能并不是所有的任务都需要那样的智能或那种程度的……
048
知道,一次性能力。所以如果你为所有事情都使用最昂贵的模型,那会加起来很贵,而且我认为我们已经看到一些公司在他们身上发生的事情。
049
试图弄清楚如何平衡使用非常智能的模型和成千上万每天都在使用这些工具编写代码的工程师们的经济利益,尝试找到正确的
050
价格、性能和成本的平衡。
051
所以我们不仅在我们自己的内部评估CursorBench中看到了这一点,还在一些外部评估中看到人们试图确定他们在这种图表中的位置。因此,
052
x轴表示每项任务的平均成本,y轴表示模型在我们评估中的得分百分比。你可能会说,这是CursorBench,所以当然
053
cursor模型在这里会表现得很好,我认为这里有一些空白点,我们尝试通过多种方式使其不成立,并确保我们不是仅仅为了填充自己的
054
基准测试,对吧?但我也认为应该对此持保留态度,并将其与其他外部基准进行比较。例如,我们报告TerminalBench和SweBench的结果
055
多语言,然后有人工分析和其他一些外部基准,你可以在其中进行自己的比较。例如,人工分析
056
基准结果与我们这里看到的非常相似。
057
嗯但在我看来,它试图展示的是,在某个价格点上我们对智能的价值是多少?尤其是完成一项任务所需总时间的问题。
058
如果有一个模型的快速版本,并且在经济上比其他快速模型便宜得多,那么我们是不是应该使用那个更快更经济的模型来完成工作呢?
059
快速吗?
060
视情况而定。视团队而定。
061
好的。高频用户差距,第三点。
062
这真的很有趣。这个真的让我大吃一惊。我意思是,这合情合理。你看人们在X上构建这些疯狂的东西,你又听说有些人只是用
063
大量的代理人在创造疯狂的东西。
064
当你查看这种使用情况时,你会发现一小部分开发者正在用AI编写大量代码,或者构建这些非常复杂的代理系统,并且使用了大量的代币。
065
他们正在使用代币来自动化软件,我们稍后会谈到这个话题。
066
嗯但,我认为这里需要带走的是类似于代码行数。我认为代币消耗并不是一个完美的衡量标准。我认为有一些数量的代币
067
这里存在浪费,即使是在最前沿尝试和使用这些模型和代理的人群中,哪怕他们已经尽可能多地利用了这些工具,也明知这并不是一个完美的衡量标准
068
生产力,有些代币似乎是在追求某种对你而言的意义的过程中被浪费了,但变得更加以AI为中心,找出AI代理的工作流程,等等。
069
杂乱无章的词语组合用来描述那个。
070
每个人都在试图颠覆自己,并弄清楚他们如何使用这些工具。
071
而对于很多人,尤其是很多公司来说,他们愿意在实际有多少该代币使用只是出于追求更大目标而产生的浪费上接受一些误差范围
072
目标是对整个劳动力队伍进行技能提升或重新培训。所以这很有趣。
073
我认为这意味着值得投入学习最新的模型,学习最新的代理。同时,用成本与智能之间的权衡角度来看待这一点也是可以的。
074
性能,尝试从你使用的工具中获得最大的价值。
075
所以当你看到这些开发人员开始远离中位数开发人员时,这张图表是用每周的代码行数来衡量的,我们之前已经讨论过这一点,就是说,你
076
知道,一个不完美的衡量标准,但仍然有趣。
077
然后这里还有一个有趣的事情。当你查看代码行时,中位数的活跃用户合并了。
078
他们合并了15倍更多的PR。
079
嗯,这真的很有趣。我其实更喜欢合并的 PR 作为比新增代码行数更好的指标,因为从合规的角度来看,很多公司至少需要有
080
一个人工审查员签署一份PR。
081
所以,如果确实有这样的PR被合并了,至少是有某个手动审查者进行了某种形式的检查。
082
现在,这可能只是一个粗略的检查,无意冒犯,但他们正在审查一下代码。
083
而对于一个PR被合并,并且知道这段代码会上线,有人会负责这段代码,这比我只是生成了一堆代码要更高的门槛。
084
就像调试出了这个原型,对吧?所以这挺有趣的,我认为这也印证了我之前说的话,P99 的人们真的想把这些模型用到极致,找出
085
如何重新构想他们的工作流程。现在,背景是这样的,这可能不是那么有趣,但我认为仍然相当有趣,作为附带说明。这些事情中的大多数
086
编码代理和控制装置正在为你处理这一切,幕后操作,但随着时间的推移,你会看到更多的输入代币,这很有道理。就像你给模型提供
087
嗯,你知道的,一个相对简单的要求,然后他们为你做了很多工作。所以当你看这个输入混合时,90% 的输入输出代币体积,它
088
使上下文成为非缓存模型使用的主要部分。如果你跳到输入上下文,你会发现现在的主要费用基本上就是这个。所以它现在主导了这个费用
089
消费已经占据主导,自年初以来,价格等价代币的使用量已经超过了一半的输入输出代币成本,并且现在接近70%,如果我们再深入分析一下
090
时间,大部分都会是现金。所以,现金兑换代币将会主导所有这种总代币活动,这真的显示了这个代理工作的重要性,以实现重复利用
091
为了利用先验上下文,使用提示缓存,你知道的,模型和模型提供商正在将新的策略融入到他们提供的模型中,以便更好地利用
092
利用现金的优势。随着上下文的增长,当你要求代理进行这些非常非常长的线程或对话,然后随着时间进行自我总结或压缩,这一点变得非常重要
093
尽可能多地以现金形式持有。而要做好这一点,随着这些模型变得越来越复杂,其中有很多细微之处需要注意,比如工具调用等。所以我们有一篇博客文章,如果你想了解更多关于我们是如何尝试做到这一点的
094
为了在各种模型和提供商之间最大化缓存,但这是一个非常棘手的问题。
095
而作为总结,有趣的一点是,你可能会认为人们与编码代理或用AI编写代码的方式是将简单的提示输入到文本框中
096
编写计划和审查计划并作出相应更改,但我觉得越来越多的变化是被直接接受而无需手动审核的,我认为这个数字比我预期的要低
097
如果你身处SFX zeitgeist在线泡沫之中,你会期望看到什么。
098
像30,这是什么?30 6%?我是说,如果你只是跟着网上那些 hype 循环走的话,可能会觉得大家都在不经审查地合并代码,但我认为对大多数团队来说
099
我谈论的是合规原因或软件质量维护原因,进行这样的审查仍然非常重要。
100
我从中学到的一点,尽管它有优点和缺点,是我们在构建这些代理系统时真的需要弄清楚如何
101
你构建这个可重复的软件工厂,并且在团队中自动化最佳实践,无论是建立在代理SDK之上,这种SDK可以抽象掉一些缰绳和模型
102
还是设置自动化的安全审查或代码审查或其他事情。
103
我认为这是我们现在看到的下一个趋势,这些自动化、云代理、系统可以在夜间运行,在后台运行,并帮助你
104
制作出更好的软件质量,最终在一天结束时做出更好的产品。随着你不断改进并重新定义软件工程的样子。
105
所以,这就是报告。我知道我试图快速浏览了一下,并提供了一些我的评论,但我发现这真的很有趣。这些数据有助于理解软件
106
工程作为一个行业是如何变化的。
107
所以,请告诉我你认为最有趣的部分是什么,如果我们应该再次做这样的事情。
108
安好。
end of transcript · 108 segments