思码逸任晶磊:ChatGPT 时代的软件研发数据与效能提升

思码逸创始人 & CEO 任晶磊在 2023年3月4日于上海举办的 LeaTech 全球 CTO 领导力峰会上作为演讲嘉宾分享了主题为《ChatGPT 时代的软件研发数据与效能提升》的演讲。

💡文字为分享内容的提炼,您可以在文末获取演讲 PPT。

我在清华大学获得博士学位后,加入了微软亚洲研究院,从事软件系统程序分析的研究。同时一直在关注机器学习领域的发展。现在,ChatGPT 技术确实让几乎所有人都大为震撼。

接下来我们将进入这项技术的干货内容,今天的演讲分为四个部分。

  • ChatGPT 给软件工程带来什么?

  • 从研发数据角度看 ChatGPT

  • 如何打造高质量的研发数据基础?

  • ChatGPT 在实际研发效能数据上的表现如何?

ChatGPT 给软件工程带来什么?

第一部分,我们将概述 ChatGPT 对软件工程的影响,不会局限于程序员如何提高工作效率,更会探讨对软件工程整体的影响。

首先,第一个方面是让大家写代码变得更快、更容易了,我认为这个话题无需赘述,因为我相信在座的很多人都有体验。在 ChatGPT 出现之后,另外一个新产品也是值得关注的——代码搜索领域的头部公司 Sourcegraph 正在推出一款产品 Cody(尽管还没有公测),它在后 ChatGPT 时代提供了问答功能。Cody 会结合你的领域知识、基于现有代码给出回答。我认为这个产品是值得大家关注的。

Sourcegraph Cody 编程助手

但综合来看,我们现在能看到的落地能力还不能够做到生成复杂项目级别的代码,只能帮助你写一些微观的代码。至于生成工程性的代码,我们可能还需要等待一段时间,像在《流浪地球》中机器人能够为你重写整个操作系统。我认为这种幻想目前仍然只存在于小说中。至于这种能力何时能够实现,我无法预测,因为任何预测都有可能被打脸。不太悲观地讲,我们的饭碗应该还是能够再保持几年的。这是第一个维度的影响。

但 ChatGPT 对软件工程的影响,不仅是让个人写代码的速度变快这么简单。我们可以问一个问题:如果你的团队中每个人的速度都快了10倍,项目进度会变快10倍吗?在座的都是技术管理者,很明显这个答案是否定的。因为在从创建到最后交付的整个过程中,写代码的时间可能只占10%-20%,软件工程中还有许多复杂的组织和流程因素。

因此,我们还需要看看 ChatGPT 是否能够解决软件工程中的信息不对称问题。因为当人数增加时,信息不对称就会存在,流程摩擦也会增加。想想我们每天要开多少会议,花费了百分之多少的时间。AI 能否在这方面发挥价值呢?这是和前面同样重要的维度。

如果在你的组织中有一个 ChatGPT 研发效能顾问,能够回答你有关项目和公司中各种问题,它就能够帮助我们减少信息不对称,并消除组织中流程摩擦。当然,有些会议需要与真人交流,但如果有些问题可以由 ChatGPT 直接解答,可能能减少20%的会议时间,这也是一种效率。因此,这个价值也是一个非常重要的维度。我们的许多客户都非常期待这样的能力。

从研发数据角度看 ChatGPT

第二部分,我们将从研发数据的角度探讨 ChatGPT,因为任何人工智能技术的训练和使用都需要数据作为原材料。因此,我们必须从数据的角度去思考这个问题。

ChatGPT 的基石大型模型,是基于公共数据中巨大的参数训练而成的,规模达到了千亿级别。但是,它并不了解私域信息、组织、团队和其他相关知识。那么,如何将这些知识传递给它,是我们当前所面临的最大瓶颈。

数据基本上可以分为两类:一类是你的代码,代码中保存了你的大部分软件知识;另一类是你的软件工具和开发行为的所有数据,比如你的工具中所有的交流互动流程数据,这部分数据是代码之外的。

具体来说,我们有三种途径:最右边是采用大模型的最典型方法,即提供提示(prompt)。与大模型交流时,你不仅仅需要问一个问题,还需要给它提供一些上下文和少量的样本,以解释你想要干什么以及你的情况。这里最大的挑战是你只能给出非常有限的信息,例如4K或8K。如果信息量太少,那么大模型无法回答你关于服务和知识方面的问题。这个带宽是非常小的。

最左边的方法是使用你自己的数据去训练大模型,你需要修改更新它的参数。然而,这种方法需要大量的时间和资源。中间的方式是自己训练一个小的模型去学习大模型,然后进行微调,以使其更适合你的特定任务。

在实际应用中,选择哪种方法取决于你的具体情况和需求。无论选择哪种方法,我们都需要理解大型模型的优势和局限性,并在实践中发掘其潜力。

总体来说,我们目前探索的方向是最右边的第三种路径。选择这个路径背后的逻辑是 ChatGPT 的核心思想,这种思路的成功在于使用全球公开的信息和1000亿参数来训练一个通用的模型,而不是针对特定领域去收集数据和优化模型。当需要解决具体问题时,只需提供一个小样本,模型就能够学习并回答问题。因此,我们仍然希望沿着这条路线前进。

如何打造高质量的研发数据基础?

第三部分,我们将介绍构建高质量研发数据基础的五个步骤。只有保证数据基础的高质量,ChatGPT 才能可靠地解决具体领域的问题。

第一步,需要完成原始数据的积累。我们意识到在研发中,这些数据本身就是重要的资产和信息源。我们建议使用像 Apache DevLake 这样的开源工具,快速跨过这个初始阶段。

第二步,在获取数据后,我们会面临数据质量问题。数据的健康度很重要,因为如果向算法提供60分的数据,是不可能获得90分的结果的。因此,我们建议使用代码分析技术来校准数据,夯实数据,以确保数据的质量。

第三步,需要进行自主分析,利用 BI 或可视化工具,从数据中解读信息,下探洞察原因推动度量-分析-回顾-改进)循环。

第四步,以目标为导向,采用 GQM (目标-问题-指标)方法,基于健康的数据进行系统洞察,可以参考文章《GQM 概述:构建研发效能度量体系的根本方法》进一步复用和丰富模板,沉淀知识。

第五步,基于ChatGPT 实现智能交互,满足灵活多样的信息需要。在 ChatGPT 之前,自然语言转 SQL 这一研究领域早已存在,而以 ChatGPT 为代表的新一代自然语言处理工具,将会给这个领域带来新的活力。

ChatGPT 在实际研发效能数据上的表现如何?

第四部分,我们深入上述的第五个步骤——智能交互,去探索 ChatGPT 在可靠的研发数据基础上,能够实现什么样的功能。

我们基于 Apache DevLake 的真实数据表,测试了 ChatGPT 理解人类常识、找到正确的表、处理复杂抽象问题等方面的能力。

第一个测试显示,ChatGPT 具备比较全面的人类常识,能够直接找到“打开 issue”、“issue 合作”等表述对应的数据,这意味着我们不需要提供额外的数据字典,来辅助它理解某个细分领域。 

第二个测试显示,ChatGPT 具备处理复杂数据表的能力。我们提供了互相关联的 9 张表,其中有许多重复数据字段,而 ChatGPT 成功找到了正确的表,输出了正确的 SQL 查询。

第三个测试显示,当提出的问题比较模糊的时候,ChatGPT 尝试理解的方向也是合理的。我们的问题中包括了“近期”“PR 评审难度高”这样并不确切的表述,而 ChatGPT 在 SQL 查询中使用了“最近一周”、“PR 评论长度 > 500”“PR 评论数量 > 5”这些具体且合理的推测。

第四个测试不是基于研发数据做的,但也很有意思,所以和大家分享一下。我们用了自然语言处理数据集 Spider 里的一个超难问题来考验 ChatGPT。它给出的第一个 SQL 查询是错误的,接下来我们不给出任何提示或反馈,只是反复提问。在后几次尝试中,ChatGPT 成功给出了多种正确解法。

这说明 ChatGPT 可以通过多次尝试来自验证,提高数据解读的准确性。

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

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

相关文章

AI免费写代码chatGPT软件Build Software. Fast

AI免费写代码chatGPT软件Build Software. Fast 新版要注册登录(有汉化教程) 文章目录 AI免费写代码chatGPT软件Build Software. Fast1.软件简介2.软件安装3.使用教程1. CTRLK (生成代码)效果2. CTRLL(对话功能) 4. 汉化教程(自带的插件功能&…

开发者福利chatGPT软件Build Software. Fast.

目录 1、软件简介 2、安装教程 3、使用教程 (1)CTRLK(生成代码) (2)CTRLL(对话功能) 1、软件简介 Build Software. Fast.是一款可以在编辑器中使用 openAI GPT-4 模型编写的软件 官网地址:https://www.cursor.so…

chatGPT软件智能开发系统

ChatGPT是由OpenAI开发的人工智能语言模型,可以实现自然语言处理、对话生成等功能。要开发一个类似ChatGPT的软件智能开发系统,可以遵循以下步骤: 确定应用场景:确定软件智能开发系统要解决的问题和应用场景,例如智…

【推荐两款款最近比较火的chatgpt聊天机器人】

推荐两款款最近比较火的chatgpt聊天机器人 智来星球他可以在工作生活方面给你提供相关的帮助微信扫码就可以获取相关的链接 ChatBot聊天机器人这款聊天工具的细分比较多扫码可以查看相关的情况 智来星球 本质是Chatbot GPT-3,也就是比较火的chatgpt 他可以在工作…

保姆级讲解,让ChatGPT成为机器人的智慧大脑

文 / 高扬(微信公众号:量子论) ChatGPT是生成式人工智能,如果能接入机器人,可以让机器人更加智能。 我手上没有硬件,但我们可以模拟尝试机器人的制作逻辑,这个设计分成两部分:硬件、…

部署一个基于ChatGPT的微信聊天机器人以及产生的思考

文章目录 前言功能反响思考 这篇文章主要展示了基于ChatGPT的微信聊天机器人的效果,以及在部署过程中我产生的一些思考。部署一个这样的机器人的具体方法我过两天会单独写一篇文章。 前言 最近几个月以来,ChatGPT这个词语已经像病毒一样在互联网上席卷开…

把盏言欢,款款而谈,当WorkPlus接入了ChatGPT机器人

ChatGPT到底有多火? “谷歌AI聊天机器人出错,市值一夜蒸发7172亿”;“百度类ChatGPT项目‘文心一言’或将直接接入百度搜索”;“阿里确认正研发类ChatGPT产品,目前处于内测阶段”;“网易有道将推出教育场景…

聊天机器人ChatGPT横空出世,今天来看看ChatGPT是如何回答面试官的问题的?

目录 什么是ChatGPTChatGPT回答面试题 在CSDN中向 ChatGPT 提问使用 大家好,我是小冷 ChatGPT热度不断,百度的股票涨了百分数三十多,微软也给对openAI投资了百亿美元。 什么是ChatGPT ChatGPT,是美国“开放人工智能研究中心”研发…

【ChatGPT调教】ChatGPT最强指令、让机器人为你生成机器人!

最近我偶然发现了一条超级牛的ChatGPT指令,可以说是我迄今为止见过的最具商业价值的指令! 这个指令可以让你享受私人定制的服务,也就是利用ChatGPT引导你定制化创建一个专属于你的「智能机器人」,使它能够更好地适应你的业务需求…

王炸!10分钟把ChatGPT部署成24小时微信机器人!

ChatGPT最近大家都是玩的风生水起,不亦乐乎!各种应用层出不穷,其中最接地气,也是最受小白欢迎的就是wx机器人,因为它能跟微信深入融合( 详细看文末专栏 用PythonChatGPT打造超强的微信机器人!),…

零代码基础,一分钟教你快速搭建微信ChatGPT机器人!

微信ChatGPT机器人 1.注册Railway账号:2.部署3. 配置1)点击Configure2)选择仓库地址3)点击安装4)配置信息如下图:5)部署:deploy6) 部署完成:7)微信扫码登录8)…

2023 博客资源网站插入添加chatgpt机器人html源码

最近ChatGPT 实在是太火啦,但是由于是国外网站,门槛有点高,导致很多小白不知道怎么使用。 今天带来一个html版的 它可以插入您的如何博客网站,资源网,属于网站都可以插入,只要是可以插入html代码的&#x…

如何使用自定义知识库构建自定义ChatGPT机器人

目录 隐藏 使用自定义数据源为您的 ChatGPT 机器人提供数据 1. 通过Prompt提示工程提供数据 2. 使用 LlamaIndex(GPT 索引)扩展 ChatGPT 如何添加自定义数据源 先决条件 怎么运行的 最后的总结 使用自定义数据源为您的 ChatGPT 机器人提供数据…

飞书ChatGPT机器人 – 打造智能问答助手实现无障碍交流

文章目录 前言环境列表1.飞书设置2.克隆feishu-chatgpt项目3.配置config.yaml文件4.运行feishu-chatgpt项目5.安装cpolar内网穿透6.固定公网地址7.机器人权限配置8.创建版本9.创建测试企业10. 机器人测试 前言 在飞书中创建chatGPT机器人并且对话,在下面操作步骤中…

Ora提示词版ChatGPT机器人

Ora可以自己创建一个ChatGPT机器人,可以设置自己的提示词例如我创建的AI佛祖https://ora.ai/aesthetic-red-nfa4/ai%E4%BD%9B%E7%A5%96 提示词 创建机器人的时候,需要设定自己的提示词,例如: 假设你是佛祖,名字叫做释迦…

5 分钟用 JavaScript 开发 Slack ChatGPT 机器人(含全部源码,免费托管,手把手教程)

本文帮助你快速实现一个 Slack 对话机器人,并在其中接入 ChatGPT 的能力。可以直接问它问题,也可以在群聊天中 at 它,返回 ChatGPT 的回答。(以下为效果截图) 通过本文你将学会 创建 Slack 机器人,并配置机…

Docker部署飞书chatGPT机器人总结

1.项目配置 打开终端,依次输入如下命令 git clone https://github.com/Leizhenpeng/feishu-chatGpt.git cd feishu-chatGpt/code mv config.example.yaml config.yaml 然后打开config.yaml文件输入配置信息 说明: 前面几项配置需去飞书开放平台获取&…

java开发的chatGPT机器人系统

ChatGPT机器人发展趋势: 更加个性化:随着数据和技术的不断进步,ChatGPT机器人将能够更加准确地理解用户的需求和偏好,并提供更加个性化的回复和服务。 多语言支持:随着ChatGPT在各个国家和地区的普及&#xff…

五分钟开发一个钉钉 ChatGPT 机器人

基于AirCode、ChatGPT-3.5、Node.js、钉钉微服务机器人搭建。 本文帮助你快速实现一个钉钉对话机器人,并在其中接入 ChatGPT 的能力,可以直接问它问题,也可以在群聊天中 at 它,返回 ChatGPT 的回答。(以下为效果截图&…

新技术前沿-2023-ChatGPT基于人工智能技术的聊天机器人

chatgpt镜像网站 一文带你了解爆火的Chat GPT ChatGPT系列文章 为什么ChatGPT这么强?—— 一文读懂ChatGPT原理! 1 简介 1.1 ChatGPT是什么 ChatGPT是一种基于人工智能技术的聊天机器人,它可以模拟人类对话,回答用户的问题和提…