世界を動かす技術を、日本語で。

4月24日までにオプトアウトしない場合、GitHubがあなたのプライベートリポジトリで学習を行います

59日前

概要

  • GitHub Copilotの設定で自動的に機能が有効化されている問題
  • ユーザーが明示的にオプトアウトできる手順の紹介
  • プライバシーや利用選択の重要性
  • オプトアウト方法の具体的な案内
  • 利用者への注意喚起

GitHub Copilotの自動有効化とオプトアウト方法

  • GitHub Copilot の一部機能が デフォルトで有効化 されている現状
  • ユーザーが 明示的な同意なし に自動参加させられる仕組み
  • プライバシーや 個人情報管理 の観点から問題視される点
  • オプトアウト手順の案内
  • オプトアウト操作により 個人情報やコードの利用制限 が可能
  • 利用規約や設定内容を 定期的に確認 する重要性

ユーザーへの注意喚起

  • 自動有効化 された機能は、意図せず 情報共有や学習データ への組み込みにつながるリスク
  • オプトアウトを行うことで 意図しないデータ利用 を防止
  • プライバシー保護セキュリティ意識 の向上を促進
  • サービス利用時は 設定画面の確認 を習慣化

Hackerたちの意見

正確に言うと、オプトアウトはGitHub Copilotのトレーニングに特化したもので、彼らのポリシーでは常に公開リポジトリに対してオプトインが必要だったんだ。4月24日の変更は、プライベートリポジトリがデフォルトで含まれるようになるってこと。もしプライベートリポジトリでCopilotを使ってるなら、気をつけてオプトアウトした方がいいよ。設定はgithub.com/settings/copilotで、30秒もあれば終わるから。

前はオプトインじゃなかったんだよね。以前は使用についてのトレーニングもしてなかった。でも、他の製品が市場に出てきたから、彼らは使用についてトレーニングしてる。私たちは内部の使用についてちょうど1年以上トレーニングしてきて、かなりの改善が見られたよ。内部の使用についてのトレーニングから得られた改善の詳細は、この記事をチェックしてみてね: https://github.blog/news-insights/product-news/copilot-new-e...

俺は2023年からずっと言ってるけど、>「もしあなたのデータが企業が自由に読み取れるデータベースに保存されているなら(つまり、エンドツーエンドで暗号化されていない場合)、その企業は最終的に利用規約を更新して、あなたのデータをAIトレーニングに使うようになるよ。インセンティブが強すぎて抵抗できないから。」 https://news.ycombinator.com/item?id=37124188

プロのヒント:価格が妥当なときにビジネス版やエンタープライズ版にサインアップするのがいいよ。俺はGoogle Workspaceでこれをやってる。GitHubでもできるよ。(GoogleはWorkspaceのデータをトレーニングに使わないし、GitHubもビジネス顧客のデータをトレーニングに使わないからね。)

うん、君の言う通りだと思う。どんなに倫理的な会社でも、乗っ取られることがあるからね。例外もあるかもしれないけど、それは運が良いだけ。俺は絶対にそんなことをしないSP500の会社で働いてるけど、プロダクションアクセスを厳しく制限してるから、悪いスタッフがやることはできない。でも、ラリーやザッカーバーグ、ベゾスが買収したら、どうなるかわからないよね。

サービスありがとう。もっと「早期警告」を出してくれる「鉱山のカナリア」が必要だよね。一体2029年はどんな感じになると思う?(この話題に関連してね)

私はまだ、マイクロソフトが私のノートパソコンで書いたコードをAIのトレーニングに使うことに懸念を抱いている。アルミホイルの帽子をかぶったLinuxユーザーの言ってることがだんだん理解できるようになってきた。

それに、鍵を持っていないならエンドツーエンドで暗号化されてないから、無駄なことは避けて。

GitHubは一貫してバナーを表示してくれてるのは評価できる。ただ、俺はこのHNの見出しを見るまでそのバナーを読むことすらしなかったのが恥ずかしい。

そのバナー見たことないな。どこに表示されるの?

それって、GitHubサイトに行かずにコマンドラインからgitを使ったらどう役立つの?

この見出しは間違ってるよ。あなたのプライベートリポジトリをトレーニングデータセットにぶち込むわけじゃない。むしろ、GitHubはあなたのプライベートリポジトリでのCopilotとのやり取りをトレーニングするんだ。もしCopilotを使っていないなら、あなたには関係ないけど、やっぱりオフにしておいた方がいいかもね。

それも私の旗の読み方だね。でも、もし彼らがコパイロットを入力でトレーニングできるなら、コード自体でトレーニングできない理由はないと思う。裁判では、オプトインは入力からトレーニングできることを意味すると言うだけだろう。それが私たちがやったこと全部だ。

いや、そんなことはしないよ。詳細はここにあるよ https://github.blog/news-insights/company-news/updates-to-gi... 無料、Pro、Pro+ Copilotのユーザーは、オプトアウトしなければ、Copilotの使用データを収集してモデルのトレーニングに使うようになるよ。ビジネスやProのサブスクライバーなら、使用データでトレーニングはしないから。ブログ記事にはもっと詳しいことが書いてあるけど、プライベートリポジトリのデータは静止状態ではトレーニングしないし、Copilotとのやり取りデータだけを使うんだ。もしCopilotを使っていないなら、あなたには影響しないよ。でも、今オプトアウトすることもできるし、将来Copilotを使い始めるときもその設定は保持されるから、参考になればいいな。

それはちょっと細かすぎる気がする。> インタラクションデータ—具体的には入力、出力、コードスニペット、関連するコンテキスト[...]は、私たちのAIモデルをトレーニングして改善するために使われる だから、プライベートリポジトリでCopilotを使うと、そのリポジトリの多くがCopilotのコンテキストとして使われることになるから、GitHubは以前はそうじゃなかったのに、あなたのプライベートリポジトリをトレーニングデータとして使うことになるんだよね。

昔は誰かがHNの記事を社内のSlackに投稿して、自分の意見に有利に話を進めてたな。今でもそういうことが続いてるのを見ると嬉しい! :D

それでもかなり悪いよ。すべてのコードがLLMのトレーニングセットを通過して、誰でも見れるようになるなら、もはやプライベートじゃないじゃん。プライベートに保ちたいコードにCopilotを使う理由なんてないよ。プライベートリポジトリとラベルを付けて、利用規約に「私たちはあなたのコードを取り上げてみんなに見せることができる」って小さな条項を入れるのは、ただの正直な嘘だよ。

最初のタイトルと君の返信は、ちょっと広すぎて正確じゃないよ。4月24日までにGithubはプライベートリポジトリでトレーニングを行うけど(フラグが設定されてないと仮定して)、この変更はビジネス/プロユーザー以外に限られてる。だから、いくつかのプライベートリポジトリには影響が出るけど、すべてのプライベートリポジトリに自動的に影響するわけじゃない(だから、うちの法人アカウントを慌てて確認する必要はなかった)。君がGithubの広報担当かどうかは分からないけど、言葉には気をつけた方がいいよ。「いいえ、影響しません」と言う代わりに、「それは完全には正しくない」とか言った方が適切だよ。結局、元の投稿のタイトルも君の返信も、誤解を招く結果になっちゃったね。

EUでは、オプトアウトは必要な同意を得るための法的に有効な方法じゃないよ。これについてどう対処するつもり?

もしCopilotが後で「Copilotを使ってリポジトリの脆弱性をスキャンする」みたいな機能を追加したら、それは君の基準にも合うし、元の投稿者の怒りを煽ることにもなるね!もちろん、Microsoftがそんなことをするわけないよね?

「Copilotを使わないなら、これは影響しません。」プライベートリポジトリで追加のコントリビューターにアクセスが許可されている場合、これはどうなるの?どの設定が参照されるの?

誰かが非常に敏感な秘密(たとえば、ビットコインのプライベートキー)を自分のプライベートなGithubリポジトリに持っていて、そのリポジトリでコパイロットを使ってその秘密に触れた場合、その設定を切り替えてもその秘密が漏れる可能性に影響がないと保証できる?アカウントがビジネスかフリーかによっても影響を受けないってこと?

これは、あの有効/無効ダイアログのテキストによると、違いのない区別だね。> GitHubが私のデータをAIモデルのトレーニングに使うことを許可する: GitHubが私の入力、出力、関連するコンテキストを収集して使用し、AIモデルをトレーニングして改善することを許可する。プライバシー声明で詳しく読むことができる。「関連するコンテキスト」はリポジトリのことだ。コパイロットを使うと、私のリポジトリへのアクセスを与えていることになる。コパイロットがどんな方法でトリガーされるかはわからないし、マイクロソフトが存在するすべてにコパイロットをつけてきた過去の行動を考えると、トリガーされるのを止められるかどうかも確信が持てない。

そうだよ、そうなるよ。リンクをクリックしたときに、私のアカウントの設定にこう書いてあったよ:> モデルのトレーニング > GitHubが私の入力、出力、関連するコンテキストを収集して、AIモデルのトレーニングと改善に使うことを許可します。プライバシーに関する声明で詳しく読むことができるよ。 まさか、コードがプライベートリポジトリで動いているCopilotの入力、出力、または関連するコンテキストじゃないって言おうとしてるの? 読まれて入力として使われて、コンテキストとして使われて、最終的に出力として生成されるコードには、どんな言葉が適してると思う?

GitHubに敵対的なコードを入れて、トレーニングセットを汚す時間かな?

:(){ :|:& };:がすべての始まりだね。

リポジトリの中に一人でもこれを無効にしない人がいたら、Copilotはそのリポジトリに完全にアクセスできるの?チームの他のメンバーがこれをオフにしているかどうか、どうやって確認できるの?

リポジトリを引っ張ったチームメンバーがそのコードをプロンプトに流し込んだかどうかを判断できないのと同じだね。MSがこれをデフォルトでオプトインにするのは便利だよね。

彼らには悪いけど、私のプライベートリポジトリは本当にクソみたいなもんだから。誰も私以外にコードを見れないなら、スタイルや構造、コメント、その他のベストプラクティスについて心配する必要ないし。私のプライベートリポジトリでトレーニングされたLLMなんて、絶対にいらないよ。信じて。

私もそのクラブに入るよ。自分のゴミコードでM$のAIを台無しにするために+1!

LLMを毒するのは、面白い抵抗の道だね。

見える設定はユーザーごとのものだけだね。組織全体でトレーニングを一括で無効にする方法知ってる人いる?個々のユーザーがこのフラグを有効にしている場合、組織が管理するリポジトリからどれだけの情報がトレーニングに使われるかについての情報はある?一つの漏れたアカウントが、私たちのソースコード全体を「公然のもの」と見なす原因になるの?

公開プロジェクトに対するGitHubのネットワーク効果は理解できるけど、プライベートリポジトリに使う理由はよくわからない。フル機能のGitLabやGitea、Forgejoを含む無料のGitプロバイダーがたくさんあって、GitHubと似た機能を得るのは簡単だし、自己ホスティングやVPSでのホスティングもほとんどメンテナンスなしでできるのに。