首页 程序笔记 VSCode插件CodeGPT配置使用方法图文教程

VSCode插件CodeGPT配置使用方法图文教程

CodeGPT 是一款 Visual Studio Code 扩展插件,可以通过官方的 OpenAI API 使用 GPT-3 (预训练生成式转换器) 模型,在多种编程语言中生成、解释、重构和文档化代码片段。CodeGPT 可用于各种任务,例如代码自动完成、生成和格式化。它还可以集成到代码编辑器和集成开发环境 (IDE) 中,为开发人员提供人工智能辅助编码功能。本文将教你如何在VS Code 中设置和使用 CodeGPT。

在VSCode中安装CodeGPT

要安装 CodeGPT 扩展,打开你的 Visual Studio Code 编辑器,进入扩展商店,然后在搜索栏中输入“codegpt”,这样可以搜到CodeGPT插件。选择验证过的扩展,然后点击安装按钮。

点击安装按钮将在你的 Visual Studio Code 编辑器中启用 CodeGPT。

如何配置 CodeGPT

安装 CodeGPT 后,你必须使用你的 OpenAI API 密钥配置 CodeGPT。

首先要注册OpenAI帐号,如果你没有帐号可以参考这篇文章:

https://www.leavescn.com/Articles/Content/1208

要获取你的 OpenAI API 密钥,请访问 https://beta.openai.com/account/api-keys,并单击“创建新的秘密密钥”按钮,如下图所示。

点击此按钮将生成你的 API 秘密密钥。请注意,你需要在生成后立即复制并安全存储该密钥,因为 OpenAI 不会再次显示它们。

接下来,返回 Visual Studio Code 编辑器,并导航到设置。 在 Windows 上,按 ctrl+, 打开设置。 在设置搜索栏中输入 “codegpt” 来过滤其他设置,留下 CodeGPT 设置。

在 弹出的窗口 上,填写 API 密钥选项。

CodeGPT 扩展还有几个设置,可以根据个人喜好进行配置。它们包括:

Max Tokens:在 API 处理提示之前,输入被分解为标记,然后 API 处理这些标记。max tokens 是 API 应该接受和处理的最大标记数。因此,根据你想要获得的响应长度选择标记数。还要注意,每个模型(稍后会讲到更多)都有一个最大标记数,所以使用的模型会影响最大标记数。 Model:这是 CodeGPT 在处理查询时将使用的 OpenAI 模型。顾名思义,CodeGPT 使用 GPT-3 模型。在这个模型中,text-davinci-003 是最有能力的,因为它能够提供更高质量、更长的输出,正确地跟随提示,并处理高达 4,000 个标记。 Language:这是你将与 API 交互的语言。功能,如 Explain 或 Document,也将在所选语言中完成。(这里你可以选择中文) Temperature:此设置确定生成文本中的随机程度或“创造力”水平。温度越高,生成的输出就越多样化和有创意。较低的温度会产生类似于训练数据的输出,并且不太可能包含意外或惊人的内容。它是一个介于零(0)和一(1)之间的值,其中零表示最确定性,而一(1)表示最随机和有创造力。默认温度为 0.3。

让我们探索 CodeGPT 可以做的各种事情以及如何做到它们。

使用CodeGPT生成代码

使用 CodeGPT 可以根据从 Visual Studio Code 编辑器中提供的提示生成代码片段。

要使用 CodeGPT 生成代码,请编写一个注释,询问特定的代码(确保将光标保持在相同的注释行的末尾),然后在 macOS 上按下 cmd+shift+i,在 Windows 上按下 ctrl+shift+i。按下这组键将触发 CodeGPT 提示,然后打开一个新窗口,显示提示的结果。

在下面的示例中,使用提示“使用 ES6 语法生成一个返回 JavaScript UUID 的函数,并附有注释”来生成第二个窗口中的代码片段。

上面的提示生成了一个带有解释(含有注释)的函数,该函数生成UUID。

使用CodeGPT解释代码

可以使用CodeGPT来解释您需要理解其作用的代码片段。

要解释代码片段,请选择要解释的代码片段,然后右键单击。右键单击将显示一些选项。从选项中选择“解释CodeGPT”。

点击此选项会触发CodeGPT提示,并打开一个新窗口,显示您的提示的结果,如下例所示。

如果你设置的语言是中文,默认就会用中文解释,如下图所示:

使用CodeGPT重构代码

可以使用CodeGPT来重构代码片段,使其更易读、易于维护和高效。

要重构代码片段,请先选择该片段,然后右键单击。右键单击将显示一些选项。从选项中选择“Refactor CodeGPT”。

单击此选项将触发一个CodeGPT提示,然后打开一个新窗口,显示您的提示结果,如下图所示。

上面的示例中的提示将突出显示的代码块重构为使用 reduce 数组方法来计算购物车中产品的总价。在重构之前,初始代码块使用 for 循环来计算产品的总价。

使用CodeGPT编写单元测试

可以使用CodeGPT为代码编写单元测试,以确保它们按照预期工作。

要为代码片段编写单元测试,请先选中该片段,然后右键单击。右键单击将显示一些选项。从选项中选择“Unit Test CodeGPT”。

点击这个选项会触发一个CodeGPT提示,并打开一个新窗口,显示你的提示的结果,如下图所示。

以上示例中的提示编写了单元测试,以确保之前重构的函数能够产生预期的结果。

关于CodeGPT的总结

你可以使用CodeGPT做很多其他的事情,包括记录你的代码,查找你的代码问题,从Stackoverflow上获取答案,以及比较最佳人类答案和AI生成的答案。虽然AI生成的代码可以是一个有用的工具,但是我们需要谨慎考虑它的潜在限制,并采取一些步骤,例如测试代码,以确保生成的代码具有高质量并满足你的要求。

3

站心网

CodeGPT 是一款 Visual Studio Code 扩展插件,可以通过官方的 OpenAI API 使用 GPT-3 (预训练生成式转换器..

为您推荐

软件产品开发中常见的10个问题及处理方法

常见的10个问题#产品开发中常见的10个问题思维导图需求相关#1. 需求不明确#在日常工作中,需求来源于用户、老板、客户、竞品分析、业务部门、产品经理等,这些人或部门会提出需求,因为他们不是产品经理,提出的需求..

DiscuzX3.5多合一聚合支付接口插件发布

Discuz论坛多合一聚合支付接口插件,该插件直接替换了自带的支付接口功能,增强了支付的扩展性,自带支持支付宝、微信、QQ钱包官方支付,以及彩虹易支付、我爱支付、虎皮椒等支付通道,并且可以自由扩展其他的支付通..

宝塔面板定时计划任务删除文件夹教程

1. 登录宝塔面板打开浏览器,输入宝塔面板的地址,使用你的用户名和密码登录。2. 进入计划任务在宝塔面板的左侧菜单中,找到并点击“计划任务”。3. 添加计划任务点击“添加计划任务”按钮。4. 配置计划任务任务类型..

一个提升运营/营销转化率的万能方法!

之前,笔者有分享过说我最喜欢的增长是可复制可持续的增长,它一般都会有三个关键过程:首先是小范围测试,低成本试错,也就是最小可行性验证,让ROI最大化。然后是把测试的最优结果整理为可执行的标准化化流程。前..

学习最重要是方法,管理最重要是高度

技术学习要兼顾深度和广度夯实技术基础这么多年来,我面试了很多人。我越发感到「技术基础」非常重要。很多技术的本质是一样的。技术基础足够好的话,学东西可以非常快。往下到操作系统层面,甚至计算机硬件层面,你..

Java中String类常见的方法

以下介绍字符串常见的几个方法。介绍String类在 Java 中,String类是一个代表字符串的类,具有以下特性:不可变性:String对象一旦被创建就是不可变的,即它们的值在创建后不能被更改。任何对String对象的修改操作实..

使用 html2canvas 实现截图功能

html2canvas 是一个开源的 JavaScript 库,用于将网页上的 HTML 元素渲染成图像。它通过遍历页面的 DOM 树和计算样式,然后将其绘制到 <canvas> 元素上,最终生成图片。该库不依赖服务器端,而是通过浏览器端的 Java..

使用SuperWebSocket实现Web消息推送

在大部分Web系统中,我们可能遇到需要向客户端推送消息的需求。SuperWebSocket第三方库能让我们轻松的完成任务。SuperWebSocket第三方库可以从网上下载,不过通过Visual Studio Nuget安装更快。引用SuperWebSocket相..

.NET C# 使用Hook钩子实现全局监听键盘和鼠标

C# 是一种面向对象的编程语言,具有丰富的类库和工具支持,适用于各种类型的应用程序开发。Windows 提供了一种称为"钩子"(Hook)的机制,允许拦截并处理系统级别的事件,如键盘按键和鼠标移动。通过结合 C# 和 Hook..

C#使用 Attribute 实现 AOP 功能

在 C# 中,通过自定义 Attribute 并结合一些技术(如动态代理、反射等)可以实现 AOP(面向切面编程)。AOP 通常用于日志记录、性能监控、权限验证等横切关注点。以下是一个使用 C# Attribute 实现 AOP 功能的示例。..

ABP.Net Core使用教程(一)启动模版项目

只需要简单的3步:1,到官网下载模版项目 https://aspnetboilerplate.com/Templates2,用VS2017打开,将Web.Host设置为启动项3,在程序包管理器控制台(Nuget控制台)里设定默认项目为EntityFrameworkCore,执行命令..

.net 通过 HttpClient 下载文件同时报告进度的方法

通过 HttpClient 的 ContentLength 很多时候都可以拿到下载的内容的长度,通过 ReadAsync 可以返回当前读到的长度,将读取到的长度加起来就是已经下载的长度看起来很简单,于是直接给代码private static async Task ..

C#中的线程安全的集合ConcurrentQueue使用示例

在多线程编程中,如何安全地在不同线程之间共享数据是一个非常重要的问题。C# 为我们提供了一些专门设计的线程安全集合,其中之一就是 ConcurrentQueue<T>。它是一种先进先出(FIFO)的数据结构,专门为多线程环境设..

CSS砌体布局示例和使用场景

CSS砌体布局(Masonry Layout)CSS砌体布局是一种网页布局技术,它的灵感来源于砖石墙的排列方式,类似于“拼图”或“拼砖”的效果。在砌体布局中,元素的排列并不完全遵循传统的网格布局规则,..

使用CSS columns-visibility实现砌体布局

CSS的 columns 属性(如 columns、column-count 和 column-width)通常用于多列文本布局,而不是直接用于砌体布局。然而,结合 columns 和 visibility 属性,可以在某些情况下实现类似砌体布局的效果,虽然它并不完..

使用System.Linq.Dynamic.Core扩展库动态构建 LINQ 查询

System.Linq.Dynamic.Core 是一个扩展库,用于在运行时动态构建 LINQ 查询,支持字符串形式的表达式解析和动态查询操作。它是 .NET 的一个强大工具,适合处理需要灵活定义查询逻辑的场景,例如动态过滤、排序、投影..

.NET C#中的Func、Predicate和Expression用法详解

在 .NET C# 中,Func、Predicate 和 Expression 是非常常见的委托类型和表达式树,广泛用于函数式编程、数据查询(如 LINQ)以及表达式编译等场景。以下是它们的详细用法和区别。1. FuncFunc 是一个通用委托,用于表..

SQL语句中的EXISTS用法示例

EXISTS 是 SQL 中用于判断子查询是否返回结果的关键字。它通常用于 WHERE 子句中,结合子查询一起使用。如果子查询返回至少一行数据,EXISTS 会返回 TRUE,否则返回 FALSE。EXISTS 用法示例假设有两个表:employees..

小米开源智能家居平台 ha_xiaomi_home 使用示例

小米近期在 GitHub 上开源了名为“ha_xiaomi_home”的项目,即 Home Assistant 米家集成组件。该组件由小米官方支持,旨在让用户在 Home Assistant 中集成和控制小米 IoT 智能设备。主要特点:官方支持:..

C#13新特性 使用System.Threading.Lock简化线程同步

C# 13 引入了新的线程同步类型 System.Threading.Lock,它通过作用域管理的方式简化了锁的使用,使代码更加清晰可靠。本文将全面介绍 System.Threading.Lock 的功能、适用场景,并提供完整的运行示例程序。1. 什么是..

发表回复

返回顶部