写点什么

eBay 在软件开发生产率方面使用生成式 AI 的经验

Claudio Masolo

  • 2024-04-05
    北京
  • 本文字数:1019 字

    阅读完需:约 3 分钟

eBay 在软件开发生产率方面使用生成式AI的经验

最近,eBay 披露了在开发过程中使用生成式 AI 的经验教训。eBay 在通过 AI 提高开发人员的工作效率方面发现了三个关键途径,即集成商业产品、微调现有的大语言模型(Large Language Models,LLMs) 以及利用内部的知识网络。


采用 GitHub Copilot 等商业 AI 解决方案为 eBay 的开发人员社区带来了可喜的成果。在一项经过精心设计的 A/B 测试中,使用 Copilot 的开发人员展现出了更高的工作效率,代码接受率(通过 Copilot 遥测报告的代码接受率为 27%)和效率指标更高:生成代码的准确率为 60%。Github Copilot 的引入还降低了 PR(大约 17%),减少了变更的准备时间(大约 12%)。但是,像提示(prompt)大小限制等问题凸显了在 eBay 的庞大代码库背景下定制解决方案的必要性。


通过对 Code Llama(尤其是 Code Lllama 13B)等开源 LLM 进行后期培训和微调,eBay 开辟了一条新的途径,以简化劳动密集型任务和减少代码重复。eBayCoder 是一个基于组织专有数据(代码库和文档)训练而成的定制模型,它的开发成功证明了 LLM 定制在解决 eBay 生态系统特有的挑战方面的潜力。这种方式很好地解决了一些以往需要花费大量时间的任务,比如更新库以修复安全漏洞。


鉴于 eBay 代码库的广泛性和多样性,典型的商业大语言模型有可能只能访问与特性查询直接相关的数据和代码。通常情况下,这包括紧密相关的文件、当前的仓库和少量的依赖库。但是,这类模型可能会忽略其他团队管理的内部服务或非依赖库,即便它们提供了与当前开发完全一致的功能。因此,这往往会导致大量的代码冗余。与之不同,经过专门调整的 LLM 可以访问更广泛的环境,从而减少代码重复情况的出现。


eBay 认识到了简化内部知识访问的重要性,因此实现了内部 GPT 驱动的查询系统。借助检索增强生成(Retrieval Augmented Generation,RAG) 技术,该系统能够与现有的文档源无缝集成,使开发人员获得及时且相关性更强的见解。尽管在响应质量方面偶尔还会有小问题,但是通过从人类反馈中强化学习(Reinforcement Learning from Human Feedback,RLHF),随着时间的推移,eBay 能够使 GPT 驱动的查询变得更好。


在技术不断进步的动态环境中,eBay 的发展历程证明了 AI 集成的引入能够为开发人员和组织带来卓有成效的成果。


查看英文原文:

eBay’s Lessons Learned about Generative AI in Software Development Productivity (https://www.infoq.com/news/2024/03/ebay-generative-ai-development/)


声明:本文为 InfoQ 翻译,未经许可禁止转载。

2024-04-05 08:006879

评论

发布
暂无评论
发现更多内容

8款最佳实践,保护你的 IaC 安全!

SEAL安全

安全 IaC

6年技术迭代,阿里全球化出海&合规的挑战和探索

阿里技术

阿里巴巴 最佳实践 方法论 全球化

一文读懂TDengine的窗口查询功能

TDengine

tdengine 时序数据库

洞态在某互联⽹⾦融科技企业的最佳落地实践

火线安全

漏洞检测 IAST

Fiori 应用通过 Adaptation Project 的增强方式分享

汪子熙

前端开发 SAP Fiori SAP UI5 7月月更

进入前六!博云在中国云管理软件市场销量排行持续上升

BoCloud博云

云原生 cmp 云管理

当你真的学会DataBinding后,你会发现“这玩意真香”!

编程的平行世界

JetPack andiod

研发效能度量框架解读

思码逸研发效能

研发效能 效能度量

孔松(信通院)-数字化时代云安全能力建设及趋势

火线安全

云安全 云安全技术 云安全研究

SpringBoot工程创建Swagger文档并自动生成调用代码

百家饭隐私计算平台创业者

JavaScript Spring Boot swagger

焱融看 | 混合云时代下,如何制定多云策略

焱融科技

存储 文件存储 混合云 多云

60 个前端 Web 开发流行语你都知道哪些?

海拥(haiyong.site)

前端 Web 7月月更

2022 · 让我带你Jetpack架构组件从入门到精通 — Lifecycle

编程的平行世界

an'droid android jetpack

JVM有哪些类加载机制?

源字节1号

软件开发

SpringSecurity的初始化流程

急需上岸的小谢

7月月更

陈宇(Aqua)-安全->云安全->多云安全

火线安全

云安全 云安全技术 云安全研究

刘对(火线安全)-多云环境的风险发现

火线安全

云安全 云安全技术 云安全研究

学会使用LiveData和ViewModel,我相信会让你在写业务时变得轻松🌞

编程的平行世界

JetPack Andriod

Java培训 | 详解 Linux 中的权限,这一篇就够了

@零度

Linux JAVA开发

开源者的自我修养|为 ShardingSphere 贡献了千万行代码的程序员,后来当了 CEO

SphereEx

开源 代码 ShardingSphere

leetcode 322. Coin Change 零钱兑换(中等)

okokabcd

LeetCode 动态规划 算法与数据结构

2022上半年英特尔有哪些“硬核创新”?看这张图就知道了!

科技之家

使用强大的DBPack处理分布式事务(PHP使用教程)

峨嵋闲散人

分布式事务 分库分表 读写分离 seata dbmesh

Linux设备驱动1:硬件基础

贾献华

7月月更

web前端培训Docker入门指南

@零度

Docker 前端开发

龙蜥社区开源 coolbpf,BPF 程序开发效率提升百倍

OpenAnolis小助手

Linux 开源 内核 龙蜥技术 BPF

大数据培训 | Scala语言知识分享,直击面试

@零度

scala 大数据开发

从MLPerf谈起:如何引领AI加速器的下一波浪潮

OneFlow

人工智能 深度学习 加速器

介绍一种对 SAP GUI 里的收藏夹事务码管理工具增强的实现方案

汪子熙

SAP abap SAPGUI 企业管理软件 7月月更

SAP 智能机器人流程自动化(iRPA)解决方案分享

汪子熙

SAP 业务流程自动化 7月月更 企业自动化 iRPA

向Spring框架学习设计模式

慕枫技术笔记

设计模式 spring框架 7月月更

eBay 在软件开发生产率方面使用生成式AI的经验_AI&大模型_InfoQ精选文章