LLM 赋能的研发效能:如何探索软件开发新工序?

上周末,我们(我和我的同事谢保龙)在 QCon 广州 2023 上分享了一个 AI 结合研发效能的话题:《探索软件开发新工序:LLM 赋能研发效能提升》 。我们分享了:Thoughtworks 在过去的两个月里对于 LLM (大语言模型)结合软件开发的一些探索。

在这篇文章里,我们将总结一些关键的要素,方便于大家理解。后续,等后续的录屏版本出来后,也可以再回顾一下。值得注意的是,当前我们处于探索 + 尝试落地的阶段,更多的是围绕于我们的过程和如何构建。总体思路如下:

9413a824dce9832e4817adff561ea059.png

Slides 和相关问题可以在这里一起讨论:https://github.com/unit-mesh/conf

企业适合何种 AIGC 投资策略?

在过去的几个月里,有大量的 KOL 都在说:所有的应用都可以用 AI 重写一遍。而落地到现有的 DevOps 工具里,假设都需要重写,那么未来的架构可能是怎样的?

df158073a40339f50702c00952baa16c.png

于是,我们根据我们的理解将应用分成了四种类型:

  1. AI 端到端应用。即直接面向最终用户的应用(含专有模型),诸如 ChatGPT、Midjourney

  2. 应用 + 闭源基础模型。如基于 OpenAI、文心一言(他们提供了吗,我没收到)等 API 来构建应用。

  3. 应用 + 专有模型。即基于开源基础模型,或者自有的模型,来构建端到端应用。

  4. 应用 + 微调模型。基于开源模型 + 面向自己研发场景下来微调,以构建领域特定的应用。

不同的企业,应该根据自身的情况(安全、隐私等等),来调整自己的投资策略。

0e614a6cfd3407c3251bbdb7cb4565c7.png

而随着时间的演讲,也会出现越来越多的新场景,带来不同的变化。

AI 研发效能:最好的大语言模型带来什么?

今天(2022.05.29),市面上已经有一系列结合 LLM 的研发效能工具,从产品设计、架构设计等,直到运维运营等等。基于人工智能的工具与基础大语言模型可以增强软件开发在设计、需求、测试、发布和运维等各个环节中的能力,提高质量和效率。

但是,这些工具往往是破碎、割裂的,还可能并不适合我们现有的研发流程。所以,从我们的经验出发,需要从研发流程出发,将每个工序拆到足够的小,才能构建出明显的效果。

e7f1cfe6272ea1989de28ebdcce63a4c.png

随后,基于我们选择的工具来进行评估,如我们示例中基于的是 ChatGPT、GitHub Copilot 来做评估,随后记录对应的提升效果,以及局限性等等:

2bc91452d6c3c5bbcb3beca191a9b8a4.png

而对于那些可以公开的信息,不涉及企业内部的数据,则可以直接开发对应的工具。如我们同事开发的产品经理的 AI 辅助工具:

a43df36ccc156cc751534ee1619044ff.png

其基于 GPT 3.5 + LangChain + Thoughtworks 产品领域相关的知识库构建的。

而虽然生成式 AI 技术及工具已经在软件生命周期的各个环节中体现出了提效的可行性,但想要在大型科技组织中端到端落地、实现提效的突破,还面临很多挑战:

  1. 企业规模化软件过程提效的挑战

  • 信息安全和信创化的强制要求

  • 开源大模型表现偏弱、自己训练成本高

  • 难与企业内部工具进行结合

开发 AI 辅助研发提效的局限性

  • 基于 GPT 模型的工具不符合信息安全要求

  • 公开LLM 针对专业领域表现不佳,适用性差

  • LLM 工具碎片化

大部分企业尚在探索过程中,于是我们产生了两个假设:

  • 假设 1:每个大型企业都将有私有化的大语言模型

  • 假设 2:私有化的主流方式:开源 LLM + 微调

随后,我们继续探索基于开源 LLM、私有化场景下的新工序。

AI 研发效能:从问题出发摸索新工序

在探索时,作为工程专家而非大语言模型专家的我们,遇到一系列的挑战、需要解决各种各样的困惑。我们的探索过程分为了三个阶段,每个阶段都需要探索不同的问题:

  1. 阶段一:微调与研发过程如何结合?

  • 现有的开源模型能满足需求吗?

  • 合理的指令(输入和输出)应该是怎样的?

  • 微调的成本和工作量在哪?

阶段二:工具设计和整合?

  • 产品形态应该是怎样的?(聊天、交互式)

  • 与现有工具对比竞争力在哪?(端到端?)

  • 工具是否需要重写一遍?

分析成功 AI 产品

  1. 如何高效构建上下文?(2K)

  2. 如何提升速度?(缓存、减少请求)

  3. 如何提升准确率/接受率?

而如果要探索,那么我们还需要考虑的是:哪部分是最有价值的。比如说,从我的日常业务场景出发,架构设计是我们更高价值的场景:

3643d399e93bc565ee039dca3fff250b.png

而其中的一个环境就是 API 设计(RESTful API 设计)。

AI 研发效能:如何工程化落地?

于是呢,我们基于我们的 API 总结了一个基本的工序化构建方式,如下图所示:

7fa056a533b6252bed6d48aa71da8bc3.png

简单来说,就是三个阶段六个工程:

  • 软件开发过程资产化。需要注意的是:基于私有化 LLM 的新工序一部分取决于已有的软件过程资产,诸如架构模型、UML 等。

  • 资产的“语言建模”。探索适合于大语言模型的资产代码化形式。

  • MVP 与微调试验。对已有数据进行标准化,生成指令格式数据集(反复多次),并结合 LLM 需要设计 instruction。

  • 增量引导指标设计。诸如于 HumanEval 的手写高质量测试数据集,来作为分阶段的微调目标:如 5%,10% 等。

  • 上下文工程。如何在 Token 限制的场景下,提供尽可能丰富的上下文,如 GitHub Copilot 是 6 个人在半年内开发的,在本地计算 token 花费了大量的时间(详见:《上下文工程》 。因此,上下文的构建应该被当作是一个工程、策略,而不是一个简单的事情。

  • 持续反馈的平台工程。与已有工具集成,构建起自动调优闭环,持续收集数据和反馈。

更详细的示例,可以参考:《大语言模型友好的 API:借助集体智慧构建更好的软件架构》

未来展望:如何应对 LLM 带来的挑战?

从我们的角度来看,未来 LLM 将会被集成到 BizDevOps 的工具链中,以端到端的方式提升效能。

而对于组织来说,我们还需要考虑一个问题:

0ffbd7d10bf80e0a0756976a34508a6a.png

不同的方式,决定了我们如何使用 LLM。 随着大模型不断的发展,成熟度提升,我们多了一个超级队友。 当 Ta 掌握了所有的知识和技能,ta 可能就变成了一个上帝(当然,这不会是几年内能发生的事情)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/42362.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows 11“重大更新”:新版Bing添加至任务栏,iPhone也能在PC端接打电话了!

整理 | 郑丽媛 出品 | CSDN(ID:CSDNnews) 最近,技术圈大厂的动态几乎都在围绕 ChatGPT 展开,其中尤以微软为甚:2 月初官宣应用了 ChatGPT 的新版 Bing 和 Edge,上周将新 Bing 和 Edge 上线手机端…

检测手机号码是否注册imessage,imessages数据检测自动检测imessages过蓝

iMessage是苹果公司开发的一种即时通信服务,它允许苹果设备用户通过Wi-Fi或移动数据网络发送短信、多媒体消息、语音通话和视频通话。与传统的短信服务不同,iMessage利用互联网连接发送消息,可以免费发送文字、照片、视频和音频文件。 使用i…

短信验证码的发送、接收验证流程

1.短信发送 首先我们平时使用短信验证信息的时候一般都是这样的表单,首先需要我们用户输入手机号码,然后点击获取验证码按钮,这时候获取验证码的按钮需要请求我们的后端接口并携带用户的手机号给后端 2.后端接收到手机号并发送验证码 public…

为什么只能转发测试信息,无法转发短信?

在安装配置双卡助手后,查看运行日志(首页-功能面板-运行日志)会发现,只有点击模拟转发时候,才能在微信收到转发信息,正常的短信根本没反应。 出现以上问题,首先查看当前短信识别模式&#xff0c…

验证短信延迟?是哪里出现问题

时常看到有人在注册或者在需要输入验证码的时候会这样做,一手拿着手机,眼睛盯着电脑上获取验证码的那60秒在倒计时。然后在收到验证码的时候快速的把眼睛转向手机,然后快速的回到电脑输入验证码。 你是不是已经想象出了这样的画面&#xf…

移动MAS发送短信,接受状态和接受回复【HTTP】

移动MAS短信平台就是一个发送短信的平台,可以发送普通短信、模板短信、一对一,一对多等短信 下面主要是基于Java(HTTP方式)实现短信的下行(发送)上行(接受)和接受短信状态 接口全是…

杂学第一篇:applescript检测手机号码是否注册imessage,imessages数据检测,imessages过蓝检测

一、检测数据的两种方式: 1.人工筛选,将要验证的号码输出到文件中,以逗号分隔。再将文件中的号码粘贴到iMessage客户端的地址栏,iMessage客户端会自动逐个检验该号码是否为iMessage账号,检验速度视网速而定。红色表示不是iMessage…

验证码、通知短信API常见使用问题

如今短信应用于我们生活工作的方方面面,注册或者登录一个应用可以用短信验证码快速登录,支付可以使用短信验证码;商家搞促销活动可以发送通知短信给客户,会员到期了商家可以发送告警短信给会员用户…可见验证码短信API和通知短信A…

程序人生 | 与足球共舞的火柴人(致敬格拉利什,赋予足球更深的意义)

个人简介 👀个人主页: 前端杂货铺 🙋‍♂️学习方向: 主攻前端方向,也会涉及到服务端 📃个人状态: 在校大学生一枚,已拿多个前端 offer(秋招) 🚀未…

内测邀请:ChatGPT - PAM™ 工业界造车解决方案

作为 AI 界的「顶流」,生成式 AI 似乎正在变成无所不能的「创意机器」。它可以根据输入的信息,自动创造各种「新东西」,帮助人们在各个领域快速实现创作和开发。不仅仅是文字,设计、游戏、艺术作品…… 各种五花八门的需求&#x…

描述对未来计算机的畅想用英语作文,畅想未来人工智能的发展状况英语作文 关于畅想未来人工智能的发展状况的英语作文...

题目要求】H42答案圈 计算机科学的未来趋势是人工智能的一种,它是人类思维的研究和仿真,最终能够使人喜欢思考,为人类服务,帮助人们解决问题。随着科技越来越与人类生活相结合,随处可见的人工智能,让生活越…

小a的旅行计划

来源:牛客网 时间限制:C/C 1秒,其他语言2秒 空间限制:C/C 32768K,其他语言65536K 64bit IO Format: %lld文章目录 题目描述题解:代码: 题目描述 小a终于放假了,它想在假期中去一些地…

旅游计划

旅游n个城市,但并不是每一条路线花费都是一样的。想把所有的城市都旅游一遍,但是花费最小。 输入格式 第一行输入一个整数n,表示有n个城市 接下来有一个n*n的矩形,表示每两个城市之间的火车花费,每两个城市之间的花费不会超过100…

CHAP7:使用 R 编程进行数据分析

1.了解 R 的基础知识 R 是一种编程语言,可用于在数据分析过程的每个阶段执行任务。在这部分课程中,您将了解 R 和 RStudio,这是 R 的集成开发人员环境 (IDE)。您将探索使用 RStudio 与 R 一起工作的好处。RStudio 使您能够轻松利用 R 的特性…

记录常用的R语言的一些零碎知识(包括ggplot2作图)

平常使用R的时候,会遇到一些小问题,这时就会去上网查,但查到结果,如果不记录起来,常常会遇到相同的问题时再次查询,费时费力,因此决定记录下这些零碎的R语言知识(不定时更新&#xf…

R语言入门-数据分析实操(tyidyverse工作流+代码)

1. 数据分析的开端,Tidyverse? tidyverse 是一个清晰的 R 包集合,在数据操作、探索和可视化领域提供统一的数据科学解决方案,这些解决方案具有共同的设计理念。它是由 RStudio 背后的首席科学家 Hadley Wickham 创建的。 tidyver…

从零开发基于chatGPT的社区交友系统 (前后端分离)丨主页框架 03

03 主页框架 前言开工引用iconfont字体图标template代码style代码页面展示 路由局部跳转script代码 总结 前言 上一章我们实现了基础的主题切换功能,这一章我们开始搭建主页主要框架,并测试一下我们的切换主题功能。 开工 引用iconfont字体图标 这里…

制造焦虑的一边去! AI 不会让我们失业,还会带来大量新机遇!

点击上方“编程技术进阶”,加"星标" 重磅干货,第一时间送达 大家好,我是编哥。先送上涛哥用 AI 画的美女,目测这个是涛哥最近的梦中情人 声明:本文引用图片来自涛哥(公众号:涛哥聊Pyt…

AI崛起,我们应该保持自我意识!

目录 前言西部世界剧情?辅助还是威胁?如何自我保护?总结 前言 人工智能技术发展迅速,为我们的生活带来了很多便利。但就个人来说这些技术都是可控的,我并不怎么担心。直到ChatGPT的到来,把我惊呆了。一边感叹AI技术的…

GPT帮你写简历:求职日企篇

正文共 927 字,阅读大约需要 3 分钟 求职者必备技巧,您将在3分钟后获得以下超能力: 快速生成日文简历 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 | nanako 编辑者 | Linda 在应聘…