JetBrainsは、今年最後のリリースですべてのIDEを刷新し、統合されたAIアシスタントをプレビューから有料顧客向けに一般提供を開始することを発表した。IDEとの強力な統合に加え、JetBrainsのAIアシスタントは、複数のLLMをサポートすることで他との差別化を図っている。
JetBrainsによると、AI Assistantが競合と一線を画すのは、JetBrainsのIDEとの一体化であり、IDEはコードとそのコンテキスト、プロジェクト構造を理解し、LLMに関連するすべてのデータを提供できる。
AIアシスタントを使えば、最新世代のAIをエディタやワークフローなどを、あなたが仕事をする場所に持ち込むことが可能になります。AIアシスタントは、Fleetだけでなく、すべての商用IDEとReSharperの2023.3バージョンで利用可能で、これらの製品がサポートする多くの言語で動作します。
JetBrains AIアシスタントは、AIチャット、リファクタリングのサポート、コード補完、ドキュメント作成、コミットメッセージ生成など、LLMを利用した多くの機能をサポートしている。
AIチャットは、例えば関数が何をするのか、タスクを完了する方法、問題をデバッグする方法などを尋ねることができる。また、オープンエンドでコンテキストを意識したチャット・インターフェースを提供する。この目的のために、アシスタントは自動的に現在のファイルの内容に加えて、言語、依存関係、最近使用したファイルなどの情報をプロンプトの一部として使用する。
リファクタリングは、JetBrainsのものを含む最新のIDEにおいて、長い間重要な機能であった。AIアシスタントによって、JetBrainsは新たなリファクタリングの機会を提案し、その根拠を説明することで、さらに進化しようとしている。
コード補完については、AIアシスタントはチャットに使用されているものと同様のアプローチに従っている。実際、IDEは、キャレットの上下にあるコードなど、プロンプトで利用可能なコンテキスト情報を渡して、開発者が何を達成しようとしているかを予測する。
コードのリファクタリングや生成に加えて、AIアシスタントはそのドキュメントを作成できる。例えば、関数やクラス全体を選択して「AI Actions/Write Documentation」を選択できるし、どのコード単位でドキュメントを作成したいかをAIアシスタントに推測させることも可能だ。
同様に、AIアシスタントはあなたのコミットのdiff内容に基づいてコミットメッセージを生成できる。このメッセージは、IDE によって提供される残りのコンテキストとともにプロンプトの一部として送信される。提案されるコミットメッセージは、何が変更されたかを説明し、コミットの見出しに要約する。
JetBrainsによれば、AIアシスタントのもう1つの差別化要因は、LLMプロバイダーが1つに固定されるのを防ぐことだという。実際、その "インテリジェンス "は現在OpenAIによって提供されているが、JetBrainsはGoogle CodeyとVertex AIモデルの統合に取り組んでおり、間もなく利用可能になり、将来的には他のLLMも使用される可能性がある。
特定のベンダーに縛られることがないため、急速に変化するこの分野での技術の進歩に合わせて、モデルの使用を進化できます。そのため、お客様の問題解決に最適なモデルやアプローチを選択可能です。
前述の通り、AIアシスタントGAは、IntelliJ IDEA、PyCharm、CLion、GoLandなどのJetBrains IDEの2023.3リリースに対応している。