当前位置: 首页 > news >正文

DevChat:VSCode中基于大模型的AI智能编程助手

#AI编程助手哪家好?DevChat“真”好用#

文章目录

  • 1. 前言
  • 2. 安装
    • 2.1 注册新用户
    • 2.2 在VSCode中安装DevChat插件
    • 2.3 设置Access Key
  • 3. 实战使用
  • 4. 总结

1. 前言

  DevChat是由Merico公司精心打造的AI智能编程助手。它利用了最先进的大语言模型技术,像人类开发者一样高效地理解需求,并提供最佳的代码和项目实现方式。DevChat都可提供智能补全、错误纠正、代码规范检查、代码注释生成等多项支持,大大提升了开发者的工作效率。从而能够让开发者告别脏活累活,做更有价值的工作。产品务实高效,近期还在2023QCon全球软件大会亮相,斩获众多圈内开发者的好评

  作为一款全方位的AI智能编程助手,不仅能够完成代码编写,而且还能够完成单元测试、Debug调试、代码文档编写和高效总结。在保证编码质量的同时,DevChat也非常注重用户隐私和数据安全。DevChat支持微软 Azure 平台,全球顶级数据隐私保护,比 OpenAI 接口用起来更放心。

  DevChat提供了GPT-3.5、GPT-4、XINGHUO-2、CLAUDE-2、LLAMA-2-13B-CHAT等大模型的接口,用户可根据自身实际需求选择最适合自己的大模型,从而最大程度上提升工作效率。比如复杂任务可首选GPT-4 ,其他任务也可使用低成本模型加以解决,组合使用达到最佳的效能。

  本人在深度使用了DevChat智能编程助手后,最大的感受就是简单又易用,非常适合不同水平的程序员解决不同难度的问题,不仅能够帮助新手写出成熟代码,而且也能够帮助项目组提升工作效率。所以强烈建议大家体验使用,访问地址为:官网链接
在这里插入图片描述

2. 安装

  为了照顾到绝大多数的同学,本节内容操作步骤较为详细,希望大家都能够按照以下步骤顺利完成DevChat的安装。

2.1 注册新用户

  点击进入官网链接后,然后点击登录,如下图所示:

在这里插入图片描述
  点击下图中的Sign Up开启新用户的注册:

在这里插入图片描述

  然后在下图中输入用户名和的Email邮箱地址(亲测QQ邮箱是可以的),完成I am human的真人测试,最后点击Sign up完成新用户的注册。需要注意的是,此时邮箱会收到一封包含Access Key的邮件,将该Access Key保存到本地, 从而方便后续使用。
在这里插入图片描述

  然后输入刚才注册时的Email,并点击Send Code,则会收到包含验证码的邮件,然后将其输入到Veification Code的输入框中,并点击Sign In进行登录,具体如下图所示:
在这里插入图片描述

2.2 在VSCode中安装DevChat插件

  首先打开VSCode,点击左下方的配置按钮(齿轮状),然后点击Extensions(扩展),如下图所示:
在这里插入图片描述
  然后在搜索框中输入DevChat,点击Install进行安装,如下图所示:
在这里插入图片描述

2.3 设置Access Key

  点击左下角的设置按钮,选择Command Palette(控制面板),,如下图所示:

在这里插入图片描述
  在弹出的命令面板中点击DevChat: Input DevChat Access Key,如下图所示:
在这里插入图片描述
  将之前保存好的Access Key复制到下图中的输入框中,并按下回车键。
在这里插入图片描述
  输入完毕后,可以看到下方的日志出现了api key status: has valid access key,则说明Access Key配置成功了,如下图所示:
在这里插入图片描述

3. 实战使用

  首先来个最简单的测试实例,即让DevChat完成Python的快速排序,截图和代码如下所示:

在这里插入图片描述

def quick sort(arr): if len(arr) <= 1:return arr pivot = arr[len(arr) /1 2] # 选择个基准元素left = [x for x in arr if x < pivot] # 小于基准元素的部分middle = [x for x in arr if x == pivot] # 等于基准元素的部分right = [x for x in arr if x > pivot] # 大于基准元素的部分# 递归排序左右两部分return quick sort(left) + middle + quick sort(right)

  除了能够完成算法题目的编写,那么DevChat是否能够创建一个Python项目呢?这里以Python的Django项目为例,首先在输入框中输入如何创建Django项目,如下图所示:
在这里插入图片描述
  然后DevChat就给出了详细的创建步骤,如下图所示,看看咱们是否能够在它的指引下完成Django项目的创建呢?
在这里插入图片描述
  首先进入命令行,使用pip命令安装django库,当看到Sucessfully installed则说明安装成功了,具体操作步骤和截图如下所示:
在这里插入图片描述
  然后在命令中创建django项目,具体操作命令和DevChat给出的步骤也是一致的,如下图所示:
在这里插入图片描述
  当看到The install worked successfully! Congratulations!则说明Django项目创建成功了,具体如下图所示:

在这里插入图片描述

4. 总结

  在亲身体验后DevChat后,它的确是一款非常智能的AI编程助手。不仅能够完成代码的智能补全、错误纠正和代码规范检查,而且还能在它的精确指引下完成项目的创建。真的是功能强大、简单易用,所以强烈建议大家安装使用。在AI的新时代,只有不断学习使用最新的AI工具,才能立于不败之地。

相关文章:

DevChat:VSCode中基于大模型的AI智能编程助手

#AI编程助手哪家好&#xff1f;DevChat“真”好用# 文章目录 1. 前言2. 安装2.1 注册新用户2.2 在VSCode中安装DevChat插件2.3 设置Access Key 3. 实战使用4. 总结 1. 前言 DevChat是由Merico公司精心打造的AI智能编程助手。它利用了最先进的大语言模型技术&#xff0c;像人类…...

Scrum master的职责

首先&#xff0c;Scrum master负责建立Scrum团队。同时Scrum master要帮助团队&#xff08;甚至大到公司&#xff09;中的每个成员理解Scrum理论和实践。 Scrum master还需要有很强的软技能&#xff0c;用于指导Scrum团队。Scrum master要对Scrum团队的成功负责任&#xff0c;…...

数据结构:算法(特性,时间复杂度,空间复杂度)

目录 1.算法的概念2.算法的特性1.有穷性2.确定性3.可行性4.输入5.输出 3.好算法的特质1.正确性2.可读性3.健壮性4.高效率与低存储需求 4.算法的时间复杂度1.事后统计的问题2.复杂度表示的计算1.加法规则2.乘法规则3.常见函数数量级比较 5.算法的空间复杂度1.程序的内存需求2.例…...

SaaS 出海,如何搭建国际化服务体系?(一)

防噎指南&#xff1a;这可能是你看到的干货含量最高的 SaaS 出海经验分享&#xff0c;请准备好水杯&#xff0c;放肆食用&#xff08;XD。 当越来越多中国 SaaS 企业选择开启「国际化」副本&#xff0c;出海便俨然成为国内 SaaS 的新角斗场。 LigaAI 观察到&#xff0c;出海浪…...

数据结构与算法-(7)---栈的应用拓展-前缀表达式转换+求值

&#x1f308;write in front&#x1f308; &#x1f9f8;大家好&#xff0c;我是Aileen&#x1f9f8;.希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流. &#x1f194;本文由Aileen_0v0&#x1f9f8; 原创 CSDN首发&#x1f412; 如…...

泛型的使用

泛型是一种Java编程语法&#xff0c;它允许我们编写支持多种数据类型的通用类、方法和接口。使用泛型可以使代码更通用、更灵活、更健壮&#xff0c;并提高代码的重用性。 在Java中&#xff0c;泛型的语法使用尖括号<>和类型参数来定义。例如&#xff0c;我们可以定义一…...

docker导致远程主机无法访问,docker网段冲突导致主机网络异常无法访问

背景&#xff1a; 公司分配的虚拟机是172网段的&#xff0c;在上面部署了docker、docker-compose、mysql、redis,程序用docker-compose管理&#xff0c;也平稳运行了一个多周&#xff0c;某天用FinalShell连主机重启docker容器&#xff0c;忽然断开连接&#xff0c;然后虚拟机就…...

Python的web自动化学习(三)Selenium的显性、隐形等待

引言&#xff1a; WebDriver的显性等待和隐形等待是用于在测试过程中等待元素加载或操作完成的两种等待方式。了解此两种方式是为后面自动化找到适合的方法去运用 显性等待&#xff08;Explicit Wait&#xff09; 显性等待是通过使用WebDriverWait类和ExpectedConditions类来…...

Linux--文件操作

1.什么是文件 对于文件来说&#xff0c;文件文件内容文件属性&#xff1b;对于文件来说&#xff0c;只有两种操作&#xff0c;对内容的修改和对文件属性的修改&#xff0c;这就是文件的范畴。 对于存放在磁盘上的文件&#xff0c;我们需要通过进程来进行访问&#xff0c;访问文…...

硬件知识积累 RS422接口

1. RS422 基本介绍 EIA-422&#xff08;过去称为RS-422&#xff09;是一系列的规定采用4线&#xff0c;全双工&#xff0c;差分传输&#xff0c;多点通信的数据传输协议。它采用平衡传输采用单向/非可逆&#xff0c;有使能端或没有使能端的传输线。和RS-485不同的是EIA-422不允…...

项目经验分享|openGauss 陈贤文:受益于开源,回馈于开源

开源之夏 项目经验分享 2023 #08 # 关于 openGauss 社区 openGauss是一款开源关系型数据库管理系统&#xff0c;采用木兰宽松许可证v2发行。openGauss内核深度融合华为在数据库领域多年的经验&#xff0c;结合企业级场景需求&#xff0c;持续构建竞争力特性。同时openGauss也是…...

实时检测并识别视频中的汽车车牌

对于基于摄像头监控的安全系统来说,识别汽车牌照是一项非常重要的任务。我们可以使用一些计算机视觉技术从图像中提取车牌,然后我们可以使用光学字符识别来识别车牌号码。在这里,我将引导您完成此任务的整个过程。 要求: import cv2import numpy as npfrom skimage impor…...

使用 pyspark 进行 Clustering 的简单例子 -- KMeans

K-means算法适合于简单的聚类问题,但可能不适用于复杂的聚类问题。此外,在使用K-means算法之前,需要对数据进行预处理和缩放,以避免偏差。 K-means是一种聚类算法,它将数据点分为不同的簇或组。Pyspark实现的K-means算法基本遵循以下步骤: 随机选择K个点作为初始质心。根…...

LeetCode75——Day22

文章目录 一、题目二、题解 一、题目 1657. Determine if Two Strings Are Close Two strings are considered close if you can attain one from the other using the following operations: Operation 1: Swap any two existing characters. For example, abcde -> aec…...

【SOC基础】单片机学习案例汇总 Part1:电机驱动、点亮LED

&#x1f4e2;&#xff1a;如果你也对机器人、人工智能感兴趣&#xff0c;看来我们志同道合✨ &#x1f4e2;&#xff1a;不妨浏览一下我的博客主页【https://blog.csdn.net/weixin_51244852】 &#x1f4e2;&#xff1a;文章若有幸对你有帮助&#xff0c;可点赞 &#x1f44d;…...

【HTML】HTML基础知识扫盲

1、什么是HTML&#xff1f; HTML是超文本标记语言&#xff08;Hyper Text Markup Language&#xff09;是用来描述网页的一种语言 注意&#xff1a; HTML不是编程语言&#xff0c;而是标记语言 HTML文件也可以直接称为网页&#xff0c;浏览器的作用就是读取HTML文件&#xff…...

【Mybatis-Plus】常见的@table类注解

目录 引入Mybatis-Plus依赖 TableName 当实体类的类名在转成小写后和数据库表名相同时 当实体类的类名在转成小写后和数据库表名不相同时 Tableld TableField 当数据库字段名与实体类成员不一致 成员变量名以is开头&#xff0c;且是布尔值 ​编辑 成员变量名与数据库关…...

Android WMS——操作View(七)

上一篇文章我们将 view 传递给 ViewRootImpl 进行操作,这里我们主要分析 ViewRootImpl 对 View 进行操作。在正式分析之前我们先来介绍以下 View。 一、View介绍 最开始学习 View 的时候最先分析的是它的布局(LinearLayout、FrameLayout、TableLayout、RelativeLayout、Abso…...

算法__数组排序_冒泡排序直接选择排序快速排序

文章目录 冒泡排序算法说明代码实现 直接选择排序算法说明代码实现 快速排序算法说明代码实现 本篇主要讲解数组排序相关的三种算法&#xff0c;冒泡排序&#xff0c;直接排序和快速排序。 冒泡排序 算法说明 在数组中依次比较相邻的两个元素&#xff0c;当满足左侧大于右侧时…...

ByteBuffer的原理和使用详解

ByteBuffer是字节缓冲区&#xff0c;主要用户读取和缓存字节数据&#xff0c;多用于网络编程&#xff0c;原生的类&#xff0c;存在不好用&#xff0c;Netty采用自己的ByteBuff&#xff0c;对其进行了改进 1.ByteBuffer的2种创建方式 1.ByteBuffer buf ByteBuffer.allocate(i…...

[特殊字符] 智能合约中的数据是如何在区块链中保持一致的?

&#x1f9e0; 智能合约中的数据是如何在区块链中保持一致的&#xff1f; 为什么所有区块链节点都能得出相同结果&#xff1f;合约调用这么复杂&#xff0c;状态真能保持一致吗&#xff1f;本篇带你从底层视角理解“状态一致性”的真相。 一、智能合约的数据存储在哪里&#xf…...

Cesium1.95中高性能加载1500个点

一、基本方式&#xff1a; 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...

Springcloud:Eureka 高可用集群搭建实战(服务注册与发现的底层原理与避坑指南)

引言&#xff1a;为什么 Eureka 依然是存量系统的核心&#xff1f; 尽管 Nacos 等新注册中心崛起&#xff0c;但金融、电力等保守行业仍有大量系统运行在 Eureka 上。理解其高可用设计与自我保护机制&#xff0c;是保障分布式系统稳定的必修课。本文将手把手带你搭建生产级 Eur…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

DBLP数据库是什么?

DBLP&#xff08;Digital Bibliography & Library Project&#xff09;Computer Science Bibliography是全球著名的计算机科学出版物的开放书目数据库。DBLP所收录的期刊和会议论文质量较高&#xff0c;数据库文献更新速度很快&#xff0c;很好地反映了国际计算机科学学术研…...

使用SSE解决获取状态不一致问题

使用SSE解决获取状态不一致问题 1. 问题描述2. SSE介绍2.1 SSE 的工作原理2.2 SSE 的事件格式规范2.3 SSE与其他技术对比2.4 SSE 的优缺点 3. 实战代码 1. 问题描述 目前做的一个功能是上传多个文件&#xff0c;这个上传文件是整体功能的一部分&#xff0c;文件在上传的过程中…...

数据结构第5章:树和二叉树完全指南(自整理详细图文笔记)

名人说&#xff1a;莫道桑榆晚&#xff0c;为霞尚满天。——刘禹锡&#xff08;刘梦得&#xff0c;诗豪&#xff09; 原创笔记&#xff1a;Code_流苏(CSDN)&#xff08;一个喜欢古诗词和编程的Coder&#x1f60a;&#xff09; 上一篇&#xff1a;《数据结构第4章 数组和广义表》…...

Pandas 可视化集成:数据科学家的高效绘图指南

为什么选择 Pandas 进行数据可视化&#xff1f; 在数据科学和分析领域&#xff0c;可视化是理解数据、发现模式和传达见解的关键步骤。Python 生态系统提供了多种可视化工具&#xff0c;如 Matplotlib、Seaborn、Plotly 等&#xff0c;但 Pandas 内置的可视化功能因其与数据结…...

npm install 相关命令

npm install 相关命令 基本安装命令 # 安装 package.json 中列出的所有依赖 npm install npm i # 简写形式# 安装特定包 npm install <package-name># 安装特定版本 npm install <package-name><version>依赖类型选项 # 安装为生产依赖&#xff08;默认&…...

python学习day39

图像数据与显存 知识点回顾 1.图像数据的格式&#xff1a;灰度和彩色数据 2.模型的定义 3.显存占用的4种地方 a.模型参数梯度参数 b.优化器参数 c.数据批量所占显存 d.神经元输出中间状态 4.batchisize和训练的关系 import torch import torchvision import torch.nn as nn imp…...