https://www.v2ex.com/t/860015#reply4
楼主是 Windows 用户。平时都是用 VS Code + Tabnine + Copilot, 有时用 JetBrains IDE, 很少用 Visual Studio 2022.
我印象里一直觉得 IntelliCode 虽然是 AI-assisted Intelligent code completion , 但是和 Tabnine 相比实在不是很聪明, 跟 Copilot 相比就更笨了。
不过用过一段时间的 Copilot 之后我就发现, 这副驾驶虽然很强,但是它不鸟 LSP 啊,还有 Tabnine 也是自顾自给建议,完全不管 LSP.
这一点让我不是很爽...因为日常使用的时候,弹窗建议由 LSP 完成,内联建议是 Tabnine 完成的。
为了让两个东西配合起来,我去改了一下设置。然后结果是这个样子。
这样子总算是让两个东西共存了。既然做整行完成任务的 Tabnine 不吃 LSP ,只能让 IntelliCode 在前面牵制住 Tabnine.
然后我在想,整行完成的工作就只能让 Tabnine 和 Copilot 这种和 LSP 不沾边的 AI 模型做吗?
后来我发现 VS Code 的 IntelliSense 是由语言扩展加持的。而语言扩展可以联动 LSP, 于是在 VS Code 里看到的参数信息和 quick info 可以是 LSP 支持的。
IntelliCode 虽然是 AI 辅助的,但是我总觉得这个东西比 Copilot 笨太多了。
我看了一下,IntelliCode 是 2018 年出的, 一开始只支持 C#.
不过,从去年开始,VS IntelliCode 就能进行整行补全了, VS Code IntelliCode 整行补全的扩展 vscodeintellicode-completions也在今年发布了.
(原来去年 IntelliCode 就已经可以整行补全了吗?我才发现) 🤣
现在捋一下。
IntelliCode Completions 是 IntelliCode 的实验性功能, IntelliCode 是由 IntelliSense 语言扩展支持的, 语言扩展对接 LSP.
所以 IntelliCode Completions 是一个需要 IntelliCode 模型,IntelliSense 扩展和 LSP 的功能。
那这就有意思了 🤔
因为 Tabnine 和 Copilot 他们的补全都是不靠 LSP 的。
但是 IntelliCode 这个就特殊 🤣
现在 vscodeintellicode-completions 还在实验阶段,不知道有 LSP 的加持,会不会比 Tabnine 补的更对。
反正弹窗建议和内联建议肯定是可以完美共存的 。
1
rpman 2022-07-14 23:26:46 +08:00
这算是符号主义和连接主义的对决吗🐶
|
2
haolongsun 2022-07-15 00:51:22 +08:00
tabnine+copilot,感觉像可乐+雪碧,:(你这个打一个字符发送两个 api,io 肯定挺忙的
|
3
kouhe3 OP @haolongsun 我关掉了 Copilot 的自动内联建议。
只在有需要时按 Ctrl Enter 打开侧栏用 |