安利一款利用机器学习补全代码的编辑器插件——TabNine
TabNine是一种基于OpenAI的语言模型(GPT-2)来实现的智能代码补全技术。它支持23种编程语言、5种编辑器,使用简单,效果惊艳。不少使用过的网友说:TabNine是他们用过的最好的代码补全工具,这是属于程序员的杀手级应用。
支持我们常用的Webstrom 和 Vscode。
官网地址 https://tabnine.com/ ,在官网上有一些对代码补全的视频
下面是我录制的试用效果的gif图(gif太大了不能上传图床)
B站上用TabNine写python 的视频。https://www.bilibili.com/video/av61698027
如何使用
1 https://tabnine.com/subscribe
点击Try free beta
填写自己的邮箱后,会收到一封邮件
按照邮件的操作步骤,安装对应编辑器的插件后在编辑器中输入 TabNine::config 会打开浏览器一个配置页面,在页面中填写 APIkey。
为了代码安全选择不上传代码
⚠️ 这里输入 TabNine::config 不太好用,切换英文输入法,在输入后不生效尝试删除字符,补全后回车。我配置两个编辑器的时候,这里都遇到了问题。
配置好了可以尝试使用
说说我对它的看法
IDEA系列和Vscode 现在对代码提示已经支持的很好了,为什么还需要这样的插件:
传统的编辑器插件都是基于语法树提示API,在补全对象的属性或者方法上很好用。TabNine 会通过ML 来学习当前项目的源代码,会学习代码的写作习惯和常用的代码片段,在补全代码上更开放。
遇到比较方便的例子
- 单词补全,TabNine会根据项目常用的单词补全你想要写的变量名,比如项目中有
updateCollection当我输入 delete 的时候会自动提示 deleteCollection, 当输入 UPDATE或者DELETE 会建议 _COLLECTION - 会基于常用的代码片段推荐,命中率很高,会节约很多敲代码的时间
- 会推荐常用的语法糖
- 通过对GitHub代码的学习会建议一些固有模式的代码比如React 类的写法 和 生命周期的一些写法
TabNine的技术就是对传统语法补全技术的一种极好的补充,因为程序员每天大部分时间都是在重复自己以前的编程思想和代码片段,为什么不让机器来辅助人从重复的代码拷贝中解脱出来呢?
问题
- 内存损耗大
- 会在本地创建比较大的token索引占用磁盘空间
- 对GPU有要求
- 看个人喜好,有人觉得烦,干扰自己对于代码闭合的习惯,会扰乱自己输入
- 对小众语言的支持不友好,比如Dart
继续阅读与本文标签相同的文章
对python3 一组数值的归一化处理方法详解
-
互联网的下半场,在大小城市里飞驰的电瓶车上
2026-05-15栏目: 教程
-
Robotframework-RED-指定测试报告存放的路径
2026-05-15栏目: 教程
-
株洲首个数据中心站投运
2026-05-15栏目: 教程
-
微软Edge新标签页迎来新布局:新闻区可替换为工作相关内容
2026-05-15栏目: 教程
-
取快递件竟有BUG!这是恶意为之?双十一得好好注意了
2026-05-15栏目: 教程
