AI 编程

news/2024/5/9 11:30:54/文章来源:https://blog.csdn.net/huangpb123/article/details/130395133

GitHub Copilot(收费)

开发者:微软 + openAI

2022年8月22日之后开始收费,10美元/月,100美元/年。

CodeGeeX(免费)

CodeGeeX 可以根据自然语言注释描述(支持中英文注释)的功能自动生成代码,也可以根据已有的代码自动生成后续代码,补全当前行或生成后续若干行,帮助你提高编程效率。

CodeGeeX 是由清华大学知识工程实验室研发,其中鹏城实验室提供了算力支持,智谱AI、华为MindSpore提供了技术支持。

已经推出了免费的 VSCode CodeGeeX 扩展程序。

安装 VSCode CodeGeeX

注意:如果是公司的项目,安装 CodeGeeX 扩展程序弹出下面的提示框最好选择“拒绝”,以免引起不必要的麻烦。

 代码生成与补全

 

 

 自动注释

选中代码 =》鼠标右键 =》CodeGeex Tool =》 Explanation =》 选择中文。即可以得出以下结果: 

 

CodeGeex 的三种模式:

自动模式
这是默认的模式,查看用户以前的代码或代码注释,为用户生成下一行代码。它不会干扰用户写代码。仅在用户输入3秒钟之后给出建议代码,而建议的代码在你按 Tab 键时才生效。之所以需要等待3s,是因为要和服务器通信,获取补全建议。存在多个候选的情况下,可以使用Alt/Option + [ 或 ] 在几个候选间进行切换。用户也可以在设置中改变"Candidate Num:。如果对现有建议不满意,可使用Alt/Option + N获得新的候选。

交互模式
按下 Control+Enter 会进入交互模式,VSCode 会分成两个版面。一个版面正常编写代码,另一个版面显示建议的代码片段。每按一次Ctrl+Enter, 产生一次提示。

提示模式
按下 ALT+T 进入提示模式,会给你提供一些代码解释,代码总结。使用提示 (Prompt) 模式,需要选中想要获得解释的代码,过一会儿,代码下方就会出现英文功能解释。这个模式只支持按照Java和Python两种语言的代码风格解释代码功能。

其他的 VSCode AI 代码补全扩展

  • Codeium 是一个人工智能驱动的代码完成工具。它支持超过20种语言,并与常用的IDE集成,个人用户永久免费。需要注册登陆后才能使用。
  • Codiga 是一个平台,使开发人员能够更快地编写更好的代码。开发人员可以使用Codiga编码助手直接从他们的 IDE 生成、分发和重用代码片段。
  • CodeWhisperer 亚马逊的CodeWhisperer通过基于自然语言注释和集成开发环境 (IDE) 中的代码生成代码建议来提高开发人员的工作效率。
  • Kite 是另外一种基于机器学习的代码自动补全插件。它的目标是帮助开发者更快地编写高质量的代码, Kite 支持超过16种语言以及16种代码编辑器。
  • Captain Stack 它使用 Google传输用户的搜索查询,然后从 StackOverFlow 和 Github Gist 收集答案,为用户自动完成填充,这个过程中不使用 AI。
  • IntelliCode 是一种在 GitHub 項目样本上训练的实验性AI编码辅助工具。

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

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

相关文章

flask+apscheduler+企业微信消息机器人推送

简介:APScheduler是一个轻量级的Python库,用于在后台运行定时任务和延迟任务。它可以轻松地安排任务并支持多种类型的触发器,例如固定间隔、日期/时间表达式、CRON表达式等。APScheduler还提供了多个后台调度器实现,例如基于线程池…

Qt连接MySQL数据库最详细的教程

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 1.直接通过MySQL的驱动加载数据库1)所需代码2)解决QMYSQL driver not loaded 2.通过ODBC连接MySQL数据库1)官方解释2…

taro之项目初始化模版

项目初始化模板 一直以来,在使用 Taro CLI 的 taro init 命令创建项目时,CLI 会提供若干内置模板给开发者选择。但是很多团队都有自己独特的业务场景,需要使用和维护的模板也不尽一致,因此 Taro 支持把项目模板打包成一个能力赋予…

《Netty》从零开始学netty源码(四十四)之PoolChunk释放内存

free 当PoolChunk需要释放内存空间时可调用free方法,具体的源码过程如下: 在这个过程中最重要的是第三步的collapseRuns方法,当释放了空间以后要更新runsAvail和runAvailsMap的信息,如果handle对应的内存空间的上边界以及下边界是…

任务调度原理 通俗详解(FreeRTOS)

寄存器说明 以cortex-M3,首先先要了解比较特别的几个寄存器: r15 PC程序计数器(Program Counter),存储下一条要执行的指令的地址。 r14 LR连接寄存器(Link Register ),保存函数返回地址&#x…

代码随想录算法训练营第四十三天|1049. 最后一块石头的重量 II 、494. 目标和、474.一和零

文章目录 背包问题题型1049. 最后一块石头的重量 II494. 目标和474.一和零 背包问题题型 等和子集 —0-1背包能否装满最后一块石头—0-1背包尽量装满目标和—0-1背包装满,且有多少种装的方式(组合问题) 1049. 最后一块石头的重量 II 题目链…

从数据处理到人工智能(常用库的介绍)

Python库之数据分析 ​​​​​​​​​​​​ 可以这么理解pandas通过扩展了对一维数据和二维数据的一种表示,因而能够形成更高层对数据的操作,简化数据分析的运行 Python库之数据可视化 Matplotlib — Visualization with Python seaborn: statistic…

C++ 编程笔记(本人出品,必属精品)

文章目录 Part.I IntroductionChap.I 快应用 Part.II C 基础Chap.I 一些待整理的知识点Chap.I 常用的库或类 Part.III 杂记Part.X Others WorkChap.I 大佬的总结Chap.II 大佬的轮子 Part.I Introduction 前言:C 用的人还是比较多的,主要是它比较快并且面…

不是什么高深玩意,Arrays.asList、ArrayList.subList需要注意的坑

前言 集合是日常工作中几乎每天都在用的玩意,也是八股文中被翻烂的东西,诸如List、Map,确实很重要也很实用,但是不注意细节就比较容易踩坑。比较常见的就是今天要整理的Arrays.asList和ArrayList.subList。不是什么高深的东西&…

Oracle跨服务器取数——DBlink 初级使用

前言 一句话解释DBlink是干啥用的 实现跨库访问的可能性. 通过DBlink我们可以在A数据库访问到B数据库中的所有信息,例如我们在加工FDS层表时需要访问ODS层的表,这是就需要跨库访问 一、DBlink的分类 private:用户级别,只有创建该dblink的用户才可以使…

一篇文章告诉你金融行业如何高效管理文件

由于金融行业的行业属性,信息安全万分重要。因此在文件管理工具时,要注意数据安全问题,那么金融行业如何高效管理文件呢? 首先金融行业在文件管理时可能面临以下问题: 1,资料繁杂,整理困难&…

starrocks基于prometheus实现监控告警

监控报警 本文介绍如何为 StarRocks 设置监控报警。 StarRocks 提供两种监控报警的方案。企业版用户可以使用内置的 StarRocksManager,其自带的 Agent 从各个 Host 采集监控信息,上报至 Center Service,然后做可视化展示。StarRocksManager …

虹科新品 | 用于医疗应用的压力和气体流量传感器

ES Systems在创新MEMS方面拥有丰富的经验,设计了高质量和高性能的气体流量和压力传感器,由于其技术规格,出色的可靠性和有竞争力的价格,这些传感器在竞争产品中具有独特的品质。 Part.01 应用背景 众所周知,在医疗领域…

在函数中使用变量

shell脚本编程系列 向函数传递参数 函数可以使用标准的位置变量来表示在命令行中传给函数的任何参数。其中函数名保存在$0变量中,函数参数则依次保存在$1、$2等变量当中,也可以使用特殊变量$#来确定参数的个数 在脚本中调用函数时,必须将参…

【SWAT水文模型】SWAT水文模型建立及应用第四期: 气象数据的准备(待更新)

SWAT水文模型建立及应用: 气象数据的准备 1 简介2 气象数据的准备(传统气象站)2.1 天气发生器各参数的计算2.2 降水及气温输入数据的准备 3 气象数据的准备(中国区域高精度同化气象站CMADS)参考 本博客主要介绍气象数据…

本周一至周三总结

周一 学习如何进行竞品分析 对软件杯项目进行了竞品分析,测试了十余个强相关网站,为团队写好了竞品分析报告 分别对主要目标,竞品优劣点,竞品选择原因,产品创新点等进行了分析和阐述 周二 下午晚上刷了五道题 题解…

Android 项目必备(四十五)-->2023 年如何构建 Android 应用程序

Android 是什么 Android 是一种基于 Linux 内核并由 Google 开发的开源操作系统。它用于各种设备包括智能手机、平板电脑、电视和智能手表。 目前,Android 是世界上移动设备使用最多的操作系统; 根据 statcounter 的一份最近 12 个月的样本报告;Android 的市场份额…

Xcode14 设置Display Name不生效问题

一、前言 早在Xcode13苹果就对Info.plist做了一次大改革,新建的OC项目默认Info.plist文件是“空的”,Swift项目甚至干脆连Info.plist文件都没有了,苹果这样做是为了建立一个新的Info.plist管理方式,把Info.plist物理文件中的配置…

根据虚拟地址,如何求出页号和偏移量?

方法掌握 虚拟地址划分成虚拟页号和虚拟页偏移量。 物理地址同样可划分为物理页号和物理页偏移量 如何划分,关键点在于页面的大小。 假设给你一个十进制表示的地址20000,一个页面的大小为4KB,那么如何找出地址20000的具体位置呢&#xff1f…

合并两个有序链表

文章目录 1.题目描述2.解题思路方法1:方法2: 1.题目描述 题目链接:力扣21,合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 2.解题思路 方法1:…