PhpStorm2023.2の新機能AI Assistantが正式リリースされていたので使ってみました!
今のところ中身はOpenAIのGPT-3.5、GPT-4とのことですが、自力でAPIキーを取得しなくてもJetbrains AIとして利用できるのが魅力のようです。
プラグインのインストール~設定
Marketplaceで AI Assistant(JetBrainsが作成者になっているもの)を見つけてインストール
Introducing Jetbrains AIと書いてある画面が出てくるので「Log in to JetBrains AI…」をクリック
Welcome to JetBrains AI の画面で「Continue with JetBrains Account」をクリック
ログイン画面が表示され、ログインするとおそらく「Authentication Successful」が表示されてブラウザでの操作は終了。
順番待ちリスト
筆者は、アーリーアクセス版の段階でJetbrains AIの利用登録をしていたので使えているのですが、もしかしたら順番待ちリストへの登録が必要になるかもしれません!
(2023.8.8追記) 順番待ちリストに登録される場合は、PhpStorm上のAI Assistantのパネルに「You are on the waiting list」と表示されるようです。
Chatを使ってみる
左側のパネルがチャット画面になっている。
なっていないときは右サイドのアイコン群から「✨」アイコンをクリックでAIアシスタントのパネルが表示。
チャットは英語のUIのときも日本語が使える。
返ってきたコードは「Insert Snippet at Caret」で編集中のコードに一気に挿入できて便利。
エディタのコードを選択してAI Actionsを試してみる。
エディタ上でコードを選択して右クリックメニューから「AI Action」>「Explain selected code」を選ぶと…
チャットパネルで質問を自動でやってくれます(ただし2023年8月5日現在、日本語化パックをONにしてもこの部分は英語でした)
コードを選択して「AI Action」>「Write Documentation」を選ぶとこんな感じでJSDocコメントを作ってくれました。
……たしかVSCodeでChatGPTのAPIを使うためのプラグインは、各種アクションのときに利用する命令文をカスタマイズして日本語化できたので、そのような機能がAI Assistantに実装されるとよいのですが……。
(2023.08.10追記)AI Assistantの設定にUser Prompts Libraryが登場していました!
コミットメッセージの自動作成
Git操作のパネルで、ステージするファイルを選ぶと「✨」がクリックできるようになります。
✨をクリックすると自動でコミットメッセージを考えてくれます!便利!
※こちらも日本語化パックを使っている場合もメッセージは英語なようです(2023.8現在)。
データ収集についての設定は?
Jetbrains AIを使うとき、入力されたデータそのものはAIが応答を返すためのやり取りの中でOpenAIに送信されているようです。ただ、2023年8月現在はAPI経由のデータはモデルの学習には利用されないため、Jetbrains AIで利用したデータも学習される心配はなさそう。
OpenAI will not use API data to train OpenAI models or improve OpenAI’s service offering.
https://openai.com/policies/api-data-usage-policies
また、disabled by default in release builds.(リリースビルドではデフォルトで無効)とのことですが、Jetbrains のチームのための行動データ収集は行われることもあるよう。とはいえ、個人を特定できるデータや、コードファイルの収集は行われないとか。
This type of data does not include any personally identifiable data, or any source code files or fragments from the user’s project.
https://www.jetbrains.com/help/ai/data-collection-and-use-policy.html#behavioral-data-collection
また、設定に「Allow detiled data collection」という設定のON/OFFがあるのですが…
「Data Collection and Use Policy」にはリリースビルドでは詳細なデータ(コードなどを含むデータ)の収集は行われません、と書かれていました。
Detailed data collection is never performed in release builds of the IDEs.
https://www.jetbrains.com/help/ai/data-collection-and-use-policy.html#detailed-data-collection
“never”とありますが、詳細なデータ収集されては困る場合は、チェックを外しておくと安心そうですね。
企業ネットワーク内のオンプレミスLLMは使えるか
2023年8月現在サポートするために準備中とのことです。
https://youtrack.jetbrains.com/issue/LLM-714
まとめ
- OpenAIのAPIキーがなくても使えるのはうれしい
- Chatは日本語でも普通に使える
- AI Actionsとコミットメッセージの作成機能は今(2023.8)のところ英語
ということで、Jetbrains IDEユーザーにとってはうれしい新機能、ぜひお試しください!
コメント