【DevChat】智能编程助手,告别敲代码烦恼,从此爱上AI编程

2023-11-06 02:44

本文主要是介绍【DevChat】智能编程助手,告别敲代码烦恼,从此爱上AI编程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

🔎官方网站:https://www.devchat.ai/

文章目录

    • 一、DevChat介绍👇
    • 二、DevChat优势🪁
    • 三、DevChat注册流程篇🎀
    • 四、DevChat使用教程篇📢
      • 1. DevChat插件安装配置⚒️
      • 2. 与DevChat问答交流🔣
      • 3. DevChat辅助代码开发🕹️
    • 五、DevChat体验心得🎇
    • 六、参考链接⚙️

一、DevChat介绍👇

DevChat 是一个开源平台,使开发人员能够利用 AI 进行代码生成和文档编制。DevChat 旨在超越简单的代码自动完成和对代码片段的有限操作。DevChat 为开发人员提供了一种非常实用有效的方式来与大型语言模型 (LLM) 进行交互和协作。

DevChat 智能编程助手,让开发更轻松!告别脏活累活,做更有价值的工作。

image-20231103222705131

助企业团队效能提升30%

人人写出优质代码,让反人性的工程规范真正落地

Devchat3

DevChat做最务实好用的智能编程工具,不做AI试验品

image-20231105114522384

二、DevChat优势🪁

image-20231105114359365

  • 众多大模型任意挑选

image-20231105145552673

  • 利用 AI 的编码能力的瓶颈在于如何在提示中嵌入正确的上下文

出色的输出需要出色的输入。为了最大限度地发挥 AI 的力量,DevChat 可无缝地帮助您为 AI 提供正确的上下文

  • 提示扩展

DevChat 利用目录来管理预定义的提示模板。您可以使用文本编辑器轻松添加自己的或修改现有的。 默认情况下,该目录已命名并位于主目录的文件夹中

三、DevChat注册流程篇🎀

搜索🔍:https://www.devchat.ai/


点击页面中免费注册

image-20231103224249077

在此页面中,输入用户名(自定义)、邮箱,完成验证后,点击Sign Up

image-20231103224505091

注册成功,在右上角会有弹窗提示,提示检查收件邮箱,有发送access key。如下图所示。

image-20231103224607340
image-20231103224758908

收到带有access key的邮件。

接着,在登录界面,输入完登录邮箱之后,会收到带有验证码的邮件。

image-20231103224906229

输入验证码,即可完成登录。

image-20231103225029122

页面跳转到这里,这里展示个人相关信息。

image-20231103225202691

至此,DevChat注册完成。

四、DevChat使用教程篇📢

1. DevChat插件安装配置⚒️

  • 安装依赖软件
PS C:\Users\xyb> git --version
git version 2.40.1.windows.1
  • 安装插件

打开VSCode扩展,输入devchat,点击安装。如下图所示。

image-20231104203036595

DevChat安装完成。

image-20231104203502436

  • 设置Access Key

获得 access key,完整复制粘贴到 VS Code 中,点击左下角管理(“齿轮”图标)—命令面板(Command Palette),如下图所示:

image-20231104203927249

在弹出的命令面板中输入“devchat key”,点击如下命令:

image-20231104204026480

输入密钥,敲击Enter确认。

image-20231104204155269

2. 与DevChat问答交流🔣

让DevChat介绍一下Golang并发机制。

image-20231104211441506

给DevChat以下自然语言要求:

请列出世界上排名前五的语言,以及用户使用数量,性能、上手难度等几个维度给出解答,使用markdown表格(包裹在markdown和之间)列出来。

image-20231104213336169

排名语言大致用户数量性能上手难度
1Python容易
2Java非常高中等
3JavaScript非常高容易
4C#中等到困难
5PHP容易

当我想要生成个一个CloudFormation的配置模板出来,我表达了我的创建要求:

我需要一台AWS EC2 实例用于部署堡垒机,这台实例的要求是:

  1. 系统是Amazon Linux 2 ;
  2. 规格不小于:2 CPU cores, 4 GB memory, and 40 GB disk space;
  3. 所有端口都可以从公网访问;
  4. 该堡垒机所在的区域是日本东京ap-northeast-1

已知云主机的密钥对已创建并保存好,请给出创建这台 EC2 实例对应的 cloudformation 配置模板,以yaml形式展现出来。

  • DevChat也能帮我实现出来。

image-20231105152336342

3. DevChat辅助代码开发🕹️

编写python代码,实现上传本地文件到AWS S3存储桶中的功能。

DevChat给出的代码如下:

import boto3
from botocore.exceptions import NoCredentialsError# AWS中的access credentials
AWS_ACCESS_KEY_ID = 'YOUR-ACCESSKEY'
AWS_SECRET_ACCESS_KEY = 'YOUR-SecretKey'def upload_to_aws_s3(local_file: str, bucket: str, s3_file: str):try:s3 = boto3.client('s3', aws_access_key_id=AWS_ACCESS_KEY_ID,aws_secret_access_key=AWS_SECRET_ACCESS_KEY)s3.upload_file(local_file, bucket, s3_file)print("Upload Successful")return Trueexcept FileNotFoundError:print("The file was not found")return Falseexcept NoCredentialsError:print("Credentials not available")return Falsebucket_name = 'Your AWS S3 bucket name'
local_filename = 'Local file path which needs to be uploaded'
s3_filename = 'The name of the file you want to save to AWS S3'upload_to_aws_s3(local_filename, bucket_name, s3_filename)

我们替换好AWS访问密钥和秘密键相关信息,把 bucket_name, local_filename 和 s3_filename 替换为自己的S3存储桶名称,本地文件路径和想要保存到AWS S3的文件名。之后运行此代码,上传成功!🎉

image-20231105001443947

接着,我们来到AWS S3管理控制台,进行确认。大功告成!

image-20231105001528894
接下来,我们换个编程语言来试试,DevChat是否能够为我们完成相同的操作呢?


编写Go语言代码,实现上传本地文件到AWS S3存储桶中的功能。

DevChat给出的代码如下:

package mainimport ("log""os""github.com/aws/aws-sdk-go/aws""github.com/aws/aws-sdk-go/aws/session""github.com/aws/aws-sdk-go/service/s3/s3manager"
)const (region          = "ap-northeast-1"bucketName      = "xybawsbucket"localFilePath   = "C:/Users/xyb/index.html"s3UploadKeyPath = "index.html"
)func main() {// 创建一个aws会话,默认它将从您的~/.aws目录提取凭证sess, err := session.NewSession(&aws.Config{Region: aws.String(region)})if err != nil {log.Fatalf("Failed to create session, %v", err)}file, err := os.Open(localFilePath)if err != nil {log.Fatalf("Failed to open file %q, %v", err)}defer file.Close()uploader := s3manager.NewUploader(sess)result, err := uploader.Upload(&s3manager.UploadInput{Bucket: aws.String(bucketName),Key:    aws.String(s3UploadKeyPath),Body:   file,})if err != nil {log.Fatalf("failed to upload file, %v", err)}log.Printf("file uploaded to, %s\n", result.Location)
}

接着,我们来到AWS S3管理控制台,再次进行确认。发现本地的index.html文件已经成功上传到S3指定的存储桶中,大功告成!

image-20231105143831412

在与DevChat极度“掰扯”之下,DevChat终于帮我实现了我想要的功能,编写编译出可执行且无报错的代码程序,赞!🎆

Devchat4

与DevChat持续交流,抛出不懂的问题或报错,DevChat即可给出相关答案与解释

五、DevChat体验心得🎇

  • DevChat可以帮助开发者在困惑或者遇到困难时更准确地找到问题的答案,从而提升开发效率。
  • DevChat的实时互动性能带来便利的技术帮助,特别是在敲代码或者debug的过程中。
  • 对于一些基本或者常见的问题,DevChat能够提供直接且准确的答案,适合初学者快速入门和进阶。
  • DevChat能理解复杂的问题并提供有参考价值的答案,对于有经验的开发者也很有帮助。
  • 有时候,DevChat也可能无法理解或者答对一些特别复杂或者领域深入的问题,但通常也会给出一些相关的建议和链接。

总之,DevChat是一款值得快快入手的智能编程助手,它能够使开发人员利用 AI 进行代码生成和文档编制。快来和我一起体验吧~

六、参考链接⚙️

[1] https://bbs.csdn.net/topics/617476387

[2] https://www.devchat.ai/

[3] https://blog.csdn.net/simayi2018/article/details/131245790

[4] https://zh.devchat.blog/devchat-vscode-installation-guide

[5] https://github.com/devchat-ai/devchat

这篇关于【DevChat】智能编程助手,告别敲代码烦恼,从此爱上AI编程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

使用Python和PaddleOCR实现图文识别的代码和步骤

《使用Python和PaddleOCR实现图文识别的代码和步骤》在当今数字化时代,图文识别技术的应用越来越广泛,如文档数字化、信息提取等,PaddleOCR是百度开源的一款强大的OCR工具包,它集成了... 目录一、引言二、环境准备2.1 安装 python2.2 安装 PaddlePaddle2.3 安装

SpringBoot中四种AOP实战应用场景及代码实现

《SpringBoot中四种AOP实战应用场景及代码实现》面向切面编程(AOP)是Spring框架的核心功能之一,它通过预编译和运行期动态代理实现程序功能的统一维护,在SpringBoot应用中,AO... 目录引言场景一:日志记录与性能监控业务需求实现方案使用示例扩展:MDC实现请求跟踪场景二:权限控制与

基于Python打造一个智能单词管理神器

《基于Python打造一个智能单词管理神器》这篇文章主要为大家详细介绍了如何使用Python打造一个智能单词管理神器,从查询到导出的一站式解决,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. 项目概述:为什么需要这个工具2. 环境搭建与快速入门2.1 环境要求2.2 首次运行配置3. 核心功能使用指

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.

利用Python调试串口的示例代码

《利用Python调试串口的示例代码》在嵌入式开发、物联网设备调试过程中,串口通信是最基础的调试手段本文将带你用Python+ttkbootstrap打造一款高颜值、多功能的串口调试助手,需要的可以了... 目录概述:为什么需要专业的串口调试工具项目架构设计1.1 技术栈选型1.2 关键类说明1.3 线程模

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

Java的栈与队列实现代码解析

《Java的栈与队列实现代码解析》栈是常见的线性数据结构,栈的特点是以先进后出的形式,后进先出,先进后出,分为栈底和栈顶,栈应用于内存的分配,表达式求值,存储临时的数据和方法的调用等,本文给大家介绍J... 目录栈的概念(Stack)栈的实现代码队列(Queue)模拟实现队列(双链表实现)循环队列(循环数组

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

C++使用printf语句实现进制转换的示例代码

《C++使用printf语句实现进制转换的示例代码》在C语言中,printf函数可以直接实现部分进制转换功能,通过格式说明符(formatspecifier)快速输出不同进制的数值,下面给大家分享C+... 目录一、printf 原生支持的进制转换1. 十进制、八进制、十六进制转换2. 显示进制前缀3. 指