AI 驱动的开发工具如何影响软件可观测性
快速阅读: 据《硅角度》最新报道,本文探讨AI工具对软件开发的影响,强调AI辅助开发虽能提升效率,但也带来可观察性、信任及责任归属等问题。作者呼吁加强人类监督,确保AI生成代码的可靠性和安全性。支持优质内容,请加入支持社区。
在X平台上,有个AI迷弟炫耀说只用了几个生成式AI工具的提示,就在五分钟内完成了整个程序。但让我们正视现实,未来几年对软件驱动的公司和工程师来说将充满挑战。即便是快速崛起的成功初创企业,也面临用更少资源交付更多软件的压力。这意味着,我们可以预见越来越多的人工智能工具将被引入开发环节,试图提升开发效率,甚至取代部分开发工作。
然而,关于生成式AI的一些问题也逐渐浮出水面。例如,加拿大航空公司聊天机器人因无端退款而受罚;微软的实验性Tay聊天机器人因与偏见用户互动变得种族主义化。这些故事提醒我们,大型语言模型虽然复杂,但其生成的内容往往不可预测,难以用传统测试手段完全掌控。尽管我们已讨论过将AI驱动的应用推向客户的风险,现在让我们转向开发阶段,探讨AI工具如何影响软件可观察性,并寻找这些问题的根源。
问题是,我们如何确定AI开发工具在生产环境中的可靠性?作为人类开发者,我们的生产力已达到历史高点,部分得益于自动化和敏捷DevOps实践的推进。如今,借助AI辅助,我们还能在哪里继续突破?
近期发布的2024年DORA报告提供了更客观的数据支持。这份由谷歌赞助的研究显示,AI确实提升了文档质量、代码质量和代码审查速度。但值得注意的是,随着AI采用率每增加25%,预计交付吞吐量会下降1.5%,交付稳定性则会减少7.2%。这表明,包含复杂概率加权和非确定性思维的AI生成代码相比传统基于规则逻辑的应用程序,其可观察性更低。
不仅仅是AI生成代码偶尔出错的问题,更大的挑战在于信任。生成式AI倾向于给出看似合理且可信的答案,除非明确要求它检查自身“思考”的可信度,否则它通常表现得十分自信。即便如此,我们仍需深入研究AI对可观察性的影响,但仅触及表面。
为了进一步复杂化这一议题,我与几家顶级可观察性和软件质量解决方案提供商进行了交流。首先从政策导向入手,对齐问题尤为棘手,因为AI工具与最终用户意图之间存在双重隔阂。换句话说,AI不仅要与开发者的意图保持一致,还要帮助开发者将AI驱动的软件与企业的业务目标相匹配。
SmartBear是最早发布具体指南的供应商之一,说明如何在其内部使用AI进行开发,随后开始向软件交付团队推出AI驱动工具。SmartBear首席技术官文妮塔·普拉尼克表示:“你依然可能陷入通过错误跟踪来观察可观察性的误区,这预设了你在软件开发生命周期(SDLC)中所做的所有其他工作都能为客户创造价值,但你不能将其视为理所当然。”
她补充道:“我怎么知道我们编写的每一行代码,无论是AI生成的还是人工编写的,是否真正达成了这些目标,让客户感受到随着时间推移,他们从服务中获得了更多价值?”
尽管AI例程在处理真实用户监控流量、生成潜在测试场景和自动化拉取请求测试运行方面表现优异,但任何此类系统仍需依赖于理解预期业务成果的人类,配合使用可观察性和回归测试工具来查找意外后果。
“所以系统表现不佳,”普拉尼克说,“你可以通过一些提示工程来修复它。或者也许你可以试试新模型,看看能否改善情况。但在修复过程中,你并未破坏已经正常工作的部分。这就是目前与这些AI系统合作的本质——修复一个问题常常会导致另一个你未曾察觉的问题出错。”
近年来,一种名为“vibecoding”的新现象引起了广泛关注。某些软件供应商认为vibecoding在实际工作中并未广泛发生,而另一些低代码供应商则利用AI帮助“公民开发者”构建应用程序,从而在工具包范围内运行。New Relic的AI/ML主管卡姆登·斯威塔指出:“vibecoding不仅仅是代码补全,而是仅凭提示就能开发全新服务和配置基础设施。”
斯威塔警告说:“由于vibecoders不需要了解底层技术栈,这些人甚至可能不了解可观测性或仪器化最佳实践,也不知道如何集中精力解决像SRE(站点可靠性工程师)这样的问题。在过程中嵌入良好的可观测性至关重要。”
为了解决这个问题,New Relic在其AI监控解决方案中增加了复杂的堆栈跟踪引擎,帮助工程师理解AI代理如何与生产环境中不同架构组件(如向量数据库、检索增强生成和外部服务接口)交互。
当然,vibecoding可能会取代一些从事非关键应用开发的人员,但它也可能催生一个清理混乱的小行业。有开发人员四处兜售诱人的服务:“我迫不及待地想以每小时200美元的价格帮你修复你的vibe代码。”
生成式AI与代理式AI的交织关系愈发紧密。多年来,我们已经成功使用AIOps风格的例程来筛选和标注遥测数据,从而提高可观察性工作的相关性。代理式AI承诺通过自主处理工作流中的多项任务进一步减轻工程负担,例如对比代码库变化、记录并升级事件报告以及生成测试用例。
我的担忧在于,这就像要求AI代理监控由AI生成代码的应用程序的AI过滤遥测数据,并用AI生成的测试进行测试——仿佛龙在吞噬自己的尾巴。目前仍需要有人来指导代理。
“假设说,‘代理,请写出满足这些测试的代码,’”Honeycomb开放遥测和AI的首席产品经理菲利普·卡特说。“它确实做到了。不过有个问题,它查看了我的所有测试用例,并将它们作为‘if语句’植入到函数中。”
卡特补充道:“任务确实可以加速,但有人会争论说瓶颈从未出现在代码生成一侧,而是转移到了验证和理解实际应该发生什么上。这凸显了一个事实,即我们永远无法摆脱需要有经验的人类。”
Honeycomb的可观察性平台允许工程师从热图进入代码级分析,并最近添加了AI增强的自然语言查询功能,训练其收集遥测数据以将特定开发、SRE和运维用例与服务水平目标挂钩。
早在当前AI热潮之前,我们就已见证测试自动化与可观察性领域的交叉。真实用户监控、合成测试数据和生成测试场景正在“向左移动”以提高预生产意识,同时“向右移动”以提供更好的生产可观察性和测试反馈。Katalon最新发布的2025年软件质量现状报告显示,QA是AI开发的一个亮点,超过75%的受访者表示使用了一些AI驱动的测试工具。使用AI测试工具的受访者报告称,他们在测试计划和设计方面的优先级较低(36%),而非AI用户的优先级为44%,表明通过AI减少了大量手动工作量。
这些发现支持了他们的“混合测试员”理念,即将多种不同的AI模型和代理与传统的测试自动化相结合。目的是扩大可观察性覆盖范围,缩短测试和交付周期时间,加速文档和反馈循环,同时结合传统测试自动化和手动测试任务。
Katalon本身采取了复合AI方法。其代理式AI作为“拉链”的关键,将多个AI驱动的测试、监控和可观察性工具的提示和响应缝合在一起,以验证业务场景或服务水平目标。
软件开发遵循黄金三角原则:你可以追求快、好或便宜——或者最多两者兼得。可观察性指出,对于AI驱动的开发来说,你无疑可以更快地交付软件,或许更便宜(长期来看这一点尚存争议),但在许多情况下,如果没有明确谁负责这些工具的业务和服务级别目标,更好的软件依然难以实现。
“这与其他领域专业化进入软件生命周期没有什么不同,就像可观察性导致SRE们试图弄清楚堆栈内部发生了什么一样,”Splunk可观察性高级副总裁兼总经理帕特里克·林说。“全栈开发者的概念可能会扩展,包括AI技能作为先决条件。与此同时,你仍然会有DBA和网络运营团队等专家。”
即使在使用AI工具进行开发时,Splunk的AI主管杨浩补充道:“我们始终依赖人类监管者来确保性能。现在,有了代理式AI,团队终于可以自动化一些任务,并将人类排除在外。但这并不意味着工程师不关心。他们仍然需要监控更多内容,了解什么是异常,而AI也需要赋予人类重新掌控的能力。这将把安全性和可观察性重新列为关键特性之首。”
实际上,软件可观察性的黄金信号(延迟、流量、错误和饱和度)仍然保持不变,但杨浩还强调了针对AI响应的新指标:相关性、质量、幻觉和毒性。那么谁拥有AI生成的代码呢?这是一个有趣的问题:如果我在GitHub上使用Copilot,或者使用Cursor这样的工具,当应用程序出现问题或基础架构实施错误时,应该由谁负责?SRE首先应该联系谁?
“我们仍然有许多SRE和工程师不相信计算机能够进行这种推理。你仍然可以使用大型语言模型(LLM)来建议方法,但你的系统越自动化和复杂,就越需要人类参与其中,”Grafana Labs首席技术官汤姆·威尔基说道。“LLM可能会编写部分代码,但如果其中存在错误,那仍然是我的代码和拉取请求。”
不过,我还是想知道,在开发者注册时批准冗长用户协议声明的情况下,代码及其在产品中所代表的知识产权究竟归谁所有?
“作为管理层,我们决定采取一种敢于承担风险的态度对待AI工具,”威尔基说。“而且我们是开源的,我们的90%代码将在公共领域,所以我们不用担心工程师使用这些工具并将专有代码泄露给LLM。我们可以吸引工程师加入我们,因为我们是开源的。”
无论如何,对开发人员来说只会越来越难。竞争会更加激烈。一些公司会因为AI或其承诺而裁员。几乎任何规模较大的软件公司如此迅速地拥有“AI主管”领导角色确实令人惊叹。在DevOps或云计算出现后的大约五年内,我们就看到了带有这些流行语头衔的总监级任命。所谓的‘五年AI开发经验’可能成为一些招聘广告中难以达到的要求。即使是像Anthropic这样的AI开发公司也不得不告诉求职者在招聘门户网站上回答问题时不要使用AI。
已投入数十亿美元开发AI工具,所以不大可能有人声称减少了人力和时间却从中受益。至少,在出现更多由于缺乏充分的人类监督和管理而导致的重大生产事故之前,这种情况不会改变。这就是为什么AI感知的可观察性和向左移动的生产测试比以往任何时候都更重要,可以在功能错误和配置漂移扩散到各处之前加以阻止。
**Jason Ingalls** 是Intellyx董事及首席分析师,他为SiliconANGLE撰写了这篇文章。©2025 Intellyx B.V. Intellyx对此文章负有编辑责任。本文内容并非由任何AI机器人撰写。
**注**:SmartBear是Intellyx的客户,Dynatrace、New Relic和Splunk曾是Intellyx的客户。文中提到的其他组织均不是Intellyx的客户。
图片:SiliconANGLE/Ideogram
来自SiliconANGLE联合创始人John Furrier的一条消息:
您的支持对我们非常重要,它帮助我们保持内容免费。只需点击一下即可支持我们提供免费、深入且相关内容的使命。加入包含超过15,000名#CubeAlumni专家的社区……你们确实是活动的重要组成部分,我们非常感激你们的到来,我知道大家也很欣赏你们创造的内容。
(以上内容均由Ai生成)