【2023年公司智能工具降本增效分享总结】「智能工具的力量」总结分享我司通过AI提升软件开发效率与质量调研报告,问题踩坑之路

本文主要是介绍【2023年公司智能工具降本增效分享总结】「智能工具的力量」总结分享我司通过AI提升软件开发效率与质量调研报告,问题踩坑之路,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

调研背景

人工智能(AI)已经成为当今科技发展的主要驱动力之一,AI在多个领域取得了显著的成果,包括软件开发。AI技术的应用可以帮助开发者提高代码质量、减少错误、优化资源和时间管理,从而提高软件开发效率。

调研目的

本次调研报告主要是探讨如何利用人工智能技术提升软件开发效率,以及介绍一些现有的实践案例,通过了解这些技术,开发人员可以更好地应对项目挑战,提高生产力和质量。

  1. 工作效率提升
  2. 业务流程优化
  3. 竞争力增强

调研方向,关注以下几个方面

利用人工智能技术提升软件开发效率,通过利用代码自动生成与优化、智能代码审查、自动化测试和持续集成与持续部署等技术,可以显著提高开发效率和质量,减少错误和资源浪费。
在这里插入图片描述

方向1:代码生成与优化(提升研发效率+ 节约时间)

面向于:Java、NLP、FS以及前端开发技术团队

代码自动生成是一种利用机器学习技术生成程序代码的方法,它可以大大减少开发时间和错误。现有的一些工具,如TensorFlow、Keras和PyTorch等,可以帮助开发者自动生成高质量的模型代码。此外,还可以利用AI技术对代码进行优化,如去除冗余代码、自动调整参数等。

方向2:代码隐患审查Review(提升研发质量 +节约时间)

面向于:Java、NLP、FS以及前端开发技术团队

代码审查是基于机器学习的代码审查方法,它能够检测代码中的错误、警告和风格问题,并给出相应的建议。与传统的代码审查方法相比,智能代码审查可以提高审查效率和质量,同时可以减少人为错误和疏漏。

方向3:协助自动化测试(提升研发质量 + 时间)未来可以考虑使用

面向于:测试团队

自动化测试是利用AI技术自动执行测试用例的方法,它可以大大提高测试效率和准确性。现有的自动化测试工具,如Selenium、Appium等,可以帮助开发者自动执行测试用例并检测缺陷。

方向4:持续集成与持续部署(节约部署成本 + 时间)未来可以考虑使用

面向于:运维团队

持续集成与持续部署是一种通过自动化流程来加速软件发布周期的方法。CI/CD流程可以利用AI技术来自动化构建、测试、部署等环节,从而提高软件发布速度和质量。

AI工具选项

人工智能(AI)在软件开发领域的应用越来越广泛。人们不断寻找能够提高软件研发效率和质量的工具。例如,成熟的AI智能工具Github Copilot、Tabnine以及CodeGeek等就是出色的典型例子。本篇报告将探讨这些工具的优点、缺点,以及他们如何帮助我们提高软件开发效率。
在这里插入图片描述

此外国外的Kite、Codota、微软IntelliCode,国内的阿里云Cosy、AIXcoder等程序员比较常用的智能编码辅助工具,但是综合考虑选在了比较成熟且使用体验度好(耗时长度)的几种,因此暂时只选择了以上几种

调研结果

各个开发团队可以按照自己团队成员的使用工具,进行灵活切换分配即可,当然可以进行对应的几个AI工具同时使用进行对比和分析。

以下工具,已经基本涵盖了Java、NLP、FS以及前端开发技术团队的所有开发IDE集成开发工具。
在这里插入图片描述

调研后推荐工具

  • JetBrains IDE (IntelliJ、PyCharm、WebStorm、GoLand、PhpStorm、CLion、Android Studio 等 —— 推荐可以使用:Codeium(免费软件)、Github Copilot(收费软件)、Bito(个人版免费)、CodeGeek(免费)

  • VSCodevisualstudio —— 推荐可以使用:Codeium(免费软件)、Github Copilot(收费软件)、Bito(个人版免费)

开展推进

在这里插入图片描述

  1. 团队Leader应依据本文档,在多种AI工具中做出最适合本团队的选择。
  2. 结合该调研文档,学习和理解如何运用A工具,并理清其使用规则和规范,以便于编写清晰且实用的使用规范文档。
  3. 组织并实施基于AI工具的培训活动,以充实团队成员的应用能力,并推进工具在项目中的有效应用。
  4. 团队Leader和相关负责人,需积极推广和监督工具的使用情况,同时关注并收集使用效果的反馈,以持续优化工具在实际工作中的应用效果。

Github Copilot(推荐)

调研结果
推荐使用
代码生成与优化代码隐患审查Review缺点
较为不错分析能力可以有的时候响应速度会变慢
工具分析

GitHub Copilot 是由Github和OpenAI创造的AI工具,该工具通过自动代码补全来帮助程序员们编写代码。Visual Studio Code、Neovim 和 JetBrains 的用户已经可以使用这个插件了。

基于 OpenAI Codex 模型,经过自然语言和数十亿行公共源码的训练,其中来源包含 Github 上的项目。该工具能为你编写代码或提供替代的解决方案。该服务支持所有的编程语言,但在 Python、JavaScript、TypeScript、Ruby、Java 和 Go 语言中表现得最为出色。

  • 官方文档 - 中文版
  • 官方网站

面向人群:Java、NLP、FS以及前端开发技术团队

使用要求
  • 前提要求:需要拥有一个github账号(在GitHub Copilot注册),注册的阶段,暂时忽略,基本都会。
    • 注册地址
      在这里插入图片描述
花销成本

在这里插入图片描述

采购方案

在这里插入图片描述

个人版

19美元 / 一个月 (约人民币:136.33),对于个人账号而言,不太适合公司、部门范围,比较适合独立开发者进行使用。

企业版(GitHub Copilot Enterprise)

39美元 / 一个月 (约人民币:279.83),比较适合多个人的团队或者组织进行使用,但目前还处于beta版本,

个人不推荐,比较麻烦需要申请,而且还要使用GitHub Copilot Cloud

GitHub Copilot Enterprise为beta 版,功能和文档可能会更改。 可以使用 Copilot Enterprise 候补名单表单 填写申请加入 beta 版的组织或企业。

具体原因介绍:企业版申请资质要求

破解版

推荐使用闲鱼购买破解工具(学生包),20多人民币 / 一年,提供每个团队内部一同使用破解版本进行使用插件进行开发。

推广使用
  1. 各个团队Leader可以组织一下各个团队(NLP、JAVA、FS以及前端)分别进行采购闲鱼的一个破解版工具。目前还不确定一个工具可以破解几个终端,但是总体而言比其他版本成本要很低。

  2. 组织对应的AI工具使用的团队培训,组织团队内部进行AI工具使用,可以暂时购买一年的使用租期。

  3. 各个团队Leader以及版本负责人,进行推广和跟进使用情况和关注使用效果反馈。

安装使用方式(非破解版)
  • 【面向Java团队-IDEA使用文档】

  • 【面向FS、前端团队-visualstudio使用文档】

  • 【面向FS、前端团队-vscode使用文档】

破解版,单独进行使用安装破解工具即可,一般不需要进行账号注册。

代码案例效果

Codeium(推荐)

调研结果
推荐使用
代码生成与优化代码隐患审查Review缺点
较为不错分析能力可以有的时候分析问题会出现小的错误或者纰漏
工具分析

Codeium是一款免费的智能编程助手,类似Github Copilot,目前Codeium提供超过40种语言的代码完成工具,具有闪电般的速度和最先进的建议质量。支持几乎所有主流编程语言和IDE,个人用户免费使用。

  • 官方文档
  • 官方网站
  • chat工具
支持的编程语言

使用Codeium,可以永远无限制地完成单行和多行代码,支持40多种编程语言:Javascript、Python、Typescript、PHP、Go、Java、C、C++、Rust、Ruby等。

支持的开发工具

JetBrains IDE(IntelliJ、PyCharm、WebStorm、GoLand、PhpStorm、CLion、Android Studio 等)中安装 Codeium 扩展,并在编写注释和代码时开始查看建议。

花销成本

在这里插入图片描述

  • 个人版:免费,不需要付费,注册账号即可,个人觉的足够使用了。

  • 企业版:价格不清晰,需要单独与该平台进行对接。

采购方案

在这里插入图片描述

推荐每个开发人员使用个人版本。

安装使用方式
  • 【安装使用文档】
推广使用
  1. 各个团队Leader可以组织一下各个团队(NLP、JAVA、FS以及前端)分别进行对应codeium进行使用和推广组内开发人群使用,可以参考(本篇文档)。注册个人账号即可。

  2. 组织对应的AI工具使用的团队培训,组织团队内部进行AI工具使用。

  3. 各个团队Leader以及版本负责人,进行推广和跟进使用情况和关注使用效果反馈。

codeium使用案例
  • 【IDEA使用文档】
使用的效果案例1

在这里插入图片描述

使用的效果案例2

在这里插入图片描述

  • codeium-Chat对话案例
    在这里插入图片描述

Tabnine(不推荐)

调研结果
不推荐使用
代码生成与优化代码隐患审查Review缺点
较为可以分析能力一般,答案有的时候不是我们想要的有的时候分析问题会出现小的错误或者纰漏

Tabnine 则是另一个强大的内容自动补全工具。它对多种编程语言均有很高的支持水平。它使用机器学习技术对语境进行理解从而进行最为合适的代码自动补全。他同样可以通过学习用户的编写习惯来进行更为人性化的推送。

其限制主要体现在某些复杂场景下,比如嵌套语句和极端情况,可能无法给予完全准确的建议。该工具最佳的应用场景仍然是常见的代码编辑环境。

  • 官方文档 - 中文版
  • 官方网站
支持的开发工具

以下为支持的开发工具。在这里插入图片描述

花销成本

在这里插入图片描述

  • Starter版本:不推荐,基本相当于用不了,功能很受限制
  • 专业版:需要花钱,成本较高,而且没有其他方式进行破解等。
  • 企业版:价格不确定,而且流程复杂,觉得不太划算。
安装使用方式
  • 【安装使用文档】

个人不推荐使用Tabnine


Bito(推荐)

调研结果
推荐使用
代码生成与优化代码隐患审查Review缺点
较为不错分析能力良好没有明显问题
工具分析

Bito是一款建立在OpenAI和ChatGPT模型之上的人工智能编程辅助软件,Bito AI可以帮助开发人员大幅提升工作效率。它是一个功能齐全的工具,同时使用和ChatGPT相同的模型,它可以让您的开发工作效率提高10倍,并每天节省一个小时的时间。

  • 官方网站

在这里插入图片描述
目前根据官方的介绍,Bito分两个版本,个人计划版本和商业计划版本,对于个人计划是免费使用的,商业计划暂未发布,基本可以看到以后对于个人是可以持续免费使用的,只不过一些高级特性、功能及服务会放在商业计划中进行收费。个人辅助应用已经足够了。

但是前提需要注册账号,因此,需要先注册一个账号。

Bito安装插件
JetBrain IDE安装

在JetBrains IDE,如IntelliJ IDEA中,请选择“文件”(File)-> “设置”(Settings)打开“设置”对话框,然后在“设置”对话框中单击“插件”(Plugins)-> “市场”(Marketplace)选项卡。搜索Bito扩展即可。(Mac版本直接点击主界面的Plugins菜单进入,或者通过IntelliJ IDEA → Preferences → Plugins进入)
在这里插入图片描述
在安装成功后,Bito面板将出现在右边的侧边栏中。单击该面板可以继续完成设置过程。
在这里插入图片描述

VS Code 安装

在Visual Studio Code中,点击扩展选项卡并搜索“Bito"。
在这里插入图片描述
安装完扩展后,建议重启IDE。安装成功后,Bito的标志会出现在Visual Studio Code窗口中。
在这里插入图片描述


Amazon CodeWhisperer(不推荐)

不推荐使用
代码生成与优化代码隐患审查Review缺点
体验效果不好,结果反馈不太清晰分析能力可以没有明显问题

Amazon CodeWhisperer 直接在集成式开发环境 (IDE) 中为开发人员提供实时代码建议。个人开发人员可以免费使用 CodeWhisperer。组织为使用 CodeWhisperer 按“每位用户每月”支付固定的订阅费,无需预付费用或长期承诺。

  • 官方文档
    在这里插入图片描述

测评结果:使用体验度比较低,功能较为受限制,因此不推荐使用。

这篇关于【2023年公司智能工具降本增效分享总结】「智能工具的力量」总结分享我司通过AI提升软件开发效率与质量调研报告,问题踩坑之路的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/494582

相关文章

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

SQL中JOIN操作的条件使用总结与实践

《SQL中JOIN操作的条件使用总结与实践》在SQL查询中,JOIN操作是多表关联的核心工具,本文将从原理,场景和最佳实践三个方面总结JOIN条件的使用规则,希望可以帮助开发者精准控制查询逻辑... 目录一、ON与WHERE的本质区别二、场景化条件使用规则三、最佳实践建议1.优先使用ON条件2.WHERE用

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

Go语言中泄漏缓冲区的问题解决

《Go语言中泄漏缓冲区的问题解决》缓冲区是一种常见的数据结构,常被用于在不同的并发单元之间传递数据,然而,若缓冲区使用不当,就可能引发泄漏缓冲区问题,本文就来介绍一下问题的解决,感兴趣的可以了解一下... 目录引言泄漏缓冲区的基本概念代码示例:泄漏缓冲区的产生项目场景:Web 服务器中的请求缓冲场景描述代码

Java死锁问题解决方案及示例详解

《Java死锁问题解决方案及示例详解》死锁是指两个或多个线程因争夺资源而相互等待,导致所有线程都无法继续执行的一种状态,本文给大家详细介绍了Java死锁问题解决方案详解及实践样例,需要的朋友可以参考下... 目录1、简述死锁的四个必要条件:2、死锁示例代码3、如何检测死锁?3.1 使用 jstack3.2

解决JSONField、JsonProperty不生效的问题

《解决JSONField、JsonProperty不生效的问题》:本文主要介绍解决JSONField、JsonProperty不生效的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录jsONField、JsonProperty不生效javascript问题排查总结JSONField

github打不开的问题分析及解决

《github打不开的问题分析及解决》:本文主要介绍github打不开的问题分析及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、找到github.com域名解析的ip地址二、找到github.global.ssl.fastly.net网址解析的ip地址三

MySQL版本问题导致项目无法启动问题的解决方案

《MySQL版本问题导致项目无法启动问题的解决方案》本文记录了一次因MySQL版本不一致导致项目启动失败的经历,详细解析了连接错误的原因,并提供了两种解决方案:调整连接字符串禁用SSL或统一MySQL... 目录本地项目启动报错报错原因:解决方案第一个:第二种:容器启动mysql的坑两种修改时区的方法:本地

springboot加载不到nacos配置中心的配置问题处理

《springboot加载不到nacos配置中心的配置问题处理》:本文主要介绍springboot加载不到nacos配置中心的配置问题处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录springboot加载不到nacos配置中心的配置两种可能Spring Boot 版本Nacos