生成性人工智能正在软件开发领域掀起波澜,改变工程师的操作、迭代和开发代码的方式。
我们看到这种转变的涟漪效应在数据管理、监控和可观察性等领域显现出来。人工智能正在改变的不仅仅是工作流程,它还在改变职业道路。
开发者必须重新审视自己的角色,利用他们独特的优势来弥补知识差距,并适应一种新的工作方式。
从幻觉到自测代码,人工智能正在从错误中学习
大型语言模型(LLMs)可以用于头脑风暴、整理信息和构建代码。然而,它们仍然会犯错误,并且频繁产生幻觉,以至于不值得信赖。
幻觉是指将虚假信息呈现为真实,或生成与所提问题无关的准确答案。这种失败可能会进一步复杂化开发者的工作过程。
如今,开发者以两种方式使用AI编码助手。首先,他们可以使用AI编码助手来撰写解决方案中较小且具体的部分。
或者,他们利用它来帮助更有效地构建自己的代码,通过询问算法的特性、查阅参考资料、语言语义,以及头脑风暴解决方案的设计。
幻觉频繁出现,导致工程师不得不花费大量时间审查代码。
这让它变成了一个耗时的过程,而不是节省时间的工具。这种情况正在迅速改变:现在,AI编码代理能够构建并运行针对他们所编写代码的测试,并纠正自己的错误。因此,幻觉问题正在减少。
AI是让开发者的过程变慢还是变快?
AI是加速还是减缓,编码过程取决于具体情况;很大程度上取决于开发者的经验水平和AI素养。事实上,一项最近的研究显示,当开发者使用AI工具时,所花费的时间比不使用时多了19%。
编码代理为开发者在起草代码时提供了额外的构思层面。挑战在于,他们常常陷入循环尝试修复自己代码的困境。这意味着在处理代码库或在非典型环境中工作时,他们需要更多的指导,这可能会影响生产力。
代码和任务越专业,要取得良好结果的难度就越大,尤其是在修订和重新实现AI难以处理的代码时,需要大量的指导或人工干预。
这意味着浪费时间的程度取决于项目本身,以及工程师对提示的熟悉程度。
在失败率中,60%的缺陷是由 AI工具 引起的,包括小问题和大问题。后者指的是‘有缺陷’的代码,这些代码乍一看可能没问题,但经过考虑,开发者意识到它需要大量修复。
把AI融入DevOps
今天AI代理的最佳用例之一是站点可靠性工程。通过使用与AI编码工具(比如Cursor和Claude Code)集成的模型上下文协议(MCP)服务器,工程师可以轻松将AI集成到他们的日常 DevOps 工作流程中。
MCP使遥测数据可供AI使用,使其能够对数据进行推理,免去手动输入信息的麻烦。这不仅提高了效率,还减少了出现错误的可能性。
这使得网站可靠性工程师(SRE)能够在‘编辑器’或终端中保持专注,并快速评估服务水平目标(SLOs)的健康状况,同时收集日志,观察服务的错误和延迟分布。
将这种上下文引入并使遥测可供人工智能推理,使得每天解决任务的速度大幅提升。效率和速度的提升导致开发团队表现更好、更加快乐,他们可以专注于工作的独特元素。
他们可以致力于解决业务和组织挑战,而不是被繁重的工作负担所困扰。这只是旅程的开始。在未来,特定的工作流程将变得完全自主,由一个处于中心的人类监督,推动决策和调查。
人工智能的价值
对于开发者来说,生成式人工智能今天的主要价值在于它能够勾勒出想法并帮助进行头脑风暴,提供逐步的指导并识别新的研究领域。
它提供的指导可以帮助年轻开发者更快地提高,特别是在他们缺乏更有经验的工程师的指导时。换句话说,人工智能是否节省或浪费时间完全取决于任务的复杂程度、工程师的经验以及他们如何有效地引导人工智能。
随着人工智能工具的发展和工程师适应新的工作方法,对编码的思维方式预计将发生变化。人工智能已经在改变工作流程,但它不会完全取代人类。
相反,它将帮助开发团队填补知识空白,提供新的代码构建思路,包括一些在以往培训中可能未覆盖的选项,并处理那些每天让工程师感到烦恼的琐事。
最终,依靠人类的人工智能将是最强大的。
热门跟贴