当前位置:首页 > 报告详情

4-李明宇-GPT赋能软件研发:能力、局限与落地实践.pdf

上传人: 2*** 编号:151995 2024-01-05 21页 4.22MB

1、GPT赋能软件研发:能力、局限与落地实践李明宇中科院计算所高级工程师,20年编程老师傅目录CONTENTS软件研发过程与大语言模型01 代码生成与实践案例02 代码审查与实践案例03 数据结构化与质量提升04 软件研发过程与大语言模型各种场合常见演示例子:1.个人主页,特点:html+css+少量js=语法错误不妨碍结果展现,通过率高,好上手2.解算法题,特点:经典题为主,看起来惊艳,但不排除“背答案”3.俄罗斯方块、贪吃蛇 ,特点:同上实际生产中表现如何?两类观点:vs软件研发过程与大语言模型不仅仅是生成业务代码:需求分析、代码生成、自动化测试、代码审查、线上运维调试 不仅仅提高效率,同时要

2、提高质量不仅仅是chat,还有API调用:curl https:/ Content-Type:application/json-H Authorization:Bearer$OPENAI_API_KEY-d model:gpt-3.5-turbo,messages:role:system,content:Test,role:user,content:,temperature:1,max_tokens:256,top_p:1,frequency_penalty:0,presence_penalty:0代码生成与实践案例真实案例:GPT-4 辅助实现生产级完整模块代码https:/ 代码生成与实践

3、案例测试代码生成,主要是单元测试代码:代码生成 GPT“编程”8条军规1.bug难以避免,Chat,结对编程,反馈修改,而不是单向生成,多次结果比较2.起点也不一定是从一个自然语言需求出发,也可以是给他一段代码参考并且简单描述需要做的事情,或者从伪代码转成可以运行的代码(典型任务:重构)3.让GPT来写单元测试!4.由于GPT的原理,沟通时间长了,它会“忘记”完整的上下文,需要不时帮他回顾5.目前即便是GPT-4尚缺少面向对象和架构能力,但是在人类的提示下,它可以帮忙完成类的封装等架构改进,实现具体代码6.Shell、SQL.go、rust.新的或者小众框架预期不能太高7.必须由人 Revie

4、w GPT写的代码,拒绝“看不懂”的代码进入系统8.保持一定的人工手写代码比例代码审查与实践案例 代码段审查 合并请求审查GPT 比较偏向于发现代码段的质量问题典型例子:1.字符串 or 枚举2.if 嵌套太深的问题,或者不会被执行的分支 3.敏感信息泄露4.变量命名规范5.审核工作量降低 70+%局部问题导致的代码质量问题减少 40+%核心程序员代码贡献量提高一倍以上Pull Request Review 案例https:/ 在src/provider/gpt_provider.ts文件中,API_KEY是硬编码的字符串。建议使用环境变量或配置文件来安全地存储API密钥。https:/ “为

5、“等待Minikube”步骤添加超时,以防Minikube启动失败时工作流无限期地运行”Pull Request Review 案例https:/ 作者:李明宇 微信:microwisemessages=role:system,content:As an AI assistant with programming expertise,you are a meticulous code reviewer.,role:user,content:fReview the following pull request:nchanges_strnnThe+means the line is added,a

6、nd the-means the line is removed.Please provide a review result for the PR.nnEnsure that the output follows the template:nn*Changes*nn*Suggestions*nn*Conclusion*nn*Action*nn*Other*nn项目代码评审案例https:/ 作者:李明宇 微信:microwise项目代码评审案例https:/ 作者:李明宇 微信:microwise数据结构化与质量提升PDFJPGPNGOCRLLMData StructureJSONJSONJ

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要探讨了GPT模型在软件研发中的应用,包括代码生成、代码审查和数据结构化等方面。作者指出,GPT模型能够提高软件开发效率,但同时也存在一些局限性。在实际应用中,GPT模型能够辅助实现生产级完整模块代码,并降低代码审查的工作量。此外,作者还提到了GPT模型在生成业务代码以外的其他应用,如自动化测试、线上运维调试等。然而,GPT模型在面向对象和架构设计方面仍存在一定的局限,需要人类的指导和协助。作者强调,尽管GPT模型能够提高软件开发的效率和质量,但仍然需要保持一定的人工手写代码比例,并对GPT生成的代码进行人工审查和 Review。
"GPT如何助力软件研发?" "GPT在代码审查中的实际表现如何?" "如何利用GPT提升数据结构化和质量?"
客服
商务合作
小程序
服务号
折叠