新一代人工智能可加快编码速度,但企业仍应考虑风险

省钱田田 2024-11-23 08:50:39

国际快递 · 清关 · 代拍

海外古董 · 艺术品 · 名画 · 名表

【FuninUSA.NET综合报道】开发人员现在可以求助于生成式人工智能(Gen AI)来更快、更高效地编写代码,但他们在这样做的时候应该小心谨慎,关注度不应低于以往。

Forrester公司副总裁兼首席分析师Diego Lo Giudice告诉我们,虽然人工智能在软件开发中的应用可能并不新鲜,但它至少从2019年就开始出现了。

Lo Giudice告诉ZDNET,以前的人工智能迭代主要用于代码测试,利用机器学习优化测试策略模型。Gen AI超出了这些用例的范围,它提供了对同行程序员或专家(如测试人员或业务分析师)的访问,可以通过交互式查询快速找到信息。Gen AI 还能提出解决方案和测试用例。

他说:“我们第一次看到了传统人工智能和其他技术无法提供给我们的显著生产力提升。”

IDC预测,到2026年,亚太地区40%的新应用将是“智能应用”,这些应用将集成Gen AI,以增强用户体验并提供新的用例。

具体来说,根据IDC委托低代码开发平台OutSystems进行的研究,在软件开发和设计中使用Gen AI的最大影响将是提高生产率和开发速度。

IDC的研究预测,这种潜在的商业利益将促使30%的亚太地区企业为应用程序开发中的Gen AI功能支付11%至20%的溢价。

该研究公司还预计,到2025年,全球将有超过60%的企业采用低代码技术,以加快应用交付速度并提高运营效率。

Lo Giudice指出,开发人员可以在整个软件开发生命周期中利用人工智能,在每个阶段使用专用的“图灵机器人/TuringBots”来增强技术堆栈和平台。

Forrester创造了TuringBots来描述人工智能驱动的工具,帮助开发人员构建、测试和部署代码。该研究公司认为,图灵机器人将推动新一代软件开发,在开发生命周期的每个阶段提供帮助,包括查找技术文档和自动完成代码。

例如,“分析/规划图灵机器人”可以促进软件开发的分析和规划阶段,Lo Giudice举例详细介绍了OpenAI的ChatGPT和Atlassian Intelligence这类人工智能产品。他说,其他产品,如谷歌云的Gemini Advanced,可以生成微服务和API的设计及其代码执行,而微软的Sketch2Code则可以从手写的草图UI生成工作代码。

Lo Giudice补充说,“编码图灵机器人/coder TuringBots”目前是Gen AI在软件开发中最流行的使用案例,它可以根据提示以及流行的集成开发环境(IDE)通过自动完成的代码上下文和注释生成代码。这些语言包括JavaScript、C++、Python和Rust等常用语言。

Boomi公司架构和人工智能战略主管迈克尔-巴赫曼(Michael Bachman)说,生成模型的一大亮点是可以用多种语言编写代码,允许开发人员输入提示来生成、重构或调试代码行。他说:“基本上,所有与Gen AI交互的人都是准高级开发人员。”

这家软件供应商将Gen AI集成到了它的一些产品中,其中包括Boomi AI,它可以将自然语言请求转化为行动。Boomi表示,开发人员可以使用Boomi AI设计集成流程、应用程序接口和数据模型,以连接应用程序、数据和流程。

该公司使用Gen AI为自己的软件开发人员提供支持,他们密切关注运行其平台的代码。

“这就是关键所在,”巴赫曼说。“如果你把Gen AI作为构建整个应用程序的主要来源,你很可能会失望。优秀的开发人员会将Gen AI作为跳板,或者在将代码投入生产之前彻底测试失败场景。这就是我们内部的处理方式”。

他的团队还致力于构建功能,以满足客户的“实际人工智能目标”。例如,Boomi正在创建一个检索系统,因为它的许多客户希望用自然语言查找内容(如网站上的目录)的能力来取代关键词搜索。

Lo Giudice说,开发人员还可以利用Gen AI来修复安全问题,在AI生成的代码中查找漏洞,并提出建议,帮助开发人员修复某些漏洞。

Forrester首席分析师约翰-布拉廷斯维克(John Bratincevic)说,与传统编码相比,无代码或低代码开发策略可以提供速度、内置质量和适应性。

Bratincevic说,它还提供了一个集成的软件开发生命周期工具链,并提供了一个扩大的人才库,其中包括IT社区以外的非编码人员和“公民开发人员”。

不过,他提醒说,企业可能会面临与大规模实施的管理有关的挑战,尤其是在管理可能多达数千人的公民开发者方面。他说,定价也可能构成障碍,因为定价通常是基于最终用户的数量。

虽然Gen AI或人工智能软件助手可以让初级专业人员填补网络安全等领域的人才缺口,但Lo Giudice表示,所有这些任务仍然需要专家的眼光来审视。

Bratincevic对此表示赞同,并强调开发人员和软件开发生命周期中的其他员工需要对平台使用人工智能生成或自动配置的所有内容进行审查。

他说:“我们现在还没有,也许永远也不会达到盲目信任人工智能进行软件开发的地步。”

Thoughtworks亚太区首席技术官斯科特-肖(Scott Shaw)认为,首先要考虑安全要求。这家技术咨询公司定期测试新工具以提高效率,无论是在集成开发环境中还是在支持开发人员工作方面。Shaw告诉我们,该公司会在适合客户的情况下进行测试,并且只在征得客户同意后才会这样做。

他说:“我们的经验是,[由Gen AI驱动的]软件编码工具并不具备安全意识,也不[适应]安全编码实践。例如,在受监管或数据敏感环境中工作的开发人员可能必须遵守额外的安全实践和控制措施,作为其软件交付流程的一部分。”

他指出,使用编码助手可以提高一倍的工作效率,但开发人员需要考虑他们是否能够充分测试代码,并满足流水线上的质量要求。

这是一把双刃剑:企业必须研究Gen AI如何增强他们的编码实践,从而使他们开发的产品更加安全,与此同时,人工智能绾瓮ü碌墓セ髟靥搴吐┒创锤嗟陌踩缦铡�

Shaw指出,由于Gen AI能带来巨大的规模,因此它放大了企业所做的一切,包括相关的风险。它可以生成更多的代码,这也意味着潜在风险的数量成倍增加。

了解您的人工智能模型

虽然低代码平台可能是Gen AI图灵机器人辅助软件开发的良好基础,但Bratincevic指出,企业应该了解所使用的大型语言模型(LLM),并确保它们符合企业政策。

他说,Gen AI公司在这方面“千差万别”,并敦促企业如果使用OpenAI的 ChatGPT等公共LLM,应检查版本和许可协议。

他补充说,从自然语言生成代码或组件配置的Gen AI驱动型功能尚未成熟。公民开发者可能会越来越多地采用这些功能,但它们不太可能给专业开发者留下深刻印象。

布拉廷采维奇说:“目前,一个经过验证且集成良好的低代码平台加上Gen AI,比一个未经验证或轻量级的平台在AI上说得天花乱坠更明智。”

巴赫曼补充说,虽然低代码管理器承担了代码编写的重任,但人类仍然需要了解所需内容,并提供相关的上下文、专业知识和调试,以确保输出准确无误。

他说,“开发人员还需要注意共享专有数据和知识产权(IP),尤其是开源工具。他们应避免使用私人知识产权,如代码和财务数据,以确保不会使用其他组织的知识产权来训练自己的Gen AI模型,反之亦然。”他补充说:“如果您选择使用开源LLM,请确保在投入生产之前对其进行了充分的测试。”

“我会对Gen AI工具所训练的模型持谨慎态度。如果你希望这些模型有价值,就必须建立适当的管道。如果做不到这一点,Gen AI可能会带来更多问题。”

现在还为时尚早,这项技术仍在不断发展;它对包括软件开发人员在内的各种角色如何变化所产生的影响还远不确定。

例如,人工智能驱动的编码助手可能会改变技能的估值方式。Shaw打趣道:开发人员被认为更优秀,是因为他们更有经验,还是因为他们能记住所有的编码顺序?

目前,他认为最大的潜在用例是Gen AI总结信息的能力,为开发人员更好地了解业务提供了一个良好的知识基础。然后,他们可以将这些知识转化为具体的指令,这样系统就能执行任务,构建客户需要的产品和功能。

欢迎到FuninUSA.NET论坛讨论

0 阅读:0