当前位置: 首页 > 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…...

JavaScript 中的 ES|QL:利用 Apache Arrow 工具

作者&#xff1a;来自 Elastic Jeffrey Rengifo 学习如何将 ES|QL 与 JavaScript 的 Apache Arrow 客户端工具一起使用。 想获得 Elastic 认证吗&#xff1f;了解下一期 Elasticsearch Engineer 培训的时间吧&#xff01; Elasticsearch 拥有众多新功能&#xff0c;助你为自己…...

练习(含atoi的模拟实现,自定义类型等练习)

一、结构体大小的计算及位段 &#xff08;结构体大小计算及位段 详解请看&#xff1a;自定义类型&#xff1a;结构体进阶-CSDN博客&#xff09; 1.在32位系统环境&#xff0c;编译选项为4字节对齐&#xff0c;那么sizeof(A)和sizeof(B)是多少&#xff1f; #pragma pack(4)st…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

Cloudflare 从 Nginx 到 Pingora:性能、效率与安全的全面升级

在互联网的快速发展中&#xff0c;高性能、高效率和高安全性的网络服务成为了各大互联网基础设施提供商的核心追求。Cloudflare 作为全球领先的互联网安全和基础设施公司&#xff0c;近期做出了一个重大技术决策&#xff1a;弃用长期使用的 Nginx&#xff0c;转而采用其内部开发…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

音视频——I2S 协议详解

I2S 协议详解 I2S (Inter-IC Sound) 协议是一种串行总线协议&#xff0c;专门用于在数字音频设备之间传输数字音频数据。它由飞利浦&#xff08;Philips&#xff09;公司开发&#xff0c;以其简单、高效和广泛的兼容性而闻名。 1. 信号线 I2S 协议通常使用三根或四根信号线&a…...

jmeter聚合报告中参数详解

sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample&#xff08;样本数&#xff09; 表示测试中发送的请求数量&#xff0c;即测试执行了多少次请求。 单位&#xff0c;以个或者次数表示。 示例&#xff1a;…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析&#xff0c;分为​​已启动​​和​​未启动​​两种场景&#xff1a; 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​&#xff1a;当其他组件&#xff08;如Activity、Service&#xff09;通过ContentR…...

android RelativeLayout布局

<?xml version"1.0" encoding"utf-8"?> <RelativeLayout xmlns:android"http://schemas.android.com/apk/res/android"android:layout_width"match_parent"android:layout_height"match_parent"android:gravity&…...

Modbus RTU与Modbus TCP详解指南

目录 1. Modbus协议基础 1.1 什么是Modbus? 1.2 Modbus协议历史 1.3 Modbus协议族 1.4 Modbus通信模型 🎭 主从架构 🔄 请求响应模式 2. Modbus RTU详解 2.1 RTU是什么? 2.2 RTU物理层 🔌 连接方式 ⚡ 通信参数 2.3 RTU数据帧格式 📦 帧结构详解 🔍…...