DIFF风险评分(DRS)是在Meta建造的AI驱动技术,可预测代码更改的可能性,导致生产事件,也称为SEV。Drs建立在微调的Llama LLM上,评估代码更改和元数据以产生风险评分,并突出潜在的风险代码段。如今,博士为许多风险感知功能提供了优化产品质量,开发人员生产率和计算能力效率的功能。值得注意的是,DRS帮助我们消除了主要代码冻结,从历史上无法对客户体验和业务产生最小的影响时,使开发人员发货代码。
软件开发充满了风险,尤其是对于复杂的,快速发展的和规模的产品和技术。由于META在全球范围内运行,因此我们需要最佳的工具来降低风险并保护用户体验和广告商成果。
AI正在改变我们的制造产品的方式,因此我们致力于应用AI来改善软件开发过程的各个方面。生产风险是我们首先解决的领域之一。我们认为,如果配备了可以预测代码更改是否可能导致SEV的模型,我们可以构建功能和工作流程以改善写作和推出代码的几乎所有方面。
由于DRS用例太多了,无法在此处进行深入介绍,因此我们将重点关注一个:代码未冻结。对于元数据,生产事件可以推动显着的负面用户体验和广告客户影响。因此,一些团队历来在敏感时期(例如网络5假日购物周)冻结了代码库的主要部分,阻止工程师无法运输代码以降低事件风险。对于某些团队,它减少了他们的假日购物代码冻结,从而显着提高了生产力。
尽管这具有明显的可靠性福利,但折衷是生产率的大幅降低。DRS启用了一种更加细微的方法,使开发人员在这些时期内降低了低风险的变化,同时最大程度地减少了生产事件,从而保护了用户体验,业务和生产力。实际上,DRS驱动了许多敏感时期的有意义的生产力。在一个这样一个时期,我们在2024年举行了一项重大合作伙伴活动,我们对10,000多个代码更改(以前在冻结期间无法降落),生产影响很小,从而使创新和客户成功持续了。更重要的是,通过以这种方式管理生产力和风险,我们两次受益:通过更多的代码和更少的工程时间来检测,理解和减轻生产事件。
代码未冻结效果很好,但这只是技术可以做的事情的开始。了解风险,甚至不完美,在统计水平上,以比我们预期的更多方式促进了元的改进 - 风险工具和增长有19种用例!
DRS的成功促使从计划监测到释放后监控,创建了整个开发生命周期的元素范围内的新风险感知功能。建立此类功能的需求也使我们建立了风险意识平台,以提供风险分析API和工具集成。
我们设想在未来几个月和几年中,四个主要的风险意识方向。
首先,虽然我们在风险意识平台上看到了DRS驱动功能的爆炸,从优化构建和测试选择到提高可靠性,选择代码审阅者以及分析释放风险,但我们相信这仅仅是开始。软件工程中的一个关键问题是最大化的创新率受可靠性阈值,因此,了解风险理解的应用几乎是不可取证的。我们认为,代码风险可以在改善这种权衡方面发挥重要作用,因此我们将在提高其质量的同时建立更多的风险感知功能。随着风险模型,功能数据和用户体验的改善,我们将为使用Meta广告的产品和企业的人们提供更大的现实福利。
其次,我们将扩展到代码更改风险到配置变化风险。虽然代码更改导致元中的多个SEV,但配置更改是另一个大类别。因此,我们将RAP扩展到包括预测各种配置更改风险的模型。这些努力是最新的,专注于开放研究领域,更早地研究了研究对生产的连续性,但是我们相信它们很快就会像今天的Drs一样为自己的家族提供动力。
第三,我们想自动化风险缓解步骤。我们希望使用AI代理主动产生降低风险的变化,而不是标记有风险的差异并建议适当的审阅者或回滚机制。这可以用于运动中的代码(即差异或拉出请求)和静止代码以降低基线代码库风险。此外,一旦我们对配置风险有了更深入的了解,这些代理将能够在代码和配置更改中灵活操作。
第四,我们将越来越多地使用自然语言输出来向人类展示这些风险感知的技术正在做什么以及原因。通过帮助工程师了解风险评分背后的基本原理,我们将使他们能够减轻风险或提供模型反馈以提高准确性。这创建了一个学习循环,以改善我们的风险模型和最终用户体验。LLM解释性仍然是一个开放的研究领域,但是我们的团队正在积极努力为常见问题提供答案。
我们为风险感知软件开发的未来感到兴奋,我们期待在我们在这个有价值的领域取得进步时向行业中的同事学习。
Rui Abreu, David Amsallem, Parveen Bansal, Kaavya Chinniah, Brian Ellis, James Everingham, Peng Fan, Ford Garberson, Jun Ge, Kelly Hirano, Kosay Jabre, David Khavari, Sahil Kumar, Ajay Lingapuram, Yalin Liu, Audris Mockus, Megh Mehta, Vijayaraghavan Murali, Venus Montes, Aishwarya Girish Paraspatki, Akshay Patel, Brandon Reznicek, Peter C Rigby, Maher Saba, Babak Shakibi, Roy Shen, Gursharan Singh, Matt Steiner, Weiyan Sun, Ryan Tracy, Siri Uppalapati, and Nachiappan Nagappan.