自动补全Python代码,节省50%敲码时间

DEV C++ 6.3相关问题求教 DevC++ 6.3 版本发现了点小问题,是哪里配置不对吗? 阅读详情

640?wx_fmt=jpeg

来源:机器之心

禁止二次转载


摘要:介绍一个优秀代码自动补全工具库。


近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称:


「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」


根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多少的按键信息——即模型给出长度为 L 的代码建议,如果和真实的代码匹配,则节省 L - 1 个键入操作。实验结果说明,大约可以节省 30%-50% 的时间键入成本。


作者在帖子中表示,他们接下来会尝试不同的架构,并提高推断的表现。而现在的模型推断很慢,不能实际使用。作者已在 GitHub 开源了项目代码:


链接地址: https://github.com/vpj/python_autocomplete


在项目开发中,优秀的代码自动补全工具可以提升工作效率。然而,近来的 IDE 基本都使用搜索方法进行补全,在一些场景下效果不佳。近日,有开源项目用深度学习模型进行代码补全,显示出非常有潜力的效果。

640?wx_fmt=png

我们知道很多 IDE 提供自动补全功能,这款工具又有什么区别呢?


和 IDE 的自动补全有什么区别


该项目对 Python 代码的自动补全与传统 IDE(如 PyCharm)等不同。IDE 补全基于检索方法,需要从已有代码中进行搜索。


以 PyCharm 中的基本补全(Basic Completion)方法为例。基本补全可帮助补全可见区域的类、方法、关键词代码。使用时,PyCharm 会分析补全使用情况,并提供当前位置可能的选择。如果是对空间、参数或变量声明进行补全,则 PyCharm 会基于类别提供一系列可能的命名。


640?wx_fmt=png


当出现已定义的类、函数、模块和变量时,基本补全就会启动。


此外,PyCharm 也提供智能补全等其他补全功能,但基本上都需要对已有文本进行搜索,根据位置和类型判断补全的方法。这些方法都没有配置机器学习模型。


Pycharm 的自动补全介绍:https://www.jetbrains.com/help/pycharm/auto-completing-code.html


网友评价


项目开源后,有些网友对作者提出了质疑:


640?wx_fmt=png


「我们已经有很多很好用的自动补全工具了,比如 kite(一个可以在 IDE 上使用的插件),为什么还要费心搞个机器学习模型?」


在讨论中,有人提出,一些无良的自动补全工具会悄悄上传代码到他们的服务器中,(而自行训练的深度学习模型不存在这个问题)。


也有人提出,其实不一定要用 LSTM 模型,隐马尔科夫模型在处理序列数据上效果也很好。


640?wx_fmt=png


此外,也有网友建议使用 CuDNN 加速 LSTM 的推断过程。这样能大大提升推断速度,集成到 IDE 中也就有了可能。


对于使用深度学习自动补全代码,你有什么想法呢?

Dev_c++如何向项目初始源文件填充代码 阅读详情

相关推荐

这个库厉害了,自动补全Python代码,节省50%敲码时间

近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称: 「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」 根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多少的按键信息——即模型给出长度为 L 的代码建议,如果和真实的代码匹配,则节省 L - 1 个键入操作。实验结果说明,大约可以节省 30...

Python8年程序员教程分享 3909

Dev C++编辑器的配置(包含代码自动补全配置)

dev C++编辑器的配置依赖主题自动整理代码自动补全代码 简单的介绍一下:本专栏是以收集常用编辑器的问题和配置为主,订阅不迷路 依赖 DEV C++ 5.11 最新版(或者更新的版本) 对代码的编译不进行讲解。 主题 更改默认的主题,这个黑色主题是比较好看的(推荐)。默认是白色。 先打开:工具 -> 编辑器选项 -> 语法,看到那个预设了吗?选择GSS Hacker主题。(有一个问题就是不能更改处代码显示外的区域) 然后换完主题之后你会发现当前行会以一个非常非常亮的颜色高亮出先,十分的刺激

liuyunye的博客 9万+

六个神级PyCharm高效插件,助你编程如虎添翼

Tabnine是一个基于人工智能的自动代码补全插件,非常准确,开发者甚至能够从中学习一些知识!免费版的功能有限,但如果你喜欢专业版,每月的费用也不高。PyCharm作为一款强大的集成开发环境,本身已经提供了许多功能,但这些插件将进一步扩展和增强PyCharm的能力。通过使用这些插件,开发者将能够更快速地编写代码、提高代码质量、进行调试和优化,并将开发体验提升到一个全新的水平。

leyang0910的博客 4306

DEV C++自动补全文件头的设置操作

【代码】DEV C++自动补全文件头的设置操作。

DeniuHe的博客 5318

OneNet平台MQTT连接避坑指南:C语言Token计算实战(附完整代码)

本文详细解析了OneNet平台MQTT连接中的Token计算机制,提供了C语言实现的完整代码和实战指南。通过HMAC算法和Base64编码,开发者可以高效生成安全凭证,避免常见连接问题,适用于物联网设备开发。

weixin_29193359的博客 463

Android 关于佳博和汉印蓝牙热敏打印机开发,Android程序员必经的实践之路

针对于上面的问题,我总结出了互联网公司Android程序员面试涉及到的绝大部分面试题及答案,并整理做成了文档,以及系统的进阶学习视频资料。(包括Java在Android开发中应用、APP框架知识体系、高级UI、全方位性能调优,NDK开发,音视频技术,人工智能技术,跨平台技术等技术资料),希望能帮助到你面试前的复习,且找到一个好的工作,也节省大家在网上搜索资料的时间来学习。《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!

2401_84149570的博客 1023

这个库厉害了,自动补全 Python 代码,节省 50% 敲码时间

点击上方“民工哥技术之路”选择“置顶或星标”每天10点为你分享不一样的干货摘要:介绍一个优秀代码自动补全工具库。近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者...

民工哥的博客 1171

块坐标下降法实战:如何用Python一步步优化无人机通信网络?

本文通过Python实战案例,详细介绍了块坐标下降法在优化无人机通信网络中的应用。文章以最大化网络吞吐量为目标,将复杂的非凸问题拆解为功率分配和轨迹规划两个子问题,并提供了完整的算法实现、代码示例及调参指南,为机器学习工程师解决类似优化问题提供了实用参考。

sat99的博客 975

pycharm自动补全_一款自动补全Python代码插件,节省50%敲码时间

阅读文本大概需要 3 分钟,更多技术干货,请关注公众号: mikezhou_talk摘要:介绍一个优秀代码自动补全工具库。近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称:「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多少的按键信息——即...

weixin_39620370的博客 6494

ABB机器人姿态与四元数(笔记)

通常使用机器人作业时,机器人的法兰轴(5轴)往往是垂直与作业平面的,此时需要将机器人的姿态调整(示教)到垂直于工作平面的状态,然后记录当前的姿态,作为之后作业的参考标准姿态。不同机器人表示控件姿态的方式不一样,但也无外乎3中:旋转矩阵、欧拉角和四元数。 ABB机器人使用的是四元数(可转欧拉角)作为机器人控件姿态的表示方式。这里主要是记录在不通过示教的方式下,如何定义四元数,使机器人达到垂直于工作平面的姿态。 5轴竖直向下(常用):此时,各轴角度为 [0,0,0,0,9...

Zythonista的博客 1万+

浅谈专项测试之弱网络测试

浅谈专项测试之弱网络测试 一.弱网络测试背景 移动端产品的使用并非完全都是在流畅的wifi环境,大部分用户主要使用4G,3G,2G等网络,另外因为移动端产品使用的场景多变,如进公交,上地铁,坐电梯,使得弱网测试显得尤为重要。考虑到各种场景的客户端展示及容错,提升产品的印象和用户体验,提高产品的健壮性,弱网测试必不可少。 二.弱网络测试建议 网下需要进行功能点测试,无网络测试,网络切换测试等,测试过程除了关注功能点的实现,还应关注用户体验等各个方面 三.弱网络测试通用功能点总结 四.弱网络测试用例实例

ITstudy001的博客 1011

这个Python库厉害了,自动补全代码,节省50%敲码时间

近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称: 「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」 根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多少的按键信息——即模型给出长度为 L 的代码建议,如果和真实的代码匹配,则节省 L - 1 个键入操作。实验结果说明,大约可以节省 30...

Python学习笔记 347

手把手教你学Simulink--基于Simulink的风力发电系统用双馈电机控制仿真建模

特点高效节能:在广泛的风速范围内保持高效的能量转换。独立控制有功和无功功率:通过控制转子电流实现对有功和无功功率的独立调节。较低的成本:相比直接驱动或全功率变流器方案,成本较低。挑战控制复杂度较高:需要复杂的控制算法来实现有功和无功功率的解耦控制。对电网波动敏感:需要良好的稳定性控制策略以应对电网电压波动。利用Simscape Electrical中的模块构建DFIG的物理模型,配置参数如电阻、电感、极对数等。matlab深色版本% 添加DFIG电机模块。

MHD0815的博客 351

pycharm自动补全_这个库厉害了,自动补全 Python 代码,节省 50% 敲码时间

点击上方“AI有道”,选择“星标”公众号重磅干货,第一时间送达本文转载自机器之心,禁二次转载摘要:介绍一个优秀代码自动补全工具库。近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称:「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多...

weixin_39640395的博客 1574

YOLO26改进策略【YOLO和Mamba】| CVPR 2025:EfficientViM 压缩隐藏状态空间进行通道混合、单头设计减少内存操作,提升目标检测效率与精度

本文记录的是利用模块优化的目标检测网络模型。EfficientViM Block(基于隐藏状态混合器的状态空间对偶性模块) 的设计旨在,提升特征提取效率,同时兼顾全局依赖捕捉与局部细节保留。本文将深入研究的原理,并将其应用到中,通过重构特征提取流程、减少内存绑定操作、融合多阶段特征,增强模型在资源受限环境下的检测性能与速度。EfficientViM: Efficient Vision Mamba with Hidden State Mixer based State Space DualityEfficie

Limiiiing的博客 401

安装Codex时出现无法下载此应用和Microsoft Store初始化失败的解决方案

本文主要介绍了安装Codex时出现无法下载此应用和Microsoft Store初始化失败的解决方案,希望能对使用codex的同学们有所帮助。 文章目录 1. 问题描述 2. Windows 解决方案 3. Mac解决方案

weixin_43178406的博客 7万+

geany自动补全代码python_这个库厉害了,自动补全Python代码,节省50%敲码时间

这是恋习Python推荐的第134篇好文来源:机器之心禁止二次转载摘要:介绍一个优秀代码自动补全工具库。近日,Reddit 上的一篇帖子引起了网友的热议。帖子作者「mlvpj」称:「我们使用深度学习完成了一个简单的项目,可以自动进行 Python 代码补全。」根据介绍,该项目基于 LSTM 模型,训练后,负责对代码的缺失部分进行补全。评价模型的方法是判断节省了多少的按键信息——即模型给出...

weixin_42318708的博客 1192

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

上一篇: 快报:Java跌惨!Python背后或有推手?网友:心态已崩!
下一篇: 充气娃娃什么感觉?Python告诉你
菜鸟学Python
博客等级 码龄9年 8086粉丝 571原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值