JetBrains IDE添加本地端整行程式码完成功能

自JetBrains IDE v2024.1版本开始,开发者便可以在输入程式码的时候,获得来自

由于整行程式码完成功能不会透过网路发送任何资料,而且因为在本地端运作,因此不像是AI Assistant还需要支付额外的云端费用。官方也提到,整行程式码完成功能深度整合到IDE中,所有建议都会自动应用适当的格式,例如括号平衡等。

同时,JetBrains还会利用静态分析和程式码理解功能,过滤不正确的建议,每种受支援的语言,都有一组基本的程式码正确性检查规则,例如未解析的参照检查等,确保IDE不会建议不存在的变数和方法,或是具有明显错误的程式码。

而之所以JetBrains在权衡之后仅提供单行建议,官方解释,虽然较长的建议可以减少用户键盘输入的次数,但同时也会增加用户审查的数量。因此经过评估之后,JetBrains决定完成一行程式码,是更为合适的妥协。

JetBrains尽可能缩小语言模型,但是又避免影响程式码建议品质,使用一亿参数的模型,最大上下文为1,536个Token,约为170行程式码。

整行程式码完成目前可应用于Java、Kotlin、Python、JavaScript、TypeScript、CSS、PHP、Go和Ruby,对应的IDE包括IntelliJ IDEA Ultimate、PyCharm Professional、WebStorm、PhpStorm、GoLand和RubyMine。接下来官方还计划扩展支援C#、Rust和C++,因此整行程式码完成也会登入Rider、RustRover和CLion。