生成 AI コーディングアシスタント 

Amazon Q Developer をグラレコで解説

2024-10-03
AWS グラレコ解説

Author : 米倉 裕基 (監修 : 金森 正雄, 大渕 麻莉、井形 健太郎)

builders.flash の読者のみなさん、こんにちは ! テクニカルライターの米倉裕基と申します。

本記事では、AWS が提供する生成 AI によるコーディングアシスタント Amazon Q Developer の機能と特徴について紹介します。

Amazon Q Developer は、生成 AI を活用して開発者の生産性を向上させるためのツールです。自然言語によるコーディングサポートや、インラインでのコード補完、新機能実装の提案など、開発プロセス全体の効率化を実現できます。また、Amazon Q Developer はセキュリティ面にも配慮されたサービスです。コードの脆弱性をスキャンし、修正案を提示する機能を備えているほか、データ保護、アクセス制御、監査ログなどのセキュリティ対策が施されています。

本記事では、Amazon Q Developer の以下の機能と特徴について詳しく解説します。

それでは、項目ごとに詳しく見ていきましょう。

Amazon Q Developer とは

ソフトウェア開発において、開発者は機能の設計から実装、テストなど様々な作業が必要です。そのため、機能実装やリファクタリング、バグの修正など、開発のあらゆる工程において開発者を包括的にサポートするサービスが求められています。

こうした背景の中で生まれた Amazon Q Developer は、生成 AI と自然言語処理の技術を開発プロセス全体に導入することで、開発者の生産性向上とイノベーションの加速を実現する開発者向けの AI コーディングアシスタントサービスです。

開発者向け AI アシスタント

開発者向け AI アシスタントとして、Amazon Q Developer は自然言語によるコーディング指示に基づき、以下のようなタスクをアシストし、開発工程を合理化できます。

  1. 生成 AI による高度なコーディング支援:
    自然言語による指示を受けて、適切なコード補完やアプリケーション機能の提案、新規機能の実装から既存コードの改修まで幅広くサポートします。
  2. 環境を問わない開発者支援:
    Amazon Q Developer は、IDE や CLI、さまざまな AWS サービスと深く統合されています。また、AWS Chatbot との API 連携により、外部アプリケーションとも柔軟に連携できます。開発者は慣れ親しんだ環境でコーディング支援を受けられます。
  3. 堅牢なセキュリティ:
    コードのセキュリティ脆弱性をスキャンし、ベストプラクティスに基づく修正案を提示することで、開発の生産性向上とセキュリティ確保を両立させています。また、業界標準のコンプライアンス要件を満たすため、データ保護、アクセス制御、監査ログなどのセキュリティ対策を講じています。

画像をクリックすると拡大します

その他の具体的な用途については、「Amazon Q デベロッパーの機能について」をご覧ください。

あらゆる場所で活用可能

Amazon Q Developer は、統合開発環境 (IDE)、AWS コンソール、AWS Command Line Interface (CLI) など、様々な開発環境で活用できます。

  • Visual Studio、VS Code、IntelliJ などの主要な IDE:
    IDE でコーディング中に、自然言語でコード補完や既存コードの改修支援を求めることができます。
  • AWS Lambda、Amazon SageMaker Studio などの AWS サービス:
    コンソール上でリソースを作成・設定する際、自然言語で手順の確認やベストプラクティスを問い合わせられます。
  • コマンドラインインターフェース (CLI):
    お気に入りのターミナルで CLI オートコンプリートと AI チャットを利用できます。
  • AWS マネジメントコンソールや AWS Documentation:
    コンソールやドキュメントで追加のヘルプが必要な場合、 Amazon Q パネルを開いて問い合わせられます。
  • Slack や Microsoft Teams などの外部のチャットツール:
    AWS Chatbot を Amazon Q Developer と連携することで、外部のチャットツールから利用できます。

このように、開発の現場のあらゆるタッチポイントで、自然言語によるコーディングサポートを受けられるのが、Amazon Q Developer の大きな特長です。生成 AI と自然言語処理の力を最大限に活用し、開発者の生産性向上とイノベーション促進を実現するソリューションです。

その他、Amazon Q Developer の機能について詳しくは、「Amazon Q Developer の機能」をご覧ください。


多彩なサポート環境

Amazon Q Developer は、統合開発環境 (IDE) やコマンドラインインターフェイス (CLI)、AWS サービスなど、開発の現場で広く活用できるよう、様々な実行環境に対応しています。また、IDE でインラインコード補完に対応するプログラミング言語も、Python、Java、JavaScript をはじめとして、非常に幅広い範囲をカバーしています。

実行環境とサポート機能

Amazon Q Developer は、開発の現場で広く活用できるよう、様々な実行環境に対応しています。

統合開発環境 (IDE) やコマンドラインインターフェイス (CLI) では、専用のプラグインやツールをインストールすることで機能を利用できます。一方、AWS マネジメントコンソールAWS Documentation (英語版) などの AWS サービス上では、Amazon Q Developer がネイティブに統合された形で提供されています。

画像をクリックすると拡大します

機能 説明 JetBrains IDEs Visual Studio Code Visual Studio AWS サービス Amazon Q for CLI
チャット 自然言語でコーディングに関する質問に答えたり、タスクを支援します。
インラインコード補完 コーディング中に、インラインでコード補完の候補を提示します。 C、C++、C# のみ -
Agent for code transformation プロジェクトのコードベース全体に対して、プログラミング言語のバージョンアップを支援するエージェントです。 - - -
Agent for software development 開発中のプロジェクトに対して、新機能の実装や既存コードの修正・変更を支援するエージェントです。 - - -
セキュリティスキャン コードのセキュリティ脆弱性をスキャンし、修正案を提示します。 C# のみ - -
カスタマイズ 既存のコードを参照して、Amazon Q Developer の提案内容や生成コードをカスタマイズします。 - - -

上の表のとおり、Amazon Q Developer で利用可能な機能は、実行環境によって異なります。2024 年 10 月現在、JetBrains IDEs (IntelliJ IDEA や PyCharm など) や Visual Studio Code が IDE としては幅広い機能が利用可能ですが、利用シーンに合わせて適切な実行環境を選択してください。

IDE ごとにサポートされる機能について詳細は、「IDE での Amazon Q デベロッパーの使用」をご覧ください。

サポートしているプログラミング言語

IDE のコードエディタでインラインコード補完が可能なプログラミング言語は、2024 年 10 月時点で以下のものがサポートされています。Python、Java、JavaScript など多くの主要なプログラミング言語に加えて、JSON や YAML で記述する Infrastructure as Code (IaC) 用の設定ファイルにもサポート範囲を広げています。サポート対象言語は今後も変更される可能性があります。

  • Java
  • Python
  • JavaScript
  • TypeScript
  • C#
  • Go
  • PHP
  • Rust
  • Kotlin
  • SQL
  • C++
  • C
  • Ruby
  • Shell
  • Scala
  • JSON (AWS CloudFormation)
  • YAML (AWS CloudFormation)
  • HCL (Terraform)
  • CDK (Typescript、Python)

このように、Amazon Q Developer は幅広いプログラミング言語と IaC の設定ファイル用言語に対応しています。対応言語の詳細については、「IDE でサポートされている言語」をご覧ください。

Amazon Q Developer は開発の現場で利用されるさまざまなプログラミング言語、IDE、CLI、AWS サービスなど、多様な環境に柔軟に対応できます。開発チームの利用環境に合わせて導入することで、開発者の生産性向上とイノベーションの促進を実現できるソリューションです。


Amazon Q Developer の開始方法

Amazon Q Developer の開始方法は、CLI、AWS マネジメントコンソール、統合開発環境 (IDE) など、利用環境に応じて異なりますが、いずれの場合もシンプルな手順で利用を開始できます。
なお、2024 年 10 月現在、Amazon Q Developer は英語のみに対応しており、日本語を含む他言語はサポート対象外となっています。

コマンドラインインターフェイス (CLI) の場合

macOS の場合、Amazon Q for CLI をインストールすることで、macOS ターミナルiTerm2HyperAlacrittyKittywezTerm といった多彩なターミナルツール上で Amazon Q Developer を利用できます。

  1. macOS に Amazon Q for CLI をダウンロード・インストールします。
  2. AWS Builder ID で認証するか、アカウント管理者から提供された開始 URL を使って AWS IAM Identity Center で認証します。
  3. 手順に従って bash、zsh、fish などのシェルに macOS のアクセス権を付与します。
  4. ターミナル上で Amazon Q Developer を操作します。

画像をクリックすると拡大します

機能 説明 コマンド例 → 生成例
チャット q chat コマンドで、自然言語 (英語) でコーディングに関する質問に回答します。 q chat "how to post example.com/api with curl command"curl -X POST https://example.com/api -d '{"key":"value"}'
コマンド補完 git、docker、aws など 500 以上の CLI ツールに対して、サブコマンド、オプション、引数の補完候補をポップアップで表示します。 gitgit commit
インライン 現在と過去のコマンド入力に基づき、インラインでコマンドが提案されます (現在は zsh のみ)。候補は右矢印をクリックすることで確定します。 cd newcd new_folder
自然言語翻訳 q translate コマンドで自然言語 (英語) の指示から bash コマンドを生成します。生成されたコマンドはそのまま実行したり、編集して実行することが可能です。 q translate how to fix merge conflictgit reset --hard HEAD

使い慣れたターミナルツールから Amazon Q Developer を利用することで、開発体験を損なうことなく作業効率の向上が期待できます。macOS 上でのコマンドラインによる Amazon Q Developer の利用について詳しくは、「コマンドラインでの Amazon Q Developer の使用」をご覧ください。

AWS サービスの場合

AWS マネジメントコンソールAWS DocumentationAWS Lambda コンソール、Amazon SageMaker Studio など、さまざまな AWS サービスやウェブサイトに Amazon Q Developer は統合されています。AWS アカウントでログインすれば、各サービスの UI に組み込まれた Amazon Q Developer アイコンから簡単にアクセスできます。

  • AWS マネジメントコンソール上のアイコンをクリックするとチャットウィンドウが開き、自然言語 (英語) で AWS リソースの操作方法を質問できます。
  • AWS Lambda コンソール上で Amazon Q Developer によるコーディングサポートを受けられます。
  • Amazon SageMaker Studio の統合環境でも Amazon Q Developer によるモデル開発のサポートが利用できます。

各種 AWS サービス上での Amazon Q Developer の利用について詳しくは、「AWS アプリやウェブサイトでの Amazon Q Developer の使用」をご覧ください。

さらに、Amazon EC2Amazon ECSAmazon S3AWS Lambda の AWS マネジメントコンソールを利用中には、エラーが発生した場合に Amazon Q Developer がその原因診断と解決手順を自然言語で案内する「エラー診断」機能が提供されています。各種設定やリソースの不明点、エラーの原因と対処方法について、画面操作をしながら直接サポートを受けられるため、コンソールやサービスをより直感的に利用できます。エラー診断機能については、「Amazon Q Developer によるコンソールでの一般的なエラーの診断」をご覧ください。

統合開発環境 (IDE) の場合

IDE のコードエディタ上で Amazon Q Developer を利用する手順は以下のとおりです。

1. 利用する IDE に合わせて、専用のプラグインまたは拡張機能をインストールします。

  • JetBrains IDEs (IntelliJ IDEA、PyCharm など):
    JetBrains Marketplace から Amazon Q プラグインをインストールします。
  • Visual Studio Code:
    Visual Studio Code の拡張機能から Amazon Q プラグインをインストールします。
  • Visual Studio:
    Visual Studio Marketplace から AWS Toolkit with Amazon Q プラグインをインストールします。

2. 無料利用枠のユーザーの場合は AWS Builder ID で、Amazon Q Developer Pro ユーザーの場合は AWS IAM Identity Center で、AWS の認証情報を使ってサインインします。

3. IDE のコードエディタ上で以下のように Amazon Q Developer を利用できます。

  • 自然言語でコーディングのサポートを求める (例:"Explain selected code")
  • インラインでコード補完の提案を受ける
  • セキュリティスキャンを実行する

IDE 上での Amazon Q Developer は、コード補完やセキュリティスキャンなど、様々な機能を提供しています。さらに、JetBrains IDEsVisual Studio Code では、カスタマイズ機能やエージェント機能など高度な機能も利用できます。高度な機能について詳しくは、次セクションの「IDE での高度な機能」をご覧ください。

IDE 上での Amazon Q Developer の利用について詳しくは、「IDE での Amazon Q デベロッパーの使用」をご覧ください。

Amazon Q Developer の活用により、開発者は業務の流れを中断することなく、さまざまな環境で生成 AI によるサポートを受けられるのが大きな利点です。IDE や CLI、さまざまな AWS サービスに深く統合されていることで、開発環境を選ばずシームレスにコーディング支援機能が提供されます。


IDE での高度な機能

JetBrains IDEs または Visual Studio CodeAmazon Q Developer を利用する場合、チャットやインラインでのコーディング支援に加え、カスタマイズやエージェントなどの高度な機能が利用できます。

カスタマイズ機能

Amazon Q Developer では、GitHubGitLabBitbucket などサードパーティーの Git クライアントや、Amazon S3 上に格納された固有のコードベースを接続することで、カスタマイズ機能を利用してそれらのコードベースに基づいたコード提案を行えるようになります。カスタマイズ機能を活用することで、Amazon Q Developer はチームのコーディング慣習に合わせたコード提案ができ、開発者の生産性が向上とコードベース全体の一貫性の維持が実現できます。

  • 組織のコーディングスタイルに合わせたコード提案:
    組織内で使用している独自のライブラリ、API、アーキテクチャパターンなどに基づいて、Amazon Q Developer がコード提案を行うようになります。
  • 組織のコードベースに基づいたカスタマイズ:
    組織の独自のコードベースを接続することで、Amazon Q Developer がそのコードベースに基づいた提案を行えるようになります。
  • コーディングベストプラクティスの反映:
    組織のコーディングスタイルやベストプラクティスに基づいて、Amazon Q Developer からのコード提案がカスタマイズされます。

画像をクリックすると拡大します

現在、カスタマイズ機能は、Java、JavaScript、TypeScript、Python で記述されたコードベースをサポートしています。内部コードに基づいて最大 8 つのカスタマイズを作成でき、同時に最大 2 つのカスタマイズをアクティブにできます。

機能 説明
サポート言語 / 拡張子 Java (.java)、JavaScript (.js、.jsx)、Python (.py)、TypeScript (.ts、.tsx)
データソースサイズ 最小 2MB、最大 20GB
最大カスタマイズ数 / 同時アクティブ化可能数 8 つ、2 つ
データソース GitHub、GitLab、Bitbucket、Amazon S3
カスタマイズ評価 有効性スコア付けと最適化提案
ログ出力 Amazon CloudWatch Logs、Amazon S3、Amazon Data Firehose

カスタマイズ機能について詳しくは、「提案のカスタマイズ」をご覧ください。

Amazon Q Developer Agent

Amazon Q Developer には、IDE の中でチャットコマンドを実行することで呼び出せる、高度な機能を提供する「エージェント」が用意されています。2024 年 10 月現在、「Agent for code transformation」と「Agent for software development」の 2 つのエージェントが JetBrains IDEsVisual Studio Code で提供されています。

Agent for code transformation

既存の Java 8 または 11 の Maven プロジェクトを Java 17 に変換します。

機能

  • コードの自動アップグレード
  • 変換プランの生成
  • 変換後のコードの最適化とリファクタリング支援

コマンド

/transform

使い方

IDE で変換元の Java プロジェクトを開いた状態で、Amazon Q チャットウィンドウに「/transform」と入力します。Amazon Q Developer が変換計画に基づきコードと依存ライブラリをアップグレードし、ユニットテストを自動で実行・修正します。最終的に変更ファイルの差分が表示されるので、開発者は変更内容を確認し、問題がなければ受け入れます。

Agent for software development

ワークスペース内の複数のファイルにわたって、新機能の設計、実装、テストなどをサポートします。

機能

  • 設計に基づくコード実装の提案
  • コードレビューやリファクタリングの提案
  • テストコードの自動生成

コマンド

/dev (新機能実装に関するプロンプト)

使い方

Amazon Q チャットウィンドウに「/dev Implement an order processing feature」など新機能実装に関するプロンプトを入力します。現在開いているワークスペースのコードベースに基づいて、新機能のコード実装を提案し、単体テスト・インテグレーションテストを自動生成します。開発者はコードとテストを確認し、問題がなければ受け入れます。

なお、Agent for code transformation では近日中に、.NET Framework アプリケーション を クロスプラットフォームの .NET へと変換機能のリリースが予定されています。これにより、Windows アプリケーションを Linux に移行するプロセスが大幅に高速化されることが期待できます。

JetBrains IDEs または Visual Studio Code で利用可能な高度な機能について詳しくは、「IDE での Amazon Q デベロッパーの使用」をご覧ください。 


モニタリングとログ監視

Amazon Q Developer は、Amazon CloudWatchAWS CloudTrail と連携しており、管理者は容易にサービスの利用状況を把握し、パフォーマンスを監視することができます。

ダッシュボード

Amazon Q Developer 管理者は、専用のダッシュボードからサービスの利用状況を視覚的に確認できます。ダッシュボードには以下の主要な指標が、Amazon CloudWatch から取得されたデータに基づいて表示されます。

これらの指標は、日次や月次、プログラミング言語別などでフィルタリングして確認できます。指標の推移を見ることで、管理者は Amazon Q Developer の利用状況や課題を把握し、改善の糸口を見つけることができます。

画像をクリックすると拡大します

カテゴリ 指標 説明
ユーザー活動 有料ユーザー数 Amazon Q Developer Pro サブスクリプションを持つユーザー数
日次アクティブユーザー数推移 日々のアクティブユーザー数の推移グラフ
コーディング支援 生成された行数 IDE で Amazon Q により生成されたコード行数
受入率 Amazon Q Developer の提案を受け入れた割合
参照付き提案の受入数 オープンソースコードを参照して生成された受け入れ提案数
セキュリティスキャン スキャン実行数 IDE でセキュリティスキャンを実行した回数

ログ監視

Amazon Q Developer は、AWS CloudTrail とも統合されており、サービスへの API コールの詳細をログに記録できます。ログには以下の情報が含まれます。

  • コール元の IP アドレス
  • コール元の IAM ユーザー
  • コール時刻
  • コールされた API とパラメータ
  • レスポンスの内容

さらに、Amazon Q Developer が IAM ユーザーに代わり他の AWS サービスの API を呼び出した場合、その API コールの詳細も同様にログに記録されます。ログは S3 バケットに継続的に配信でき、長期的な保存と監査への活用が可能です。ログを収集・分析することで、セキュリティ監査や問題の原因特定に役立てられます。

Amazon Q Developer のモニタリングについて詳しくは、「Amazon Q Developer のモニタリング」をご覧ください。


セキュリティ管理と脆弱性検知

Amazon Q Developer では、開発プロセス全体を通じてセキュリティを確保するための強力な機能が提供されています。堅牢なセキュリティ環境の構築と、コードの脆弱性を検知するセキュリティスキャンにより、セキュアなアプリケーション開発をサポートします。

セキュリティ管理

Amazon Q Developer は、堅牢なセキュリティ環境を実現するため、以下のようなセキュリティ管理を講じています。

  • データ保護:
    Amazon Q Developer では、データ保護について AWS と顧客で責任を共有する共有責任モデルが適用されます。通信は TLS 1.2 以上で暗号化され、Amazon DynamoDB や Amazon S3 に保存されるデータは、AWS マネージドキーで自動的に暗号化されます。
  • アクセス制御:
    IAM ポリシーを使って、Amazon Q Developer へのアクセスを細かく制御できます。例えば、管理者には「AmazonQFullAccess」ポリシーを、一般ユーザーには「AmazonQDeveloperAccess」ポリシーを割り当てることで、ロールごとに権限を分けることができます。
  • コンプライアンス準拠:
    Amazon Q Developer は、AWS のセキュリティ基準に準拠し、第三者監査機関による定期的な監査を受けています。PCI DSS、HIPAA、FedRAMP など主要な規制・基準のコンプライアンス認証を維持しています。

画像をクリックすると拡大します

  • 耐障害性:
    Amazon Q Developer は、AWS のグローバルインフラストラクチャ上に構築されており、高可用性、高耐久性、スケーラビリティを備え、優れた耐障害性を提供します。
  • ネットワーク分離:
    インターフェイス VPC エンドポイントを設定することで、AWS Internet Gateway を経由せずに、AWS PrivateLink を介して AWS VPC と Amazon Q 間のプライベート接続を確立できます。

このように、データ保護、アクセス制御、コンプライアンス対応、耐障害性、ネットワーク分離など、多角的なセキュリティ対策が施されており、開発者は安心して利用できる堅牢な環境が提供されています。

Amazon Q Developer のセキュリティ管理について詳しくは、「Amazon Q Developer のセキュリティ」をご覧ください。

セキュリティスキャン

Amazon Q Developer には、コード脆弱性を検知するセキュリティスキャン機能が備わっています。この機能を利用すると、IDE で開発中のコードに対してリアルタイムでセキュリティスキャンが実行され、潜在的な脆弱性が検出された場合に警告が表示されます。

スキャンの種類

Amazon Q Developer のセキュリティスキャンでは以下のような検出が可能です。

  • コードセキュリティスキャン:
    静的解析 (SAST)、機密情報検知、IaC コードファイルスキャンによりコードのセキュリティポリシー違反や脆弱性を検出します。
  • コード品質スキャン:
    パフォーマンス性能や、機械学習ルール、AWS ベストプラクティスなどコード品質に関わる問題を検出します。

スキャンを実行すると、検出された脆弱性や問題がファインディングとして報告されます。一部のファインディングには自動修正機能があり、コードを自動的に修正できます。

スキャンの実行タイミング

スキャンの実行タイミングは、リアルタイムスキャンのオートスキャンと手動でスキャンを実行するプロジェクトスキャンの 2 種類があります。

  • オートスキャン (JetBrains IDEs、Visual Studio Code のみ / Amazon Q Developer Pro のみ):
    コーディング中のファイルに対し、リアルタイムでスキャンが実行されます。
  • プロジェクトスキャン:
    IDE からコードベース全体に対してスキャンを手動で実行できます。

検出結果は、IDE の Issue タブで確認でき、該当コード部分にジャンプして詳細を確認できます。自動修正が可能な場合はその機能を利用したり、Amazon Q に検出結果を送信して修正方法を確認することもできます。

このように、Amazon Q Developer は堅牢なセキュリティ環境の提供と、コード脆弱性の検知による支援を通じて、セキュアなアプリケーション開発を強力にサポートしています。
Amazon Q Developer のセキュリティスキャン機能について詳しくは、「Amazon Q によるコードのスキャン」をご覧ください。


その他のサービスとの連携

Amazon Q Developer は、直接統合されている IDE、CLI、AWS サービスの他にも、サードパーティーの外部アプリケーションを含めさまざまなサービスと連携することが可能です。

外部のチャットアプリとの連携

Amazon Q Developer は、AWS ChatbotSlackMicrosoft Teams などのサードパーティーのコラボレーションツールとも連携できます。これにより、IDE や CLI、AWS サービスなどの既存の開発環境に加え、チャットアプリの画面からも Amazon Q Developer を利用できるようになります。

Amazon Q Developer をチャットアプリで利用するには、以下の設定を行います。

  1. IAM ロールにマネージドポリシーを追加する:
    IAM コンソールで対象のロールに「AmazonQDeveloperAccess」ポリシーを割り当てます。管理者アクセス権が必要な場合は、代わりに「AmazonQFullAccess」ポリシーを割り当てます。
  2. チャネルのガードレールにポリシーを設定する:
    AWS Chatbot コンソールで Microsoft Teams または Slack クライアント、チャネル、アクセスロールとして手順 1 の IAM ロールを設定します。チャネルのガードレールとして「AmazonQDeveloperAccess」または「AmazonQFullAccess」ポリシーを割り当てます。
  3. チャットアプリから Amazon Q Developer を呼び出す:
    指定のチャネル上から「@aws 質問文」と入力すれば、Amazon Q Developer に質問を投げかけられます。

画像をクリックすると拡大します

例えば、Slack 上で「@aws how do I troubleshoot lambda concurrency issues?」と質問すると、AWS Chatbot がこれを Amazon Q Developer に渡します。Amazon Q Developer が自然言語で「Lambda の同時実行数エラーの修正方法」について回答を生成し、チャットツール上に表示します。こうして、使い慣れたチャットアプリから AWS サービスの利用方法、コーディングのベストプラクティス、アーキテクチャ設計など、さまざまな開発支援を受けることができます。

AWS Chatbot を経由した外部のチャットアプリと Amazon Q Developer との連携方法について詳しくは、「AWS Chatbot で Amazon Q Developer とのチャット」をご覧ください。

その他 AWS サービスとの連携

Amazon Q Developer は、既存の AWS サービスとも緊密に連携しています。例えばデータ統合サービス AWS Glue や統合ソフトウェア開発サービス Amazon CodeCatalyst と連携することで自然言語によるアシストを可能にしています。

  • Amazon Q data integration in AWS Glue
    AWS Glue の ETL (データ抽出、変換、ロード) ワークフローに Amazon Q Developer を組み込むことができます。自然言語の質問で、ETL の手順を生成できます。
  • Amazon Q in Amazon CodeCatalyst
    Amazon CodeCatalyst では、Amazon Q Developer を利用してコード生成やコード補完を行えます。自然言語の指示に基づき、コード、テスト、プルリクエストなどを作成できます。

このように Amazon Q Developer は、既存の AWS サービスの機能を自然言語による AI アシストで拡張します。

Amazon Q シリーズ

Amazon Q Developer は、Amazon Q シリーズの一部です。Amazon Q シリーズには他にも以下のようなサービスがあり、非常に多岐にわたる分野をカバーしています。

サービス名 説明
Amazon Q Business 企業データと連携した生成 AI アシスタント。質問応答、要約、社内プロセス連携が可能。
Amazon Q in QuickSight Amazon QuickSight に生成 BI 機能を提供。自然言語でのデータ分析、可視化をサポート。
Amazon Q in Connect コールセンター業務の自動化・効率化を行う生成 AI アシスタント。会話分析と推奨応答の提示。
Amazon Q in AWS Supply Chain サプライチェーンの状況分析と意思決定をサポートする生成 AI アシスタント (リリース予定)。

このように Amazon Q シリーズは、実行環境を問わず幅広い領域に対して生成 AI アシスタント機能を提供しています。なお、Amazon Q Business について詳しくは、2024 年 9 月号の builders.flash 記事「Amazon Q Business をグラレコで解説」をご覧ください。


Amazon Q Developer の料金体系

Amazon Q Developer は、企業のニーズに応じた柔軟な料金プランを提供しています。

利用料金

Amazon Q Developer の料金体系は、サブスクリプション料金と従量課金の 2 つから構成されています。

サブスクリプション料金

Amazon Q Developer には、機能とユーザー数に応じて選択できる 2 つのサブスクリプションプランがあります。

プラン 月額料金 機能
Amazon Q Developer 無料利用枠 無料 IDE や CLI でのコード補完、セキュリティスキャンなどの基本機能が利用可能。高度な機能の利用には制限あり。
Amazon Q Developer Pro 19USD/ユーザー アプリ機能の自動構築、コード変換・移行の自動化、データ統合・モデル構築支援などの高度な機能が無制限で利用可能。

従量課金

一部の機能については、無料利用分を超えた場合に従量課金されます。主な従量課金対象と無料利用上限は以下の通りです。

対象機能 無料利用枠 Amazon Q Developer Pro 超過分
Agent for code transformation 月 1,000 行まで無料 月 4,000 行まで無料 変換対象コード行数に応じて従量課金
セキュリティスキャン 月 50 プロジェクトまで無料 月 500 プロジェクトまで無料 スキャン対象プロジェクト数に応じて従量課金

その他

  • Amazon Q Developer Pro には 30 日間の無料トライアル期間があります。
  • サブスクリプションプランによって、その他の機能にも利用制限があります。
  • 請求はユーザー単位ですが、コード変換の従量課金部分はアカウントレベルでプールされた上限が適用されます。
  • 利用可能なリージョンによっても無料利用枠の制限が変わります。

画像をクリックすると拡大します

導入コストの試算例

100 名の開発者が Amazon Q Developer Pro を利用する場合の月額コストの計算方法は以下のとおりです。

料金 内訳
サブスクリプション料金 19 USD x 100 名 = 1,900 USD/ 月
コード変換・移行 5,000 行 - 4,000 行 (無料分) = 1,000 行 x 0.003USD/ 行 = 3 USD
セキュリティスキャン 100 プロジェクト - 500 プロジェクト (無料分) = 0 USD
月額コスト合計 1,903 USD

Amazon Q Developer の料金体系について詳しくは、「Amazon Q Developer の料金」をご覧ください。


まとめ

最後に、本記事で紹介した機能の全体図を見てみましょう。

画像をクリックすると拡大します

2024 年 4 月 30 日に従来のコーディングアシスタントサービス Amazon CodeWhisperer は、Amazon Q Developer に統合されました。Amazon Q Developer では今後も機能追加やサポート言語の拡大、提供リージョンの変更などが予想されます。Amazon Q Developer の最新の情報を入手するには、「Amazon Q Developer Changelog」を定期的に確認することをおすすめします。

さらに Amazon Q Developer の機能や使い方を知りたい場合は、製品ページ や AWS ブログYouTube 動画 などの資料もあわせてご覧ください。生成 AI の力を最大限に活用し、開発者の生産性向上とイノベーションの加速を実現する Amazon Q Developer の活用を是非ご検討ください。

AWS グラレコ解説のその他の記事はこちら

選択
  • 選択
  • 今話題のブロックチェーンをAWSで実現する仕組みをグラレコで解説 »
  • サーバーレスって何が便利なの ? AWS でサーバーレスを構築するためのサービスをグラレコで解説 »
  • 機械学習のワークフローってどうなっているの ? AWS の機械学習サービスをグラレコで解説 »
  • 外部から AWS のバックエンドサービス利用を実現する仕組みをグラレコで解説 »
  • AWS でデプロイの自動化を実現するベストプラクティスをグラレコで解説 »
  • コンテナを使ってモノリスを分割する方法をグラレコで解説 »
  • クラウドへ移行する理由とそのステップをグラレコで解説 »
  • Windows ワークロードをクラウドへ移行するためのベストプラクティスをグラレコで解説 »
  • サーバーレスのイベントバスって何 ? Amazon EventBridge をグラレコで解説 »
  • サーバーレスで SaaS を構築する方法をグラレコで解説 »
  • 「あなたへのおすすめ」はどう生成するの ? Amazon Personalize で簡単に実現する方法をグラレコで解説 »
  • クラウド設計・運用のベストプラクティス集「AWS Well-Architectedフレームワーク」をグラレコで解説 »
  • 特定の顧客セグメントにメッセージ送信。「Amazon Pinpoint」の仕組みをグラレコで解説 »
  • アプリにユーザー認証機能を簡単に追加できる「Amazon Cognito」をグラレコで解説 »
  • わずか数分で WordPress サイトを構築できる「Amazon Lightsail」をグラレコで解説 »
  • 異なるアプリケーション同士の疎結合を実現。「Amazon SQS」をグラレコで解説 »
  • Web アプリを高速に開発できる「AWS Amplify」をグラレコで解説 »
  • 機械学習の知識ゼロでもテキストデータを分析。Amazon Comprehend をグラレコで解説 »
  • ビジネスデータをまとめて可視化 & 分析。Amazon QuickSight をグラレコで解説
  • 人工衛星の地上局を 1 分単位で利用。AWS Ground Station をグラレコで解説
  • カオスエンジニアリングで本当にカオスにならないための進め方をグラレコで解説
  • GraphQL API を簡単に作成 & 運用。AWS AppSync をグラレコで解説
  • IoT 環境を必要な機能を選択するだけで構築。AWS IoT をグラレコで解説
  • 高い可用性と耐久性のオブジェクトストレージ。Amazon S3 をグラレコで解説
  • サーバーレスでイベント駆動型アプリケーションを実現。AWS Lambda をグラレコで解説
  • データサイエンス教育の強い味方。Amazon SageMaker Studio Lab をグラレコで解説
  • 高速で柔軟な NoSQL データベースサービス。Amazon DynamoDB をグラレコで解説
  • リレーショナルデータベースを簡単・迅速に実現。Amazon RDS をグラレコで解説
  • アプリのワークフローを視覚的に構成。 AWS Step Functions をグラレコで解説
  • データ保護に使う暗号化キーを一元管理。AWS KMS をグラレコで解説
  • アプリケーションへのトラフィックを効率的に負荷分散。Application Load Balancer をグラレコで解説
  • AWS で簡単にコンテナアプリケーションを構築 ! Amazon ECS をグラレコで解説
  • 大規模データセットも簡単クエリ! Amazon Athena をグラレコで解説
  • キャッシュ機能でアプリの高速化を実現 ! Amazon ElastiCache をグラレコで解説
  • 使い慣れたプログラミング言語でクラウド環境を構築 ! AWS CDK をグラレコで解説
  • ストリーミングデータを簡単にキャプチャ、処理、保存 ! Amazon Kinesis Data Streams をグラレコで解説
  • AWS で始める機械学習はじめの一歩 ! AWS の主要な AI/ML サービスをグラレコで解説
  • リレーショナルデータベースをサーバーレス化 ! Amazon Aurora Serverless をグラレコで解説
  • ML 駆動の検索エンジンで企業の情報管理を革新! Amazon Kendra をグラレコで解説
  • オンプレミス、エッジ、どこでも楽々コンテナ管理 ! Amazon EKS Anywhere をグラレコで解説
  • 生成 AI アプリケーション開発をもっと身近に、簡単に ! Amazon Bedrock をグラレコで解説
  • わずか数クリックで多様な脅威を監視しクラウドを保護 ! 脅威検出サービス Amazon GuardDuty をグラレコで解説
  • データの改ざん耐性と変更履歴の検証可能性を実現 ! 台帳データベース Amazon QLDB をグラレコで解説
  • 生成 AI x クラウドがもたらす次世代のイノベーション ! AWS Summit Japan Day 1 基調講演をグラレコで解説
  • ビジネス向け生成 AI アシスタント Amazon Q Business をグラレコで解説
  • 生成 AI コーディングアシスタント Amazon Q Developer をグラレコで解説
  • フロントエンドとバックエンドを統合開発 ! フルスタック TypeScript 開発環境 AWS Amplify Gen 2 をグラレコで解説

builders.flash メールメンバーへ登録することで
AWS のベストプラクティスを毎月無料でお試しいただけます

筆者プロフィール

米倉 裕基
アマゾン ウェブ サービス ジャパン合同会社
テクニカルライター・イラストレーター

日英テクニカルライター・イラストレーター・ドキュメントエンジニアとして、各種エンジニア向け技術文書の制作を行ってきました。
趣味は娘に隠れてホラーゲームをプレイすることと、暗号通貨自動取引ボットの開発です。
現在、AWS や機械学習、ブロックチェーン関連の資格取得に向け勉強中です。

監修者プロフィール

金森 正雄
アマゾン ウェブ サービス ジャパン合同会社
デベロッパースペシャリスト ソリューションアーキテクト

Web、モバイル向けの自社サービスの開発やクラウドを活用したシステムの請負開発を経験後、パートナーソリューションアーキテクトとして、アマゾン ウェブ サービス ジャパン合同会社に入社。2021 年から DevAx チームとして、開発者の方に向けたイベントやワークショップの提供を中心に活動。
最近の個人的ニュースは家の近くのラーメン屋で、「まさお」という自分の名前と同じメニューがあったこと。

大渕 麻莉
アマゾン ウェブ サービス ジャパン合同会社
機械学習ソリューションアーキテクト

組込みソフトウェア開発から画像処理アルゴリズム開発を経てクラウドに到達し、2019 年にアマゾン ウェブ サービス ジャパン合同会社に入社。以来、社内外のイベントで機械学習セッションをしたりサンプルコードを書いたりしながら、お客様の機械学習導入・運用の技術サポートに従事。
脳内 CPU の半分が猫のことで占められており、視界に入るすべての生き物がうちの猫に見えるという日々を過ごしている。

井形 健太郎
アマゾン ウェブ サービス ジャパン合同会社
Data&AI 事業統括本部 事業開発マネージャー

ネットワーク~アプリの運用現場の責任者やデータサイエンティストとしての経験を経て、2022 年にアマゾン ウェブ サービス ジャパン合同会社に入社。Amazon Redshift のカスタマサクセスを通じて日本の多くのエンタープライズ企業のサポートを経験し、2024 年 4 月より AI、ML サービスの事業開発マネージャーに着任。

AWS を無料でお試しいただけます

AWS 無料利用枠の詳細はこちら ≫
5 ステップでアカウント作成できます
無料サインアップ ≫
ご不明な点がおありですか?
日本担当チームへ相談する