AmazonのAIでコーディング??「AWS CodeWhisperer」とは
- AWS
- Copilot
- GitHub
- IT・情報通信業
- システム開発
- 生成AI
今回は「GitHub Copilot」の対抗サービスとなる「AWS CodeWhisperer」を検証してみました。
ここでは「AWS CodeWhisperer」の特徴や使い方、料金について解説していきます。
(前の記事:GitHubのChatGPTでコーディング!?「GitHub Copilot X(Chat)」とは)
AWS CodeWhispererとは
「AWS CodeWhisperer」はAmazonが開発したコーディングサポートAIで、オープンソースリポジトリ、Amazon内部リポジトリ、APIドキュメント、フォーラムなど数十億行のコードを学習した大規模言語モデル (LLM) で複数のプログラミング言語をカバーしています。
2022年6月に「Amazon re:MARS 2022」でプレビュー版、2023年4月に一般版が公開され、VS Code、IntelliJ IDEA、 JupyterLab、AWS Cloud9、AWS Lambda コンソール、Amazon SageMaker Studio などで利用することができます。
法人版は「GitHub Copilot」と同様に有料サービスなのですが個人版はAWS Builder IDを登録するだけで無料で使えます。(2023年9月時点)
(参考:Amazon CodeWhisperer)
AWS CodeWhispererの特徴
コードの生成を得意としていますが「GitHub Copilot」にはないセキュリティ対策機能が搭載されています。
セキュリティスキャン機能
→Java, JavaScript, Pythonのプロジェクトのコードを分析し脆弱性を検出する
リファレンストラッカー機能
→オープンソースのトレーニングデータを基に類似している可能性があるコードを検出する
上記の機能で構築前にセキュリティ対策を講じることができます。
※セキュリティスキャンはPython、Java、JavaScript 用の VS Code および JetBrains IDE のみ対象(2023年9月時点)
AWS CodeWhispererの始め方
手順
1.VS Codeを開きます
2.拡張機能メニューから「AWS Toolkit」をインストールします
3.AWS ビルダー IDを作成してログインするとVS Codeに紐づきます
(既にアカウントを持っている方はログインのみ)
起動画面
インストール後にAWS Toolkit 拡張機能が左のメニューバーに表示され、コードの推薦モードON・OFFを切り替えられます。
利用する前の注意事項
個人版(Individual)の場合、デフォルトで学習データ元としての情報提供を許諾する設定になっています。
情報提供を許諾しない場合は上記のチェックを外してから利用してください。
法人版(Professional)はデフォルトで情報提供をしない設定になっています。
AWS CodeWhispererの使い方
基本的な見方
①コメント欄:生成したいコードについてコメントを入力する欄です
②推薦コードの数:コメントを基に生成した推薦コード数です
③推薦コード:コメントを基に生成した推薦コードが表示され②の< >で別のコードに切り変わります
主な使い方
1.コメントによるコード生成
2.関数名からコード生成
3.コードの説明
4.その他
1.コメントによるコード生成
青枠にたった1行コメント入力するだけでコードが自動的に生成されます。
非常にシンプルな使い方です。
例として2つ挙げます。
A:2つの数と四則演算の記号を入力すると計算が行われるコード
B:ロト番号をランダム数を用いて出力するコード
2.関数名からコード生成
コメントを入力しなくても関数名から推測してコードが自動的に生成されます。
3.コードの説明
記載してあるコードについて説明してくれます。
4.その他
記載してあるコードを実行した場合の値を回答してくれます。
※ただし誤回答が多いので要注意です
AWS CodeWhispererの応用編
青枠に1行のコメントを入力してAWSにおけるbucketの操作コードのひな形を生成してみました。
AWS CodeWhispererはbucketの「作成」を始めファイルの「アップロード」「ダウンロード」「削除」など、次々と必要なコードを提案し生成してくれました。
コーディングの時間を要さずにここまで生成できるのは画期的です。
AWS CodeWhispererの料金
おおむねGitHub Copilotと同じなのですが、大きく異なる箇所は個人版(Individual)の利用料が無料というところです。
AWS CodeWhisperer VS GitHub Copilot VS GitHub Copilot X(Chat)
最後に3サービスを比較表にしてみました。
率直な感想としてコードを生成する能力や操作性に関してはGitHub CopilotやGitHub Copilot X(Chat)に軍配が上がると思われます。
しかしGitHub側にはないセキュリティ機能面の強さがAWS CodeWhispererの最大の魅力です。
(参考:まるで電動アシスト自転車!?開発者の強い味方「GitHub Copilot」とは)
(参考:GitHubのChatGPTでコーディング!?「GitHub Copilot X(Chat)」とは)
まとめ
今回は「GitHub Copilot」「GitHub Copilot Chat」に続き「AWS CodeWhisperer」を検証してみました。
実際に使ってみて「AWS CodeWhisperer」の強み弱みはこのような感じかと思います。
強み
- 個人版が無料
- GitHub Copilotは個人版も有料でしたがAWS CodeWhispererは無料で利用することができる
- セキュリティ面が強い
- 脆弱性検出やリファレンストラッカーなどの機能が搭載されている
弱み
- 日本語に弱い
- 学習データの影響か英語の方が明らかに提案力が高い
- 使い勝手はGitHub Copilotの方がよい
- まったく問題なく使えるものの比較してみるとコード生成能力や操作性はGitHub Copilotの方が優れていると感じる
全体を通じてGitHub Copilotの方が良さそう…との見解ですがAWS CodeWhispererも十分優秀な部類です。
利用用途しては特にAWS環境において機密性の高いプロジェクトのコーディングで力が発揮できそうです。
取り急ぎ 個人版は無料で使えるのでまずは触ってみることをお勧めします。
次回はAIの活用で重要視されつつあるPoCの目的と進め方のポイントの解説をします。
(PoCの目的と進め方のポイント(サマリ版))
今回のコラムに関連のある資料
SIer様・ベンダー様向けAzure OpenAI Service開発支援サービス
Azure OpenAI Service開発支援サービスの紹介資料です。 AI業界の市場動向や主な課題、船井総合研究所のAI開発の特徴や事例などがご確認いただけます。