Amazon Q Developer のよくある質問

Amazon Q Developer

Amazon Q Developer リファレンストラッカーは、コードの提案が、公開されているコードと類似している可能性がないかどうかを検出します。リファレンストラッカーは、リポジトリ URL やプロジェクトライセンス情報を使用してこのような提案にフラグを付けたり、(オプションで) フィルタリングして除外したりできます。これにより、リファレンス付きのコードを簡単に検索して確認し、別のプロジェクトのコンテキストでどのように使用されているかを確認してから、そのコードの使用を決定することができます。コードフローが妨げられていない状況を確実に維持するために、すべてのリファレンスはログ記録され、後で確認できるようになっています。そのため、中断することなくコーディングを続けることができます。

ユーザーがコードを記述すると、Amazon Q Developer は英語のコメントと周囲のコードを分析して、現在のタスクを完了するために必要なコードを推測します。Amazon Q Developer は、1 つ以上のコードスニペットをコードエディタで直接提案し、作業を加速します。Amazon Q Developer によるコードの提案は、オープンソースや Amazon のコードなど、数十億行のコードでトレーニングされた大規模言語モデル (LLM) に基づいています。すばやく、より簡単に最上位の提案を受け入れたり (タブキー)、その他の提案を表示したり (矢印キー)、引き続き独自のコードを記述したりできます。コードの提案を受け入れる前に必ずその内容を確認してください。その結果、そのコードが意図したとおりに動作するように編集する必要がある場合があります。

Amazon Q Developer は、コードスニペット、コメント、カーソルの位置、IDE で開いているファイルの内容などのコンテンツを、コードの提案を提供するための入力として使用します。

IDE と Amazon Q Developer サービスの間の安全な通信を確保するために、コンテンツは TLS プロトコルを使用して送信されます。盗聴や中間者攻撃を防ぐため、コンテンツは転送中に暗号化されます。Amazon Q Developer Free Tier のユーザーの場合、当社はユーザーの設定に基づいて、サービスの改善の目的でコンテンツを保持する場合があります。このコンテンツは、保管中の暗号化と厳格なアクセスコントロールを使用して、安全な方法で保管されます。

AWS Toolkit for VS Code および JetBrains の一部として利用できる Amazon Q Developer は現在、Python、Java、JavaScript、TypeScript、C#、Go、Rust、PHP、Ruby、Kotlin、C、C++、シェルスクリプト、SQL、Scala、JSON、YAML、HCL をサポートしています。VS Code と、IntelliJ、PyCharm、GoLand、CLion、PhpStorm、RubyMine、Rider、WebStorm、DataGrip、Visual Studio を含む JetBrains の IDE ファミリーに加えて、Amazon Q Developer は、AWS Cloud9、Lambda コンソール、JupyterLab、Amazon SageMaker Studio で使用できます。Amazon Q Developer は、macOS ターミナル、iTerm2、組み込みの VS Code ターミナルなど、お気に入りのコマンドラインでも使用できます。

コードをスキャンして見つけにくいセキュリティの脆弱性を特定し、特定された問題の修正に役立つコード候補を得ることができます。組み込みのセキュリティスキャンの目的は、漏えいした認証情報やログインジェクションなどの問題を検出することです。生成 AI を利用したコード提案は、特定された脆弱性の修復に役立ち、アプリケーションコードに合わせてカスタマイズされるため、自信をもって修正を迅速に受け入れることができます。セキュリティスキャンは、Java、Python、JavaScript、TypeScript、C#、AWS CloudFormation (YAML、JSON)、AWS Cloud Development Kit (AWS CDK) (TypeScript、Python)、および HashiCorp Terraform (HCL) で利用できます。脆弱性を修正するコード提案は現在、Java、Python、JavaScript で記述されたコードに対応しています。

生成 AI として、Amazon Q Developer は、基礎となるモデルがトレーニングされたコードと、コードやコメントで提供されたコンテキストから学習した内容に基づいて、新しいコードを作成します。Amazon Q Developer はトレーニングデータからコードを再現するようには設計されていませんが、まれに公開されているコードにほぼ一致するコードを生成する可能性があります。Amazon Q Developer の出力が一般に公開されているコードと一致することを検出した場合、組み込みのリファレンストラッカーは、ライセンスのタイプ (例: MIT や Apache) と、一般に公開されているコードの URL へのリファレンスをユーザーに通知します。これにより、リファレンス付きのコードを簡単に検索して確認し、別のプロジェクトのコンテキストでどのように使用されているかを確認してから、そのコードを使用するかどうかを決定することができます。コーディングフローが妨げられていない状況を確実に維持するために、すべてのリファレンスはログ記録され、後で確認できるため、中断することなくコーディングを続けることができます。

はい。Amazon Q Developer の構成設定では、[コードリファレンスを持つ提案を含む] オプションの選択を解除できます。これにより、Amazon Q Developer は、ライセンスされた既知のオープンソースコードへのリファレンスを持つ提案を提供しなくなります。Amazon Q Developer Free Tier のユーザーの場合、この設定は IDE でご利用いただけます。Amazon Q Developer Pro では、AWS 管理者はコンソールから組織レベルでこの設定を一元的に構成できます。

Amazon Q Developer は、有害なフレーズを含むコードの提案や、バイアスを示す一般的に知られているコード構造を含む提案を除外できます。

Amazon Q Developer は、セキュリティに脆弱性のあるコードが提案されないように設計されており、可能な限り多くのセキュリティの脆弱性が除外されます。ただし、Amazon Q Developer の生成的な性質を踏まえると、セキュリティ上の問題があるコードの提案を完全に排除することはできません。そのため、Amazon Q Developer は、Python、Java、および JavaScript プロジェクト内のセキュリティの脆弱性を検出する、組み込みのコードスキャン機能を備えています。これには、Amazon Q Developer からのコードの提案やユーザーが記述したコードが含まれます。

Amazon Q Developer は、Amazon やオープンソースコードなど、さまざまなデータソースでトレーニングされています。Amazon Q Developer は、英語のコメントからコードの提案を生成するようにトレーニングされ、検証されています。トレーニングデータセットにはさまざまな例が含まれているため、Amazon Q Developer は、英語以外の言語で記述されたコメントからコードの提案を提供できる可能性がありますが、これはサポートされていないユースケースです。

コマンドラインのための Amazon Q Developer は、コンテキスト CLI 補完、インラインドキュメント、AI の自然言語から Bash への翻訳により、デベロッパーがコマンドラインでより生産的になるのをサポートします。コマンドラインのための Amazon Q Developer は、デベロッパーの既存のコマンドラインと統合するため、デベロッパーは恩恵の享受を開始するために、使用するツールを変更する必要はありません。

ユーザーがコマンドラインに入力している最中に、Amazon Q Developer は 250 超の CLI ツールのためにインライン補完とドキュメントを表示します。

例えば、デベロッパーは「git」と入力すると、すべての git サブコマンド、オプション、引数のリストが、新しく使用された順に並べられて表示されます。また、デベロッパーは「npm install」と入力して、インストール可能なすべてのノードパッケージのリストを表示することもできます。さらに、デベロッパーは「aws」と入力して、使用可能なすべての AWS サブコマンドのリストを表示できます。

CLI のための Amazon Q Developer は、自然言語のテキストプロンプト (「私の最新の git コミットを元に戻してください」など) を受けて、すぐに実行可能な bash コードに変換できます。

使用を開始するのに必要なのは、Amazon Q を実行してプロンプトを挿入し、bash を実行することだけです。

はい。
1.「cw」を実行して設定ページを開きます。
2.CLI 完了タブを選択します。
3.ページの右上隅にあるスイッチを [オフ] に切り替えます。

コマンドラインのための Amazon Q Developer は現在、次のツールとの統合をサポートしています。
1.オペレーティングシステム: macOS
2.シェル: bash、zsh、fish
3.ターミナルエミュレーター: iTerm2、macOS ターミナル、Hyper、Tabby
4.IDE: VS コード内のターミナル
5) CLI: git、aws、docker、npm、yarn などの 250 以上の極めて人気のある CLI (Github をご覧ください)

macOS での Jetbrains IDE (Fleet を除く)、Alacritty、Kitty、Wezterm のサポートには、cw integrations install input method を実行します。

はい。Amazon Q Developer をカスタマイズして、社内ライブラリ、API、ベストプラクティス、アーキテクチャパターンを認識させることで、より関連性の高いインラインコードのレコメンデーションとチャット応答 (プレビュー) を生成できます。

現在、Java、JavaScript、TypeScript、および Python で記述されたコードベースで Amazon Q Developer のレコメンデーションをカスタマイズできます。Amazon Q Developer がサポートする他の言語 (C#、Go、Rust、PHP、Ruby、Kotlin、C、C++、シェルスクリプト、SQL、および Scala) で記述されたファイルは、カスタマイズを作成するときや、内部コードリポジトリに基づいて IDE でカスタマイズされたレコメンデーションを提供するときには使用されません。

内部コードベースに基づいて最大 8 つのカスタマイズを作成できます。同時に最大 2 つのコードのカスタマイズをアクティブに維持できます。

コンソールを使用して、コードリポジトリを Amazon Q Developer に安全に接続できます。Amazon Q Developer の管理者は、コンソールからプライベートなカスタマイズへのアクセスを管理でき、特定のデベロッパーだけがアクセスできるようにすることができます。

Amazon Q Developer では、無料の Free Tier と、ユーザーあたり 19 USD/月の Pro Tier の 2 つのプランをご利用いただけます。
4 月 30 日から 6 月 30 日まで、Amazon Q Developer Pro を無料でお試しいただけます。Amazon Q Developer Pro のサブスクリプションの請求は 7 月 1 日に開始されます。詳細については、Amazon Q Developer の料金をご覧ください。

はい。4 月 30 日の時点で、CodeWhisperer という名称を Amazon Q Developer に変更し、CodeWhisperer が提供するすべての機能は Amazon Q Developer の一部となりました。Amazon Q Developer のユーザーは、IDE またはコマンドラインにおける生成 AI を活用したインラインでのコードの提案、セキュリティの脆弱性のスキャンや修復などの機能を使用できます。詳細については、Amazon Q の一般提供の開始に関するお知らせをご覧ください。

名称変更の発効日は 2024 年 4 月 30 日です。なお、CodeWhisperer コンソールなどの他の変更が新しい Amazon Q Developer エクスペリエンスに切り替わるまでにはさらに数週間かかります。同日以降に CodeWhisperer のお客様が IDE にログインすると、名称変更が既に反映された状態となっています。

インラインでの提案、セキュリティスキャン、カスタマイズなどの CodeWhisperer のすべての機能は、AWS Toolkit を使用して、Visual Studio、VS Code、JetBrains で引き続きご利用いただけます。Lambda や Amazon Cloud9 など、これまで CodeWhisperer のインラインでのコーディングの提案をサポートしていたコンソール内のすべての環境は、引き続きその機能をサポートします。

CodeWhisperer Individual Tier をご利用のお客様は、Amazon Q Developer Free Tier をサブスクライブして、インラインでのコードの提案など、IDE や CLI で使い慣れた CodeWhisperer の機能を活用できます。

CodeWhisperer Professional をご利用のお客様は、2025 年 1 月 31 日までログインして CodeWhisperer コンソールを使用できます。2024 年 4 月 30 日以降、Amazon Q Developer Pro に手動で移行できるようになります。これには、IdC を通じた認証、組織のライセンスとポリシーの管理、ユーザーアクティビティダッシュボード、コードのカスタマイズ機能など、CodeWhisperer Professional のサブスクリプションによって提供されるすべての機能が含まれます。今後数週間以内に、よりシームレスな移行エクスペリエンスが CodeWhisperer コンソールで利用できるようになります。

Amazon Q Developer は、CodeWhisperer の使い慣れた機能に加えて、IDE での会話型コーディングや、ソフトウェア開発のための Amazon Q Developer エージェントなどの高度な機能も提供します。これにより、機能全体の作成と実装、コードの文書化、プロジェクトのスキャフォールディングに必要な時間を、シンプルなプロンプトで大幅に短縮できます。また、Amazon Q Developer を利用すると、お客様はアプリケーションのアップグレードにかかる時間を、数か月分、場合によっては数年分短縮することもできます。コード変換のための Amazon Q Developer エージェントを利用すると、コードのアップグレードと変換の完全なプロセスを自動化し、アプリケーションのアップグレードにかかる時間を数週間から数日、さらには数分に短縮できます。Amazon Q Developer はコード生成とガイダンスに優れている一方で、それ以上のこともできます。これは、デベロッパーが AWS のサービスとアーキテクチャに関するベストプラクティスについて学び、サービスエラーとネットワークの問題を診断して、インスタンスを選択し、SQL クエリと ETL パイプラインを最適化するのに役立ちます。詳細については、Amazon Q Developer の料金ページにアクセスしてください。

CodeWhisperer Individual Tier をご利用の場合、移行する必要はありません。AWS Toolkit の最新バージョンをダウンロードしてログインすると、Amazon Q Developer Free の IDE 用の完全な機能を利用できるようになります。また、Amazon Q Developer は、CodeWhisperer の IDE 設定も維持します。

CodeWhisperer Professional サブスクリプションをご利用の場合は、2025 年 1 月 31 日まで、移行することなく CodeWhisperer を利用し続けることができます。さらに、2024 年 4 月 30 日以降、最初に現在の CodeWhisperer アプリケーションをコンソールから削除し、次に Amazon Q Developer Pro サブスクリプションを作成して、関連するすべての個別ユーザーを追加することで、Amazon Q Developer Pro に手動で切り替えることもできます。

2024 年 4 月 30 日以降は、新しい CodeWhisperer アプリケーションまたはプロファイルを作成できなくなります。ただし、CodeWhisperer Professional サブスクリプションを利用しており、既にコンソールに CodeWhisperer アプリケーションとプロファイルがあるお客様は、引き続き個々のユーザーをアプリケーションに追加し、それらのユーザーが CodeWhisperer Professional Tier をサブスクライブするようにできます。Amazon Q Developer の使用を開始するには、「Amazon Q Getting Started」ページをご覧ください。

IDE での Amazon Q Developer は CodeWhisperer の IDE 設定を維持するため、サービスの改善のためのコンテンツの共有を既にオプトアウトしている場合、その設定は維持されます。Amazon Q Developer Free を新規にご利用のお客様は、希望する場合、IDE での Amazon Q のサービスの改善のためにコンテンツを共有することをオプトアウトする必要があります。