AI编程助手 Kodezi : 记录、分享一个 VS code 插件

news2024/11/20 23:30:02

在这里插入图片描述



目录

  • 0. 概述
  • 1. 安装 / 功能介绍
    • 1.1 安装
    • 1.2 功能介绍
      • 1.2.1 Debug
      • 1.2.2 代码优化
      • 1.2.3 代码转换
      • 1.2.4 逐行注释
      • 1.2.5 多行注释
      • 1.2.6 生成文档
      • 1.2.7 生成代码
  • 2. KodeziChat 聊天机器人
    • 2.1 聊天机器人功能介绍
    • 2.2 如何使用 KodeziChat ?
  • 3. Kodezi 版本介绍
    • 3.1 免费版
    • 3.2 专业版
    • 3.3 团队版
  • 4. 结语
  • 5. 附:注册方式



0. 概述

了解 Kodezi!
Kodezi 是一个 AI 开发平台,它提供的功能可以最大限度地提高编程效率。
Kodezi 使用大参数语言模型,这些模型是在来自各种开源场所的自然语言和编程语言集合上训练的;

  1. 使用详细信息自动调试代码;
  2. 根据上下文优化您的代码;
  3. 将代码从一种编程语言转换为另一种编程语言;
  4. 为您的代码生成文档;
  5. 从自然语言指令生成代码;
  6. Kodezi Chatbot 程序员的首选聊天机器人。

在这里插入图片描述



1. 安装 / 功能介绍

1.1 安装

  • Kodezi 可以在VScode 商店中找到并安装,安装完后,可在 vscode 侧边栏中找到,如图:

在这里插入图片描述
并进行登录
在这里插入图片描述
注册登录后,即为免费版用户,默认 50学分/月 供功能使用扣除,每使用一次扣 2 分。
官方推荐用谷歌邮箱登录(不需额外注册和验证,直接登录)

Kodezi 插件支持在 WindowsLinux、以及macOS. 系统上的安装>



1.2 功能介绍

  • Kodezi 有7 种具有特殊特性的不同功能,包括调试/自我纠正、优化、转换等等。
    Kodezi 提供了直观的用户界面和直接的功能,能够方便快速的获得结果。

1.2.1 Debug

Kodezi 使用 AI 来理解代码的上下文,并相应地进行修复。linter用于检测任何逻辑或语法问题并突出显示这些问题。可以通过单击、逐行甚至逐字逐句来纠正每个问题。

  • 如何使用 Debug
    要使得调试功能正常工作,AI 需要接收足够多的代码,以理解代码的上下文、并相应地进行修复。应使用函数、类和变量的描述性名称。这种命名可以帮助 AI 能理解上下文并提供有效的解决方案。
    1)步骤一:登录 Kodez
    2)验证登录成功后,点击 Debugging 按钮 ,如下图:
    在这里插入图片描述

    或在代码编辑区中,右键单击并选择 Debugging 命令按钮,如下图:
    在这里插入图片描述

    注:Kodez 不支持太长的代码段,如果提示过长,请重新选择一段代码


    3)步骤三:调试完成后,可见类似如下结果:
    在这里插入图片描述

    Debug之前,建议备份原文件,因为在您点击 fix all issue 按钮之后,原代码将被修改并自动保存 —— 当然,你也可以选择 Ctrl + ”z“ 来撤销修改。

    Tip:
    AI 的主要目的是确保你的代码能够被编译。因此,如果你使用 Debug 功能,但是代码不完整,AI 会尝试补充完成代码,以便进行编译。由于编译代码不需要注释,所以如果代码中有注释,那么注释可能会被删除。尝试输入独立的、可以编译的代码。

    下面是用于 Debug 的正确代码和错误代码示例;

    A. 正确的代码

    在这里插入图片描述
    上下文中完整,存在在其他函数中使用的函数,因此 AI 不会试图生成它来使代码可编译。



    B. 错误的代码:

    在这里插入图片描述
    上下文中不完整,正在使用的函数没有在作用域中声明,因此 AI 将尝试解决此问题,当 Debug 的代码集成回原始管道时,会中断代码流。

1.2.2 代码优化

Kodezi 会通过减少代码量、消除间隙和不必要的行来优化您的代码。它还会通过减少资源(如CPU、内存)消耗来改进中间代码,从而加快机器代码的运行速度。

优化功能主要针对循环展开、指令调度、寄存器分配和死代码消除。

1)步骤一:点击侧边栏 Optmizing 按钮 或 代码编辑区中右键菜单中 点击 Optmizing 菜单项命令执行优化,如图:

在这里插入图片描述

目前不支持同时优化大量代码,建议选择一个特定代码块进行优化


2)步骤二: 优化完成后,点击 apply 按钮提交即可

在这里插入图片描述



1.2.3 代码转换


Kodezi AI 可以轻松地将代码做语言转换,并能同时保留源代码的结构、变量和注释。

对于任何使用不同语言工作或学习的开发人员来说都是很有帮助的。它会分析您的代码,然后构建一个翻译模型,并将其转换为所需的语言(目前,支持30种编程语言)。

1)步骤一:点击翻译按钮
在这里插入图片描述
2)步骤二:
在 翻译窗体界面中,
1个语言框显示当前语言,该语言固定无法更改;
2语言框,允许选择要将当前程序翻译成的目标语言。然后单击 “Translating”(翻译 / 转换)按钮。
在这里插入图片描述

同样,它不支持对非常大代码段的转换



3)步骤3:翻译完成后的类似结果如下:
在这里插入图片描述
4)步骤4:保存

单击 “Apply” 按钮创建一个单独的 “Translate Code” 文件夹,并将名为 “Translate” 和当前文件保存在与原始代码相同的工作空间中。

Tip:
此模型是在多种语言上训练的,能从一种语言转换到另一种语言,但主要的限制是语言本身,僻如面向对象的语言无法转换为标记语言(如JavaScriptHTML)。另外,有些语言的内置函数非常丰富(例如 Python),因此在转换为其他语言时,需要交换这些函数。



1.2.4 逐行注释


在每一行代码的末尾,Kodezi 可以自动注释代码。这可以为任何编写代码的人节省大量时间,从而无需编写注释。

对于学生来说,准确地理解每段代码在做什么是很有帮助的,尤其是当代码是新的和不熟悉的时候。

1)步骤一:登录,并找到 Generate Documentation 按钮:
在这里插入图片描述

2)步骤二:在进入生成注释的 UI 窗口后。选择 Line By Line Commenting (逐行注释),然后单击 Generate (生成)按钮。
在这里插入图片描述

3)步骤四:保存

点击 Apply 按钮保存生成的注释

在这里插入图片描述
,


1.2.5 多行注释


Kodezi AI 会通过读取一段代码来确定代码的意图。在代码段的开头,它会提供多行注释,说明代码在运行和执行不同的代码行时将要做什么。

代码注释功能适用于30种语言,可智能地将注释添加为多行或单行注释。除了可以并排观察代码及其注释,也可以导出它来。

1)步骤一:登录后,找到并单击 Generate Documentation 按钮:

在这里插入图片描述

2)步骤二:在弹出的 ui 界面中,单击 Code Summary 按钮 后,再点击Generate生成按钮。

在这里插入图片描述

3)步骤三:保存多行注释

在IDE结果中,可看到类似如下的结果:

在这里插入图片描述
4)步骤四: 点击 Apply 应用保存



1.2.6 生成文档

它识别每个代码块,包括子块和父块,然后 Kodezi 将根据块解释代码。如果代码块是父块,它还会解释父块和子块的任何相关事实,然后再全面解释。

Docstring 生成器可以帮您用专业和标准化的方式记录代码。
目前它支持PythonJavaJavaScriptCC++C#。如果您忘了为您的代码编写文档,那这个功能正好能为您处理好这件事。

1)步骤一:成功登录后,单击 “Generate Documentation” 按钮。

在这里插入图片描述

2)步骤二:在Generate Documentation 功能项中,选择 Docstring 项,然后单击 Generate 按钮。

在这里插入图片描述

3)步骤三:点击 Apply 保存应用:

在这里插入图片描述



1.2.7 生成代码


此功能可以生成复杂的代码,以响应用户输入的指令或自然语言伪代码。但是,生成的代码的质量取决于用户指令的准确性。

为了有效地生成代码,指令应完整描述您的意图。试着一步一步地解释每一细节 —— 如果可以的话,甚至是变量的名称。

1)步骤一:成功登录后,点击 Generate Code (生成代码)按钮

在这里插入图片描述

2)步骤二

进入生成代码界面后,在文本区域中填写说明。然后选择您的编程语言。接下来单击Generate按钮开始生成代码的过程。

示例:“编写斐波那契数列的程序。”

在这里插入图片描述
生成结束后的类似结果:
在这里插入图片描述

3)步骤三

单击Apply按钮,创建一个单独的文件夹“GeneratedCode”,并将名为“GeneratedCode”和当前文件保存在与原始代码相同的工作区中。

Tip:
如果你能有效地描述你想要什么,它就能为你生成。此功能适用于那些知道自己想在编程中做什么但需要语法帮助的人。像斐波那契或阶乘这样的著名问题将在没有冗长例子的情况下生成,但需要从算法角度解释鲜为人知的问题,这样AI才能为它们生成代码。把这看作是代码生成的自然语言。



2. KodeziChat 聊天机器人

2.1 聊天机器人功能介绍

此面向程序员的聊天机器人,主要是为开发人员提供无缝直观的用户体验。它采用了最新的尖端技术和先进的算法,为您的所有编程需求提供最高效的解决方案。

在侧边栏中部,找到 KodeziChat ,点击打开聊天窗口即可开始聊天和提问。

在这里插入图片描述



功能列表:

  • A. 自然语言处理(NLP)功能

    开发人员能以很自然的方式与聊天机器人进行通信,就像在与另一个人聊天一样。

在这里插入图片描述

  • B. 即时访问信息

    聊天机器人可以与知识数据库网络集成,为开发人员提供实时信息和资源,帮助他们完成项目。

在这里插入图片描述

C. 修改化推荐

聊天机器人可以用机器学习算法,来建议专门针对用户需求和偏好定制的工具、库和其他资源。

在这里插入图片描述

D. 调试帮助

聊天机器人可以提供如何对代码进行故障排除和调试应用程序的指导,为开发人员节省时间并提高生产力。

在这里插入图片描述

E. 代码片段和示例

聊天机器人可以为特定的编程语言、库和框架提供代码片段和例子,使开发人员更容易快速实现解决方案。

在这里插入图片描述

F. 社区支持

聊天机器人可以与论坛和社区集成,使开发人员能够与同行建立联系,共享知识,并在项目上进行协作。

在这里插入图片描述

G. 多平台支持

聊天机器人可以从各种平台访问,包括桌面、移动和网络,无论开发者喜欢什么设备或操作系统,都可以方便地使用。

在这里插入图片描述

H. 搜索文件

聊天机器人还集成了一种复杂的算法,使用户能够解析大型代码库,找到函数、类、API调用等。

在这里插入图片描述

I. 代码转换

如前所述,聊天机器人除了能够帮你找到代码,它也可以通过简单的自然语言指令转换代码。

在这里插入图片描述



2.2 如何使用 KodeziChat ?

  • 熟悉聊天机器人的功能:
    在使用聊天机器人之前,花一些时间了解它能做什么以及能提供什么样的信息( 可以通过了解菜单选项,阅读文档,或者简单地问机器人它能做什么)。

  • 使用清晰简洁的语言:
    在与机器人互动时,一定要使用清晰简洁的语言,以确保您的请求得到理解。这样能使机器人更快、更准确地提供给机器人所需的信息。

  • 具体处理您的请求:
    当向机器人程序询问信息时,尽可能具体。以使机器人更准确了解您的需求,并为您提供最相关的信息;

  • 利用聊天机器人的过滤和搜索功能
    聊天机器人具有过滤和搜索能力,使您能够缩小搜索结果范围,更快地找到所需信息。一定要利用这些功能来最大限度地发挥机器人的作用。

  • 给机器人时间回应:
    聊天机器人可能需要几秒钟的时间来处理你的请求并收集你需要的信息。过程中需耐心等待,让机器人在您提出额外请求之前完成任务。





3. Kodezi 版本介绍

Kodezi 提供三种不同的级别:免费版专业版团队版

3.1 免费版


免费版,是在付费使用 Kodezi 之前试用它的方式。注册后每个人将获得50个积分,每个月都会续订。免费版有一些限制,例如只能访问基本的机器学习模型,仅适用于10种语言,并且使用的每个功能都比其他两层消耗更多的学分。例如,在免费版中,代码生成功能花费2个积分,而在专业版中,编码生成功能只耗费1个积分。

3.2 专业版


Kodezi Pro 起价仅为每月$6.99美元/月($70美元/年),可获得8000个学分。Kodezi Pro允许用户访问所有支持的编程语言,并在没有任何限制的情况下使用所有可用的功能。在 Kodezi Pro 中使用每个 Kodezi 功能的费用为每个使用的功能1个积分。Kodezi Pro 用户还可以针对每个功能使用更好的 ML模型。

3.3 团队版


要使用 Kodezi 团队版,需联系 sales@kodezi.com.Kodezi (提供30多种支持语言的无限学分)。

学分 是根据工具版本级别进行分配的。免费版为每月 50 分。



4. 结语

在 人工智能快速发展的今天,这确实是比较冒尖、值得尝试的一个工具,它与 vs code 高度集成,功能强大,对日常代码编写、调试、优化,提升效率等方面,带来了革命性的变革。

AI 来了,未来已来,您准备好了吗?!



5. 附:注册方式


官方注册地址:https://kodezi.com/642cd520860eec4a7589fa13

立即注册,可获得 5% 的折扣



在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【2023年第十一届泰迪杯数据挖掘挑战赛】C题:泰迪内推平台招聘与求职双向推荐系统构建 建模及python代码详解 问题三

相关链接 【2023年第十一届泰迪杯数据挖掘挑战赛】C题泰迪内推平台招聘与求职双向推荐系统构建 建模及python代码详解 问题一 【2023年第十一届泰迪杯数据挖掘挑战赛】C题泰迪内推平台招聘与求职双向推荐系统构建 建模及python代码详解 问题二 【2023年第十一届泰迪杯数据挖…

【软件应用】TamperMonkey同步操作

不废话,记录一些关键点 要设置同步,先得打开高级设置模式 众所周知,这里可以设置同步,建议设置为WebDAV同步,这样通用性更强 至于选择啥网盘就看自己的需求了,支持WebDAV的网盘还是很多的,甚…

数据库设计案例

一个专辑可以包含多个曲目,一个曲目只能属于一个专辑 一对多 一个专辑可以包含多条短评,一条短语只能属于一个专辑 一对多 一个用户可以包含多条短评,一个短评只能属于一个用户 一对多 一个专辑可以属于多个用户,一个用户…

04-vue3侦听器

文章目录1.watch1.侦听数据源类型2.demo2.watchEffect函数3.watch vs. watchEffect1.watch 计算属性允许我们声明性地计算衍生值。然而在有些情况下,我们需要在状态变化时执行一些“副作用”:例如更改 DOM,或是根据异步操作的结果去修改另一…

熬大夜~ 阿里P8架构师总结微服务设计企业架构转型之道笔记

前言 本文涉及两个方面的知识体系,即企业架构知识体系和软件架构知识体系。 企业架构和软件架构虽然都与IT相关,但其知识体系是完全不同的两个领域。一般而言,搞企业架构的人士不明白软件架构的细节和实现,而从事软件架构的架构…

如何评价一款RTK差分基站的性能?

RTK是Real-Time Kinematic(实时动态)的缩写,是一种利用载波相位观测进行实时动态相对定位的技术,它能够实时提供测站点在指定坐标系中的三维定位结果,并达到厘米级精度。国内有时也将利用RTK技术为卫星定位设备提供厘米级修正服务的RTK基站简…

114. 二叉树展开为链表 Python

文章目录一、题目描述示例 1示例 2示例 3二、代码三、解题思路一、题目描述 给你二叉树的根结点 root ,请你将它展开为一个单链表: 展开后的单链表应该同样使用 TreeNode ,其中 right 子指针指向链表中下一个结点,而左子指针始终…

基于jsp的公交查询系统源码数据库论文

目录 摘 要 1 Abstract 1 1 绪论 1 1.1 选题背景 1 1.2 国内外发展状况 1 1.3 选题的目的 1 1.4 研究手段及意义 1 2相关技术简介 3 2.1Jsp技术介绍 3 2.2 MyEclipse简介 4 2.3 数据库技术 4 2.3.1 数据库的体系结构 4 2.3.2 数据库管理系统(D…

(十七)排序算法-基数排序

1 基本介绍 1.1 概述 (1)基数排序(radix sort)属于“分配式排序”,顾名思义,它是通过键值的各个位的值,将要排序的元素分配至某些“桶”中,达到排序的作用。 (2&#x…

Denoising Diffusion Probabilistic Model,DDPM阅读笔记——(一)

Denoising Diffusion Probabilistic Model一、写在前面二、相关数学知识简介二、生成模型简介:三、变分自编码器概述(VAE)一、写在前面 人工智能生成内容(AI Generated Content,AIGC)近年来成为了非常前沿…

2023最新面试题-Java-2

基础语法 1. Java有哪些数据类型 定义:Java语言是强类型语言,对于每一种数据都定义了明确的具体的数据类型,在内存中分配了不同 大小的内存空间。 细化的数据类型就是占用空间的基本元素。分类:基本数据类型 数值型 整数类型…

MySQL-事务处理

MySQL事务 什么是事务 数据中的事务是指数据库执行的一些操作,这些操作最终要么全部执行成功,要么全部失败,不会存在部分成功,部分失败的情况 如果在事务的支持下,最终有两种结果: 操作成功:…

推荐一款 AI 脑图软件,助你神速提高知识体系搭建

觅得一款神器,接近我理想中,搭建知识体系的方法,先来看视频作为数据库开发或管理者,知识体系搭建尤为重要。来看看近些年缺乏足够数据库知识面造成的危害:a/ 数据安全风险:例如,2017年Equifax数…

Dubbo之认识RPC架构

文章目录一、互联网架构演变1.1 RPC架构1.2 SOA架构1.3 微服务架构1.4 SOA vs 微服务二、RPC 基本概念2.1 RPC 协议2.2 RPC 框架2.3 RPC 运行流程2.4 RPC vs HTTP提示:以下是本篇文章正文内容,Dubbo 系列学习将会持续更新 官方文档:https://c…

电池连接接触电阻的优化研究

金属与金属接触处的接触电阻主要受以下因素影响: 表面结构机械负载 表面结构可以通过表面平整度、表面氧化和吸水性进一步描述。 电池组中的这些接头将采用焊接或螺栓连接方式。最初最容易想到的是螺栓母线接头。 螺栓扭矩可用于估算力,从而估算接触压…

mvc的编辑和删除

之前实现了mvs的翻页登录显示等等一系列操作,现在我们再照葫芦画瓢实现一下编辑和删除。 1、编辑 我的思路是首先在list页面要给出编辑的超链接按钮,点击后跳转到一个jsp页面用来输入编辑的相关内容,再提交到负责编辑功能的servlet中。 首…

双硬盘安装Ubuntu22

1、下载Ubuntu系统的iso文件 官方下载地址:Download Ubuntu Desktop | Download | Ubuntu 阿里云镜像下载地址:ubuntu-releases安装包下载_开源镜像站-阿里云 2、制作U盘引导盘 下载软件 Rufus:https://rufus.akeo.ie 绿色免安装&#xff0…

Spring Security源码剖析从入门到精通.跟学尚硅谷(二)

Spring Security源码剖析从入门到精通.跟学尚硅谷 二4. SpringSecurity 微服务权限方案4.1 什么是微服务1、微服务由来2、微服务优势3、微服务本质4.2 微服务认证与授权实现思路1、认证授权过程分析2、权限管理数据模型3、项目技术说明4、搭建工程(1).创建父工程(2).创建子模块…

2023年天猫青团销售数据:口味更个性化,但老字号品牌依然称霸

青团本是清明时节祭祀的产物,但随着时节的推移,青团已经突破了地域与时间的限制,如今的青团已经成为地域性特色小吃的一种,并逐渐被全国消费者所接受。 随着消费回暖及内容营销的助力,今年的青团季比往年相比提高了不少…

天气预报查询 API + AI 等于王炸(一大波你未曾设想的天气预报查询 API 应用场景更新了)

前言 近年来,随着信息化进程的不断深入,人们对于信息的获取和处理需求越来越高。而其中,天气查询API是一个非常重要的服务,它能够帮助人们快速获取所在位置的天气情况,同时也为各类应用提供了必要的气象数据支持。 本…