本文来自微信公众号“开源云中文社区”。
Jyoti Bansal是Harness的首席执行官,Harness是一家DevOps公司,最近将其口号调整为“业界第一个使用人工智能简化DevOps流程的软件交付平台”。当然,Harness并不是第一家大力转向人工智能的公司,但考虑到其对持续交付的关注,笔者采访了Bansal,了解人工智能现在是如何在Harness及其客户中使用的。
第一个问题是生成人工智能对开发人员及其工作流程产生了什么影响。
他回答说,人工智能可以缓解软件交付生命周期中涉及的繁琐和重复的任务,从基于现有功能生成规范到编写代码。此外,他表示,人工智能可以自动化代码审查、漏洞测试、错误修复,甚至为构建和部署创建CI/CD管道。
Bansal说:“通过智能地使用生成人工智能,我们可以很容易地在开发者工作流程的每个部分将效率提升30%~40%。”
Harness如何用人工智能
由于Harness本身大量使用人工智能技术,笔者向Bansal询问了这方面的细节。
他表示,利用人工智能的一个关键领域是确保代码更改不会对性能、质量或安全产生负面影响。Harness在其持续交付管道中利用人工智能模型,他解释道,这些模型将代码更改与DataDog、Azure Monitor和Splunk等监控和日志记录系统的数据进行比较。这些人工智能模型可以在代码更改部署到其系统中的生产之前识别任何潜在问题,从而实现快速可靠的部署管道。
Harness采用的另一种人工智能技术是Bansal所说的“测试智能”。他说,这解决了测试执行时间过长的常见挑战。通过使用人工智能模型,Harness识别代码中与特定测试相关的部分,使其开发人员能够优化需要运行的测试。Harness可以确定给定代码更改所需的特定测试,而不是为每个代码更改运行一套大型测试。这大大减少了测试执行时间,提高了开发人员的生产效率。
他说:“我们一直在构建许多较小的技术来优化事情。”
Bansal还证实,该公司正在积极开发基于人工智能的生成方法,以进一步增强其平台,但他不愿透露这些尚未宣布的功能的任何进一步细节。
嵌入还是单独出售
Bansal关于人工智能的一句格言是,它应该嵌入B2B产品中,而不是作为单独的附加组件出售。他解释说,在客户支持方面,人工智能可以用来对客户的查询做出适当的响应。同样,在销售中,人工智能可以帮助潜在买家开展外联活动。
至于开发者产品,Bansal指出,客户越来越要求将人工智能功能直接集成到他们购买的产品中,而不是依赖于单独的人工智能解决方案。他说,这种方法确保了人工智能适合特定的用例和领域。
提示工程
笔者问Harness是否有任何功能有助于“提示工程”这一新角色——许多开发人员现在正在适应这一角色(例如,当从GitHub Copilot获得代码完成帮助时)。
Bansal承认在DevOps过程中提示工程和他所称的“多智能体技术”的重要性。他说,Harness正在积极将这些概念融入平台,但到目前为止还没有什么要宣布的。但他说,目标是创建一个模型,通过利用代理执行各种任务来促进开发人员的工作流程。因此,你将拥有创建代码规范、编写代码、生成测试用例和执行代码测试的代理。
安全
Bansal还是他共同创建的一家名为Traceable(“企业级智能API安全”)的新公司的首席执行官。他解释道:“可追踪性监视并分析每一个API调用,确保敏感数据不会被无意中发送到GPT、API或其他端点。”它利用人工智能技术进行监控,并检测任何潜在的安全漏洞或数据泄露企图。
Bansal说,Traceable的AI模型建立在API数据湖上,这使得安全团队能够实时识别和解决安全挑战。对确保基于人工智能的生成流量的需求正在迅速增长,尤其是在银行和金融服务等数据隐私备受关注的行业。
为IT部门和开发人员提供建议
Bansal建议企业公司的IT部门利用供应商提供的生成人工智能能力,而不是试图在内部构建这些能力。他建议公司专注于在非核心业务领域整合生成人工智能,如开发工具、销售工具、营销工具、会计和人力资源。他说,通过推动供应商将生成人工智能能力融入这些产品,公司可以从这些进步中受益,而无需投入大量资源。
然而,他也指出,公司值得探索在其核心业务领域使用生成人工智能,在那里它可以增强客户体验。例如,银行可以考虑在网上银行中使用生成人工智能机器人,零售商可以探索基于生成人工智能的个人购物助理。
至于开发人员,他强调了学习如何有效使用人工智能并将其融入软件交付生命周期的每一部分的重要性。他说,通过利用生成人工智能,开发人员可以更高效,在更短的时间内完成任务。