

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。