JetBrains has announced that in the latest release of its IDEs, 2024.1, it has enabled full-line autocompletion. This is powered by AI models that run locally, which keeps data processing on device.
“We’ve developed models that run directly on your device, and the IDE verifies each suggestion,” explained Mikhail Kostyukov, product manager on the machine learning team at JetBrains. “This approach delivers the best user experience and ensures that the generated code never contains non-existent variables or methods.”
According to JetBrains, this new feature is particularly useful for developers working in industries where privacy regulations are strict or those with limited internet access.
Autocompletion is currently available for the following languages: Java, Kotlin, Python, JavaScript, TypeScript, CSS, PHP, Go, and Ruby in their corresponding IDEs. The company is currently working on autocomplete for C#, Rust, and C++. The models that run autocompletion were trained on each specific language and framework they are available for.
Other updates to the AI Assistant include the ability to use existing test files as examples to automatically generate tests from, improvements to the AI prompts library, a keyboard shortcut for accepting one-line code suggestions, and the ability to create files from code snippets.
As of this release, the AI Assistant was also unbundled and is now a separate plugin. “This change is driven by the need to offer greater flexibility in decision-making regarding the use of AI-powered technologies, providing you with more control over your preferences and the requirements of your working environments,” Alexandra Charikova, product marketing manager for JetBrains, wrote in a blog post.
In addition, the terminal has been updated to allow for smoother navigation and features like separate nesting of individual commands, command completion suggestions, and easier access to history.
Each IDE was also updated with features specific to the language it supports. IntelliJ IDEA added support for Java 22 and the new Kotlin K2 mode, GoLand’s Data Flow Analysis was moved out of beta, PyCharm was updated with new features for integrated Jupyter notebooks, RubyMine got the ability to execute commands using the project’s current local SDK, and PhpStorm added support for Symfony’s AssetMapper, which allows developers to easily install missing modules or packages.
Other plugins and IDEs that were updated include DataSpell, Scala, and WebStorm.