代码补全_AI加持,Kite增加智能代码补全功能:减少一半操作,实时补全

代码补全工具 Kite 近日更新了最新的版本,增加了名为「Intelligent Snippets」的新功能。这一功能可以帮助开发者更为智能和高效的补全 Python 代码中的函数命令了。

机器之心报道,机器之心编辑部。

Kite 是一个著名的 Python 代码补全工具,支持在一些 IDE 上作为插件,帮助开发者提升代码效率。近日,Kite 官方宣布将会增加「Intelligent Snippets」功能。据官方表示,这一工具可以帮助开发者补全复杂的、多字符的代码,而且代码的生成几乎是实时的。

Intelligent Snippets 有什么特性

Kite 本身就是一种代码补全工具。在版本更新前,它只能按照规则或检索的方式,帮助用户补全忘记了名称的函数。官方认为,这不是最优的解决方案。

在 9 月 5 日发布了新版本后,新加入的 Intelligent Snippets 能帮助代码补全最初更合理的预测。简单总结一番,Kite 最新构建的 Intelligent Snippets 主要有以下特性:

  • 支持大部分的编辑器:Atom、PyCharm/IntelliJ、Sublime Text、VS Code 和 Vim;
  • 支持全局和局部函数补全;
  • 通过 Intelligent Snippets 调用函数,用户只需要一半的击键操作。

如果读者想要试试这种免费的代码补全工具,可以直接下载插件:https://kite.com/download/。

Intelligent Snippets 可以解决什么问题

传统上,我们可以创建一些代码块,然后在需要的时候直接调用并修改这个片段。一般而言,这种代码块都是开发者事前手动定义的,它们都是静态的,并不会随着开发者的编写过程而改变。因此,模板式的代码块限制了代码模式的多样性。

例如在下面动图中,开发者使用代码块来插入定义函数的主要结构,然后再修改参数与子语句完成特定的函数。

6ac3ad01e1f55399447b03ec53dab1a3.gif

Kite 的 Intelligent Snippets 引擎能根据我们正在使用的代码动态地生成代码片段,它能自动地检查我们代码库中最一般的模式,并建议我们在写代码时使用这些模式。下面的动图展示了这一新特性,它会预测一些常用的编程模式。

9d3bd3fbd778551d9e48e610ff15f07d.gif

如何构建 Intelligent Snippets

Intelligent Snippets 建立在 Kite 代码补全核心代码引擎之上。首先,kite 会索引你的代码库,学习函数常用方式。然后,在你调用函数时,Kite 建议该函数的代码段从而轻松补全。Kite 的自动补全依然为每个参数建议补充代码。

Intelligent Snippets 不只是节省了敲代码的时间,也能减少你查阅文档的次数。

支持全局与局部函数

下面的动图展示了开发者使用 Intelligent Snippets 快速调用 requests.post:

08244f01946510ae6b729b7fffedf373.gif

Intelligent Snippets 也支持自己定义的函数,如以下动图所示:

500cdc3b6fadd4a5529baf3a9ccf90e2.gif

官方表示,他们希望 Kite 能够在未来成为开发者和 AI 加持的代码工具的交互基石。他们希望 intelligent snippets 可以在补全函数命令之外有更多应用,比如补全 try/except 的代码块或者单元测试样例。

参考链接:https://kite.com/blog/product/announcing-intelligent-snippets-for-python/

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

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

相关文章

Linux workqueue工作原理

1. 什么是workqueue Linux中的Workqueue机制就是为了简化内核线程的创建。通过调用workqueue的接口就能创建内核线程。并且可以根据当前系统CPU的个数创建线程的数量,使得线程处理的事务能够并行化。workqueue是内核中实现简单而有效的机制,他显然…

微信获取token服务器处理,微信硬件平台(九) 自己的服务器从微信获取token并保存txt...

1安装crontab:yum install crontabs说明:service crond start //启动服务service crond stop //关闭服务service crond restart //重启服务service crond reload //重新载入配置查看crontab服务状态:service crond status手动启动crontab服务&#xff1a…

思科模拟服务器怎么写文件,思科模拟服务器配置教程

思科模拟服务器配置教程 内容精选换一换部署游戏应用前,您需要准备硬件以及华为云的环境,主要包括以下内容:硬件环境:您需要准备一台带有显卡的Windows机器,硬盘至少20G,用于运行游戏客户端。若您不需要运行…

名词解释说明用英语怎么说_“恍然大悟”用英语怎么说?

当我们对思考已久的事情,突然明白或醒悟时,可以说是“恍然大悟”了。那么问题来了,“恍然大悟”用英语该怎么说呢?① it occurs to me这是一个使用频率很高的表达,日常生活中经常会用到。在美剧《摩登家庭》中&#xf…

彩虹六号服务器显示,彩虹六号怎么看自己在什么服务器 | 手游网游页游攻略大全...

发布时间:2015-09-10在游戏中新手玩家要注意些什么呢?今天就为大家带来新手必看技巧汇总,一起来看看吧. 新手必看技巧大全: 1.开局遇到人别急着标记,尽量先找到目标位置 2.如果开局 ...标签:发布时间:2016-04-29彩虹六号:围攻 地图攻略 总统…

OSG+VS2013+Win7 环境搭建,osgvs2013

最近在学习虚拟现实,要使用OpenSceneGraph(OSG),但是网上找不到VS2013的搭建教程,好烦。。。 只能自己在vs2010的基础上,修改一些bug,最后成功搭建。 步骤一:材料准备 a) Osg源码 当…

像postman上传文件_90%的测试工程师是这样使用Postman做接口测试的……

postman介绍&测试准备postman介绍:postman是一个开源的接口测试工具,无论是做单个接口的测试还是整套测试脚本的拨测都非常方便。前期准备:测试前,需要安装好postman, 客户端版本跟插件版本都行,根据个人需要选择安…

浅析STL allocator

一般而言,我们习惯的 C 内存配置操作和释放操作是这样的: 1 class FOO{}; 2 FOO *pf new FOO; 3 delete pf; 我们看其中第二行和第三行,虽然都是只有一句,当是都完成了两个动作。但你 new 一个对象的时候两个动作是&#xff…

十六进制除法运算法则_苏教版数学七年级上册 微课视频 2.6 有理数的乘法与除法(1)...

第一章《数学与我们同行》视频讲解 同步练习2.1 《正数与负数》2.2 有理数与无理数2.3 数轴2.4 绝对值与相反数(1)2.4 绝对值与相反数(2)2.5 有理数的加法与减法(1)2.5 有理数的加法与减法(2)2.6 有理数的乘法与除法(1)七、有理数的乘除法1.有理数的乘法法则法则一&#xff1…

a5d27 emmc启动 修改1

a5d27第1级bootloader是从sdhc0(emmc)加载还是从sdhc1(sd卡)加载, 只需要修改board/sama5d2_xplained文件即可 修改CONFIG_SDHC* y 这个宏定义在board/sama5d2_xplained.c中的void at91_sdhc_hw_init(void)函数实现 从上面代码可以看出第1级的bootloader只支持一…

矩阵每一行重复_【剑指offer】65 矩阵中的路径

- 题目描述请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一…

mysql5.464位下载_MySQL Front 64位

MySQL-Front是一款实用的MYSQL数据库管理工具,软件自带了简体中文语言,与mysql数据库连接后就可以对其地蚝各类管理操作了,比如对域进行编辑、增加和删除,执行sql脚本或者导出数据库等操作,除此之外还可以将数据库保存…

a5d27 第1级bootloader启动问题

drivers/sdhc.c里的 static int sdhc_set_clock(struct sd_card *sdcard, unsigned int clock) 这段代码总是会超时,造成启动失败。 log如下图

LDA-Latent Dirichlet Allocation 学习笔记

以下内容主要基于《Latent Dirichlet Allocation》,JMLR-2003一文,另加入了一些自己的理解,刚开始了解,有不对的还请各位指正。 LDA-Latent Dirichlet Allocation JMLR-2003 摘要:本文讨论的LDA是对于离散数据集,如文本集&#xf…

app 图标规格参考表

转自:http://www.cocoachina.com/appstore/top/2012/1105/5031.html 像我一样记不住iOS应用图标像素尺寸的开发者不在少数,我经常需要查询不同设备上的应用尺寸,为了方便自己、方便大家,我制作了下面的图表供大家参考。 iPhone、i…

mysql数据库开启远程连接_安装MySQL数据库并开启远程访问

一、安装MySQL数据库MySQL安装在系统盘下(C:\Program Files),方便系统备份。1.双击安装程序,勾选“I accept the license terms”,点击“Next”按钮。2.检测需要的安装,直接点击Next。3.按照下图所示步骤安装。4.设置密码&#xf…

flume mysql hdfs_利用Flume将MySQL表数据准实时抽取到HDFS

一、为什么要用到Flume在以前搭建HAWQ数据仓库实验环境时,我使用Sqoop抽取从MySQL数据库增量抽取数据到HDFS,然后用HAWQ的外部表进行访问。这种方式只需要很少量的配置即可完成数据抽取任务,但缺点同样明显,那就是实时性。Sqoop使…

一种解决运行程序报“应用程序配置不正确”的问题

在我们开发工程中,可能有些情况下,不能在本机进行调试。这个时候我们一般会使用VM(vmware)建立一个虚拟机环境,然后把编译过的程序放在该虚拟机环境下执行调试。可是在某些情况下,不管我们编译的是debug还是release版本…

mysql+ubunt+绿色安装_Mysql在ubuntu18上的安装及简单使用

数据相关行业都离不开数据库,mysql在ubuntu上的安装比在windows上安装简单多了,下面我记录一下自己成功安装的步骤和使用。1.安装软件首先更新一下源:sudo apt-get update然后安装mysql服务器端:sudo apt-get install mysql-serve…

sql字符串拼接_Mybatis的SqlSession执行sql过程

上一篇分析了SqlSession执行sql的过程,其中并没有分析sql是从哪里来的,今天就来仔细分析下。Sql来源从上一篇的最后一步执行sql那里倒推sql的来源,源码主要过程如下图:可以看到最后是通过BoundSql直接获取的sql,然后往…