みなさん、こんにちは。小寺です。

先日、CodeWispereがGAになった記事を公開させていただきましたが、入力された情報が学習のために保存され、再利用されることがあるのか?というご質問をいただきましたので、ここでも共有いたします!

CodeWhispererで収集されたデータの取り扱い

デフォルトでは、CodeWhisperer によって収集されたデータは、Amazon Simple Storage Service と Amazon DynamoDB を使用して保存されます。データは、ビルダー ID 所有のキーを使用して保存データ暗号化機能を使用して暗号化されます。 この箇所が気になる部分ですよね。

Encryption of data at rest – By default data collected by CodeWhisperer is stored using Amazon Simple Storage Service and Amazon DynamoDB. The data is encrypted using their data-at-rest encryption capabilities with a Builder ID-owned key.

https://docs.aws.amazon.com/codewhisperer/latest/userguide/whisper-data-protection.html

AWSサポートに問い合わせした結果、 サービス向上を目的として以下の2パターンでデータを保管されることがある!とのことです。 CodeWhisperer Indivisualを利用する場合に限られます。

  1. クライアント側のテレメトリ・使用状況のメトリクス
  2. 利用中のコンテンツ

CodeWhispererで収集されたデータを保管されないためには

結論、CodeWhisperer Professionalを使いましょう。デフォルトで 2 のコンテンツについての保存・使用はされないです。 組織でのご利用をいただく場合には、Professional tierの利用が推奨です、とのことでした。(2023年4月23日時点の情報です)

コンテンツには、CodeWhisperer が提案を生成するために使用するコードの一部と、提案自体のコンテンツが含まれます。
プロフェッショナル層を使えば、CodeWhisperer はサービス改善の目的でコンテンツを収集しません。

クライアント側のテレメトリは、サービスの使用状況を定量化します。
たとえば、AWS は、推奨事項を受け入れるか拒否するかを追跡する場合があります。クライアント側のテレメトリには実際のコードは含まれておらず、IP アドレスなどの個人を特定できる情報 (PII) も含まれません。

データ共有をオプトアウトするには、クライアント側のテレメトリー側で設定がまず可能です。


                            This is my image.
参照:https://docs.aws.amazon.com/codewhisperer/latest/userguide/sharing-data.html

合わせてコンテントの共有も設定が可能です。


                            This is my image.
参照:https://docs.aws.amazon.com/codewhisperer/latest/userguide/sharing-data.html

いかがでしたでしょうか。Individual版として無料で使って、 サービス向上を目的としてデータ活用に貢献する、というのはもちろんありだと思います。提案が使われたかどうか?もサービス提供側としては知りたいところですよね。

今後活用を予定されている方のお役に立てれば幸いです。