腾讯健康:我们有 40% 的代码是 AI 写的
文章摘要
本文分享腾讯医疗健康团队如何利用 AI 代码助手提升研发效率的案例,包括推广策略、面临挑战与应对措施,以及数据分析和结对编程技巧。
全文阅读约 5-10 分钟。
引言
腾讯健康依托云计算、人工智能和大数据技术等技术,加速健康行业的数字化转型升级,提供包括医保电子凭证、电子健康卡、腾讯医典、觅影和 AI 辅诊等在内的全方位服务,致力于提升医疗服务效率与质量。
腾讯健康官网链接 https://healthcare.tencent.com
背景
在腾讯健康行业数字化转型过程中,面对项目规模扩大带来的代码量激增和维护成本上升问题,腾讯健康积极采用 AI 技术提升研发效率。腾讯云 AI 代码助手以其智能编程能力、高效的代码审查与优化功能,帮助团队解决重复编码、快速定位问题及代码安全等问题。腾讯健康团队与腾讯云 AI 代码助手团队合作,打磨共创。医疗健康团队累计收集超 600 个 Badcase,并与 AI 代码助手通过定期周会机制跟进问题的解决,AI 代码助手团队通过过硬的技术能力和快速的服务响应持续提升产品体验,形成了平台与业务双受益的局面,实现了团队内部落地,并取得显著收益,并入选腾讯公司研效委员会标杆案例。
腾讯云 AI 代码助手官网 https://copilot.tencent.com
经过近一年的 AI 代码助手应用,腾讯医疗健康团队实现了 100% 覆盖率且保持活跃使用。目前,代码补全周生成率达 39.81%,周采纳率 31.63%,周活跃率 96.82%,团队近四成代码由腾讯云 AI 代码助手编写的。此外,医疗健康团队用户满意度极高,达 4.8 分(满分 5 分) 。与去年同期对比,团队人均交付需求个数提升了 18.18%,人均编码行数提升了 41.34%,人均缺缺陷数均降低 31.50%。
落地挑战
腾讯医疗健康团队取得这些结果并不容易,在初期应用中遇到了一些挑战,除了被动等待腾讯云 AI 代码助手的引擎优化,腾讯医疗健康团队也站在业务的视角积极尝试更加有效推进与磨合的举措以最大程度促进效率提升。
挑战一:AI 代码助手能力准备度影响了推广进度
推广前期,由于 AI 代码助手前期补全语言和框架支持并未全部开放,如不支持特定语言(例如 Swift、Rust )语言及框架(如腾讯 TDesign、tRPC)等,团队期望生成满足业务编码场景的代码;此外也缺乏 Vim/Neovim、Harmony DevEco Studio、微信开发者工具 IDE 的支持,这影响了产品的普及速度,对推广产生极大阻力。
应对措施:积极与 AI 代码助手团队协同 , 促进引擎能力完善
真的热爱让我们能够直面困难并克服困难!腾讯健康研发团队既把自己当用户,也把自己当 Owner。
面对 AI 代码助手在补全语言和 IDE 不足的问题,在推进落地的过程中,双方通过周会进行针对性地讨论,既不回避问题,也不抱怨问题,而是互相碰撞、互相启发、交流经验和心得,积极寻找解决问题与提升体验的方法,得益于 AI 代码助手团队超高的响应与迭代速度,不到 1 周的时间开放了所有语言支持,1 个月内支持了 Vim/Neovim、Harmony DevEco Studio IDE,以及最近上线了企业 RAG 知识库,可通过内置企业知识库和自定义知识库,增强推荐效果,过程中的快速改进赢得了团队的认可,也增强了大家的信心。
内置企业知识库
挑战二: 面对 BUG , 如何一起 Debug
任何产品在初期,都难免会有 BUG,腾讯云 AI 代码助手也不能免俗,比如:存在多补/少补括号、推荐重复及无意义代码等问题,这在一定程度上影响了开发体验,如果自上而下的硬推,可能会适得其反,在这种情况下,腾讯健康开发团队是如何有序推进腾讯云 AI 代码助手落地的?
补全生成无意义重复代码
应对措施:分阶段推广,先局部推广,建立反馈通路,再全面推广
考虑到系统准备度与团队耐受度两方面的原因,在推广初期,腾讯医疗健康开发团队采取了分阶段推广的策略,先局部试用,再全面推广。首先组建了内部先锋小组,组员来自不同的业务与岗位,包括前端、后台和算法。小组成员一边使用,一边记录各自使用中遇到的 Goodcase 和 Badcase,涵盖代码补全推荐、单测生成、内联对话,代码注释生成等编程场景,然后建立与 AI 代码助手团队的反馈通路,通过双周会的形式进行交流和反馈,持续跟进 Case 的分析与总结,输出最佳实践分享并在内部进行宣传。
通过这种分阶段、多步骤的推广策略,更得益于 AI 代码助手团队的快速迭代,团队的使用效果得到持续提升,中心的代码补全生成率、采纳率等各项指标在稳步上涨,如图所示,大家的接受意愿也在逐步提升,团队与腾讯云 AI 代码助手的默契程度也不断提升。
医疗健康团队 AI 代码助手周活跃率趋势图
挑战三:如何持续跟进与团队的使用效果
在团队全面普及 AI 代码助手后,我们的工作还未结束。为了确保各业务团队能持续高效地使用 AI 代码助手,我们还需要持续深入了解并及时发现和解决团队的使用过程中遇到的各种问题。这需要我们建立一套多维度的数据度量指标,并根据不同业务的特点进行精细化分析。如何建立多维度的数据度量指标,并持续有效地跟进各团队的使用情况,以确保每位团队成员都能最大限度地发挥 AI 代码助手的潜力,也是我们面临一个重要挑战。
应对措施:建立多维度数据度量指标进行差异化分析,及时跟进问题的解决情况
借助 AI 代码助手提供的各项统计数据指标,如代码补全生成率,代码补全采纳率,补全次数,活跃情况等指标进行观察和分析。通过持续关注这些指标的短期波动和长期趋势,我们及时发现并解决了团队在使用过程中遇到的一些问题,比如低版本 IDE 登录超时、更换设备后忘记安装插件,个人使用习惯问题导致采纳率低,补全推荐触发策略调整导致生成率下降等。
以上图为 Demo 示例
注:代码补全生成率和代码补全采纳率在一定程度上能反映 AI 代码助手推荐补全的效果,例如生成率为 40% ,则可以理解为 AI 生成代码占比 40% ;补全次数、活跃用户数在一定程度上能反映大家使用 AI 代码助手的接受情况、活跃程度及使用深度。
通过建立多维度数据度量指标,精细化数据运营分析,发现团队使用量存在波动,深度分析导致数据波动的原因,然后及时有效地跟进问题的解决,在过程中持续保障 AI 代码助手在各团队中的使用热度与满意度。
团队通过对 AI 代码助手的使用数据统计分析后发现,代码补全采纳率与使用的熟练度呈正相关,使用愈发熟练,更易于找到适合自己的方式去使用 AI 代码助手,从而最大化提升自己的编码效率。
面对通过收集各个业务一线同学的最佳实践,我们总结了一些致使 AI 代码助手低效的做法和助力 AI 代码助手推广提效的共性做法或技巧:
导致 AI 代码助手低效的常见做法:
• 函数、变量命名不规范
• 代码缺少注释,注释不清晰
• 代码实现逻辑复杂
• 复制大块重复代码
助力 AI 代码助手提效的常用技巧:
• 函数、变量命名符合良好实践
• 注释先行,清晰的注释有利于 AI 理解上下文,提升推荐效果
• 复杂的任务拆解成简单的小任务
• 使用斜杠命令如 /explain、/fix、@workspace 等内置指令提升回答效果
案例 1: 通过示例引导 AI 代码助手增强对代码结构的理解
案例 2: 使用前缀保持命名定义一致性,和规范命名,绑定属性
结语
1. 先锋队策略:在推广过程中,为了保障效果,提升体验,可以以申报的方式组建有激情、愿意 Debug 的先锋队,优先小范围内试用,记录使用情况并建立反馈机制,后逐步扩大推广范围。这有助于发现问题并及时优化,逐步提升团队的接受意愿。
2.多维度数据度量指标:建立一套多维度数据度量指标,包括覆盖率、活跃率、代码补全生成率、代码补全采纳率等,以便根据不同业务特点进行深入分析。通过定期统计、观察和分析这些指标,深入地了解各业务的使用情况,及时发现并解决团队在使用中遇到的问题,从而确保每位团队成员都能最大限度地发挥 AI 代码助手的潜力。
3. 激励机制与经验分享:为了鼓励团队成员积极使用 AI 代码助手,设置激励机制,并评选优秀使用者并组织分享活动。这种做法不仅有助于提升团队的使用意愿,还能帮助成员们互相学习、借鉴,从而更好地发挥 AI 代码助手的潜力。
4. 未来展望:通过 AI 代码助手深度应用,结合业务实际问题打磨效果,沉淀优秀案例,比如后台代码重构,前端框架升级等;以及寻求 API 开发和插件市场等生态开放,供业务调用,未来将持续探索 AI 代码助手更多的落地场景
致谢
过去一年,腾讯医疗健康团队坚定不移地拥抱 AI 代码助手的能力并取得研发效率、代码质量显著提升,AI 代码助手团队非常感谢腾讯医疗健康团队的各位领导和研发同事的大力支持。
未来我们携手共进以腾讯云 AI 代码助手这一强大科技引擎,持续迭代产品能力,提升用户体验,持续助力业务团队真正实现用科技更好造福每个人。
评论