共计 5470 个字符,预计需要花费 14 分钟才能阅读完成。
随着生成式人工智能的崛起,似乎程序员的角色正受到前所未有的挑战。
关于 AI 编程工具是否会取代程序员的话题,几乎在每隔一段时间都会被重新提起。
围绕 AI 编程引发的讨论让人感到困惑:这是否意味着编程领域将迎来一场生产力的革命?还是说,这仅仅是一场被过度夸大的炒作?

大型企业在寻找答案方面走在了前头。以百度为例,借助 AI 编程,其人效提升达到了 10%,而工程师提交的新增代码中竟有 27% 是由 AI 生成的。
然而, 作为百度 Comate 的架构师,徐晓强对此持有不同看法。他坚决反对“开发者会被编程工具取代”的说法。 凭借其在研发与架构方面的丰富经验,他深信人类的决策及创新能力是不可替代的。
“工具的作用是帮助人类做得更好,而非取代人类。”在采访中,他多次强调自己的这一观点,“人类的决策和创新能力,永远优于任何模型。”
不过,他也敏锐地察觉到,随着 AI 的逐步渗透,软件工程领域正在经历显著的变革。开发者与 AI 之间的角色界限逐渐模糊,协同工作的新模式即将到来。
作为 Comate 的积极用户,徐晓强在直播中分享了多种使用编程工具的技巧和体会,他建议用户应多加练习,以期达到“熟能生巧”的效果。
徐晓强对于 AI 编程未来的设想,既遥远又充满希望。 他期待着,当编程工具实现质的飞跃后,人们能够与 AI 以更加平等和对话的形式进行协作, 甚至能够超越语言,在意识层面进行沟通,从而实现“人人都是程序员”的理想蓝图。
以下是访谈的要点:
-
目前,AI 编程产品正在不断提升其横向和纵向的能力,以满足日益增长的“真实需求”。
-
但辅助编程工具无法替代开发者,其目的是为了更好地与人类协作,提升人类的能力。
-
AI 在深度理解信息、多模态信息处理及创新能力方面,依然存在显著的缺陷。
-
软件工程的 3.0 时代将是人与 AI 协同工作的新时代,研发流程将被重新定义,需求工程将成为核心。
-
AI 编程的隐私和版权问题需要在技术和法律层面双管齐下。
未来的对话将成为 AI 编程工具的主要交互手段,编程产品将从研发场景扩展到非研发场景。
1.AI 已为百度贡献 27% 的新增代码, 而编程工具在满足“真实需求”上需要用户更多的探索
AIGC 实战派: 目前有一种看法认为,AI 编程可能会显著改变与编程相关的工作岗位,这种观点引发了一些担忧。然而,许多人逐渐意识到,AI 在编程中的效率远未达到我们的预期。
那么,AI 编程的火热究竟是源于真实需求,还是仅仅是噱头呢?
徐晓强: 我们不妨暂时抛开这些观点,来看看现实情况。
首先,尽管 AI 编程工具的广泛应用与接受尚需时日,但 AI 编程的市场热度显而易见,并且将会涌现出越来越多的实际案例和商业价值。
其次,AI 编程产品将不断演进,以满足更多“真实需求”。以我们的 Comate 2.0 为例,我们在不断努力提升产品的纵向和横向能力。
在横向方面,我们期望 AI 编程能够覆盖更广泛的研发场景。例如,利用 RAG 技术深入理解项目及代码,从而在多种环境中提升研发效率。在纵向方面,我们希望 AI 能够在某个特定行业或场景中深入挖掘。
最后,AI 编程工具的效率提升效果可能因个人和组织的不同而有所差异,用户需要培养使用习惯,找到与工具的最佳契合点。为了更好地与 AI 工具协作,用户应明确需求,将 AI 视作一位随时可供咨询的私人助手,不断进行探索和互动。
此外,许多开发者也能够将 AI 编程作为学习工具,借此了解不熟悉的编程语言、框架及代码实现思路,甚至深入探讨实现的细节。
编程领域的 AI 助力:未来的发展与机遇
毫无疑问,人工智能在编程领域的效率提升并非空谈。自从大规模模型技术走入视野以来,百度的员工生产力提升了 10%,而在工程师提交的代码中,竟有 27% 是由 AI 生成,用户的接受度也高达 46%。如今,百度的工程师中,有 80% 已经开始借助 AI 工具进行开发工作。
进一步分析,工程师们已经体会到新一代工具所带来的显著变化,这不仅在于工作效率的提升,还增强了他们的工作满足感。
AIGC 实战派: 在使用 AI 编程时,有没有什么方法可以更有效地发挥这些工具的潜力呢?
徐晓强: 我认为关键在于多加实践。通过不断尝试,你会逐渐领悟到在什么样的情境下,AI 的表现会优于人类。随着这些经验的积累,工具的表现会逐步接近你的期望。
AIGC 实战派: 您提到百度新增的代码中,有 27% 是由 Comate 生成的,有人可能会担心,随着研发团队更多地使用 AI 工具,会不会出现裁员的情况呢?
徐晓强: 起初,我们也曾对此感到困惑和担忧。但随着对 AI 编程工具的深入使用,我意识到提高效率并非意味着取代人类,而是促使工具与人类更好地合作,从而增强人的能力。
目前,我们尚未达到一个能让程序员这一职业消失的科技阶段。即使有一天实现了这一点,也无需过于忧虑,正如汽车的出现并未使马车夫消失。
2. 人类的决策与创新永存,程序员不必担忧被取代
AIGC 实战派: 我们对 AI 编程工具的期望能达到什么程度?这些工具是否会面临能力的极限呢?
AI 编程能力的局限性分析
徐晓强: 当我们探讨人工智能编程的能力范围时,首先应关注这些工具的核心优势所在。我认为,它们特别适合处理以下三类任务:高度重复、简单且琐碎的工作。
相对而言,在需要创造性思维、决策能力以及复杂情境的情况下,人工智能的表现往往难以达到理想的水平。以下几个方面是我认为其能力受限的主要因素。
首先,当前模型对信息的理解依然浅显。尽管我们已开发出规模更大的模型,但在对代码的解析上,仍旧存在不足。代码本身作为信息密度较低的载体,其存在并非为了服务于模型或机器,而是为了在人与机器之间建立一种语言上的平衡。因此,人工智能无法通过代码全面把握全局,这无疑会显著降低决策的准确性。
其次,人类在信息存储和传播方面的方式多种多样,而人工智能在理解多模态信息(如流程图和类图)方面的能力仍显不足。这也是当前研究的一个热点领域。
再者,从模型的基本原理来看,人工智能本质上是概率模型,其输出依赖于已有的知识,缺乏真正的创造力。普通用户很难独立调整 AI 的提示(prompt),因此需要专业的提示工程师来介入。
最后,人工智能在专业领域知识的理解上仍显得肤浅,无论是私有领域的知识还是专业知识,都需要进一步的提升与加强。
基于以上几点,人工智能在某些特定场景中的表现是有局限的。人类需要充当桥梁,结合具体问题进行分析,判断哪些任务更适合交由 AI 处理,哪些则更应由人类来完成。这是人类始终优于模型的领域。
AIGC 实战派: 假设有一个不具备编程能力的人,若他能够利用强大的辅助编程工具,是否能够完成一些程序员的工作呢?
徐晓强: 我认为,现阶段这种情况在一定程度上已经实现了。
软件工程迎来新纪元,AI 协作重塑开发模式
AIGC 实战派: 然而,创造性和具挑战性的编码任务,依然是程序员们的专长吧?
徐晓强: 确实如此。
AIGC 实战派: 从这个角度来看,程序员们是否可以安心,不用担心被取代呢?
徐晓强: 没错,我认为对此完全不必忧虑。
3. 迈向软件工程的 3.0 时代,AI 协作将改变研发流程
AIGC 实战派: 如今,越来越多人提到“软件工程新范式”这一概念。在人工智能的影响下,软件工程将会发生哪些变化?从业者该如何看待并应对这些变革呢?
徐晓强: 是的。最近,软件工程 3.0 的理念变得相当流行,尽管我认为现在的阶段仅仅是迈入 3.0 时代的起点。
回顾软件工程的发展历程,1.0 时代真正规范了软件开发及团队协作的流程,但这种模式在实际操作中显得不够灵活,交付过程也不够顺畅。随着进入 2.0 时代,开发变得更加敏捷,基础设施不断完善,以云计算和 SaaS 为代表的技术带来了思维方式和产品形式的重大变化。
至于 3.0 时代,我并不认为这是一个由工具引领变革的阶段。大型语言模型(LLM)所展现的潜力使其成为变革的催化剂,而非主导者。曾经为每位开发者提供一个与之协作的角色是不切实际的,但如今,我们正迈入一个与人工智能共同工作的全新范式时代。
AI 助力工作效率的全新模式
人工智能的协作方式在多个领域为我们的工作带来了显著的提升。首先,AI 能够简化工作流程中的各项操作,使得我们在执行任务时更加高效。
其次,AI 极大地降低了我在任务切换时的时间成本。借助它,我能在同一界面上完成提问、熟悉项目、获取信息,宛如有了一位得力助手。目前我们与 AI 的互动仍局限于发出指令,但未来它或许能处理更多任务,比如执行简单的决策,这将使人机协作进入一个新的高度。
随着 AI 技术的不断发展,软件工程行业正在经历深刻的变革。研发流程将会重新设计,需求工程将成为整个交付过程的起始和终结,当前版本的功能极限也可能成为新需求的起点,推动产品的持续迭代升级。
与此同时,AI 的引入使得角色分工变得不再明确。现在,产品经理可以利用大型模型迅速生成原型,从而承担部分开发的职责。这种动态化的能力能够帮助团队更直观地理解和评估产品概念。
我坚信,人机协同的创新模式、交付方式的变革以及整个流程的转型,将共同推动软件工程的进步。
AIGC 实战派: 刚才提到 3.0 时代尚未正式开启,那么在这个过渡阶段,是否会涌现一些新的关键职位呢?
徐晓强: 是的,我们确实观察到一些新的趋势。例如,最近兴起了一个热门的新职位——提示词工程师。这一角色并不存在于以往,实际上它是从研发或产品岗位演变而来的。这表明,随着 AI 的深入应用,对原有职位的要求正在不断更新,同时催生出更为专业的细分领域,让具备这些技能的人能够发挥更大的价值。
AIGC 实战派: 那么,这些新的角色将以何种方式加入企业?是企业内部培养还是需要通过外部招聘来实现?
徐晓强: 我认为,在人工智能原生应用开发的过程中,提示词工程师这一角色至关重要。然而,这一职位目前仍然较为新颖,导致市场上很难找到具备丰富经验的人才。因此,我们通常会考虑通过内部员工的转岗来填补这一空缺,尤其是那些来自研发或产品管理领域的人才。在转型的过程中,我们会借鉴其他优秀的实践经验,以便将成功的模式进行总结和应用。
同时,我们也在工具层面提供支持。在百度内部,我们为保障整个流程的顺畅运行,开发了多款工具,例如 Comate stack 和 Playground 等。
AIGC 实战派: 您提到 AI 创造了新的工作岗位,这让我感到惊讶,但您又提到我们已有很多产品功能可以满足这些岗位的需求……这是否意味着实际上并没有创造出新的岗位呢?
徐晓强: 这并不完全是这样,我认为工具的作用在于帮助人类提高效率,而不是替代人类本身。
4. 隐私与版权问题的解决,需技术与法律双管齐下
AIGC 实战派: 去年 GitHub 推出的 AI 编程工具遭遇了一起诉讼,因 AI 生成的代码并非原创,涉及到侵权问题。我们在使用这些编程工具时,应该如何避免此类问题的发生呢?
徐晓强: 这是一个崭新的问题,当前无论在立法还是案例上,都缺乏充分的参考依据。我觉得这实际上分为两个方面:一个是技术层面,另一个是法律层面。
在技术方面,存在许多解决方案,主要是为了进行预防性保护。我们致力于确保技术的可靠性与合规性,例如在模型训练过程中,识别并避免分发受版权保护的代码片段。从产品角度来看,确保数据的合规传输至关重要,以维护用户交互中数据和隐私的安全性。
在法律层面,亟需通过立法来解决相关问题,保护公众的权益。实际上,已有一些民间行动开始进行。今年,我们作为生成式大模型智能开发标准的主要参与单位,正在编写大模型的原则与数据安全保障的相关条例。因此,可以合理期待,未来法律框架会更加完备,为行业的发展提供更有力的支持。
AIGC 实战派: 徐老师的观点非常发人深省,刚才讨论的议题并非大模型时代独有的现象。由于大模型引起了广泛的关注,同时部分人士对 AI 编程技术仍持怀疑态度,因而个别案例的负面影响可能会被过度放大。
徐晓强: 确实如此。
5.AI 编程的未来将带来质的飞跃,交互方式将变得更平等与自然
AIGC 实战派: 随着 AI 编程工具的持续进步与演变,最终的形态将会是怎样的呢?我们对于所谓的 AI 编码终极形态充满了好奇。
徐晓强: 从长远来看,我认为最终的形态会与当前的产品显著不同。
首先,人机交互的方式将会发生变化。目前,我们主要通过键盘输入信息,主动告知机器我们的意图。而未来,是否可以实现更平等的对话,甚至超越语言的限制,直接在意识层面进行交流,这将会带来全新的体验。
其次,我之前提到过的一个想法是,未来的信息载体可能会改变,甚至不再需要代码这个概念。我坚信,未来将出现新的模型及其应用形式,这些应用将基于模型运作,用户与 AI 的互动将不再依赖于代码或数据传输,从而向“人人皆可编程”的目标迈进。
设想一下,当我需要创建一个邀请朋友参加派对的应用时,只需用一句简单的话表达我的需求,AI 便能为我设计并发送该应用,让朋友们能够直接回复是否参加以及他们的想法和礼物选择。
然而,回到现实,这种理想的状态仍然相对遥远。
AIGC 实战派:未来产品规划探讨
徐晓强: 关于 Comate 的未来,我有两点主要的期待。第一,我们希望能够将其功能扩大,以便涵盖更多的研发应用场景,甚至是非研发领域,从而帮助不同角色在软件开发和工程协作中提升工作效率。
其次,我期望 Comate 在开发领域的深度应用,能够为需求分析提供更加深入的帮助。这样用户在使用的过程中,能更轻松地上手,迅速掌握技能,从而取得更出色的成果。


AI编程工具的确在提升效率方面有明显进展,但我对其能否完全理解复杂项目的需求表示怀疑,特别是在创新决策方面。