はじめに
コード生成AIが続々リリースされていくなか、Google CloudのDuet AIも2023年12月13日にGAされました。
今回は、Duet AIの支援を受けながら、Cloud Code for VS Codeでのコーディング支援について確認します。
Cloud Codeとは
Cloud Codeは、Google Kubernetes EngineやCloud RunなどのGoogleサービスをIDEから直接操作できるVisual Studio Codeの拡張機能で、コンテキストを切り替えること無くアプリケーション開発できるサービスです。
直近で、Cloud CodeにもDuet AIによる支援が追加され、コードの生成やVisual Studio CodeからDuet AIとのチャットなど、機能が拡張されました。
Duet AIとは
Duet AIは、以下を提供する常時接続のコラボレーターで、幅広いGoogle Cloudユーザーに対するAIを活用した生成的な支援を行ってくれます。
Duet AIが主にできることとしては、
- コードの生成
- 単体テストの生成
- Google Cloud プロダクトに関する質問の回答
- ベスト プラクティスと最適化のための提案
- ログエントリを要約
- エラー メッセージのトラブルシューティング
などがありますが、その他にも
- BigQuery: Duet AI支援によるクエリの作成 (プレビュー)
- Cloud Spanner: Duet AI支援によるSQLの作成 (プレビュー)
- Colab Enterprise: Duet AI支援を使用してColab Enterpriseノートブックにコードを作成 (プレビュー)
などが可能です。
料金
Cloud CodeでDuet AIを利用するには、下記の料金が必要です。
Cloud Code:料金は無料
Duet AI:ユーザーあたり月額19ドルですが、2024年2月1日まではプロモーションで無料です。
事前準備
Visual Studio CodeでDuet AIによる支援を受けるためには、事前準備として下記対応が必要です。
- 課金が有効なGoogle Cloudプロジェクトを作成していること
- プロジェクトでCloud AI Companion APIを有効にする
- Visual Studio CodeでCloud Codeの拡張機能をインストールする
- Cloud Codeの設定でDuet AIを有効にする
などの対応が必要になります。
詳細な手順については、Google Cloudのドキュメントに手順がありますので、ご確認ください。
Visual Studio Codeの右下で、下記のようなDuet AIのアイコンが表示されていれば利用準備OKです。
Duet AIでできること
本章では、Visual Studio Code上で受けられるDuet AIの支援について、紹介します。
Duet AIとチャットする
Duet AIは、選択したコードに基づいてタスクを実行することや、質問に回答することが可能です。
コードファイルでコード生成を指示する
コードファイルの新しい行で指示文を入力(#から始める)し、Enter(WindowsおよびLinuxの場合)またはReturn(MacOSの場合)を押します。
Control+Enter(WindowsおよびLinux)やCtrl+Return(MacOSの場合)を押すと、コードが生成され、ゴーストテキスト形式で表示されます。
Tabを押すことで、生成されたコードを受けいれることができます。
選択したコードを使用して、チャットで指示する
Duet AIは、選択したコードに基づいてタスクを実行することや、質問に回答することが可能です。
こちらの画像では不完全なコードをもとに、Duet AIに選択したコードの修正候補を提示してもらいました。
コーディング中にインライン候補を表示する
Duet AIは、コードの記述中にインライン コードの候補を作成します。
コードの続きを予測し、ゴーストテキスト形式で候補を表示してくれます。
Tabを押せば、提案を受け入れることができ、コードに反映できます。
コードの説明を取得する
コードファイルで、説明対象のコードを選択し、💡を選択肢「Explain this code to me」を選択すると、コードをDuet AIが読み解き説明してくれます。
画像では英語による回答ですが、質問を日本語で入力すれば、日本語で解説してくれます。
ユニットテストを生成する
おわりに
いかがだったでしょうか。
今回は、Cloud Code上でDuet AIによるコーディング支援を受けてみました。
単純なコード生成だけではなく、コードの要約やユニットテストの作成など、コーディングが捗りそうですね。
みなさんもDuet AIによるコーディング支援、始めてみませんか?