将程序视点设为星标精品文章第一时间阅读 大家好,欢迎来到程序视点!我是小二哥。
众所周知,AI 编程仍然是一个众说纷纭的话题,但越来越多的开发者开始将 AI 融入他们的日常工作流中。上一篇文章我们一起分享了JetBrains IDE 在最新的 2024.1 版本中添加的一种新型的代码补全功能:Full Line Code Completion
。
【独】关于JetBrains 2024.1“全行代码补全”新特性必知必会,解开你的困惑!
今天,接着给大家分享Full Line Code Completion
的更多内容。让大家用着放心~
Full Line Code Completion
的内部运作
Full Line Code Completion 的核心骨干是一个编程语言特定的语言模型,该模型使用具有许可的开源代码数据集在内部训练而成。
语言模型的输入是文本光标前的代码,但对于某些语言,也会添加相关文件中的内容。 输出是模型建议的当前行的继续,以灰色显示。
生成建议后,会应用一系列后处理步骤:会检查此建议在语法和语义上是否正确,然后进行智能过滤、格式设置、括号平衡和其他各种处理。这些处理会尽力只显示有价值的建议,保障质量。
关于采用单行建议
AI 补全建议的长度是一种权衡。虽然较长的建议往往会减少我们的按键次数,但同时也会增加我们的审查次数。毕竟,我们还不能完全相信AI。官方基于以上因素,采用了补全一行代码的折衷方案。
官网指出,这一折衷方案使其能够在不明显降低建议质量的情况下缩减模型的规模。在 2024.1 版的 JetBrains IDE 中,使用的语言模型拥有 1 亿个参数,上下文大小上限为 1,536 个词元,大约相当于 170 行代码。这样的上下文,完全能满足我们日常单个文件的内容了(一些祖传代码除外
)。
如何调整功能
您可以在 Settings
-->Editor
-->General
-->Code Completion
中配置全行代码补全,所有设置都可以在 Machine Learning-Assisted Completion
(机器学习辅助补全)部分下找到。
如果想关闭该功能,可以取消选中 Enable Full Line suggestions
(启用全行建议)复选框。或者,您也可以禁用支持此功能的插件。为此,请前往Settings
-->Plugins
,切换到Installed
(已安装)标签页,然后查找full line code completion
(全行代码完成)。
好了,今天的文章就到这里了。当前全行代码补全功能还有一定的局限性,比如尚未支持 C#、Rust 和 C++,又如代码补全仅支持到单行...
需要更完善的功能,可以与 AI Assistant 的多行代码补全集成起来。Full Line Code Completion
目前仅在 JetBrains IDE 2024.1的版本出现。需要激活2024.1全家桶IDE的小伙伴可以参阅下方链接。