GitHub Copilot이 당신의 코드로 AI를 학습시킨다, 4월 24일부터
GitHub이 Copilot Free/Pro/Pro+ 사용자의 코드 입력·출력·컨텍스트를 AI 모델 학습에 기본 사용한다고 발표했습니다. 옵트아웃 방식으로, 직접 끄지 않으면 동의한 것으로 간주합니다. 2,000만 개발자에게 영향을 미치는 이 정책 변경의 의미를 분석합니다.
3월 25일, GitHub이 Copilot 데이터 정책을 변경했습니다. 4월 24일부터 Copilot Free, Pro, Pro+ 사용자의 인터랙션 데이터가 AI 모델 학습에 사용됩니다. 직접 설정에서 끄지 않으면 자동으로 동의한 것으로 처리됩니다. Copilot Business와 Enterprise 고객은 제외됩니다. GitHub 커뮤니티 토론에는 59개의 비추천과 3개의 추천이 달렸습니다. 39개 공개 댓글 중 GitHub 직원 외에 정책을 지지한 댓글은 단 1개였습니다.
무엇이 수집되는가
GitHub이 공식 블로그에서 밝힌 수집 대상 데이터는 광범위합니다. 단순히 "코드"가 아닙니다.
사용자가 수락하거나 수정한 Copilot 출력, Copilot에 전송된 입력과 코드 스니펫, 커서 주변의 코드 컨텍스트, 사용자가 작성한 주석과 문서, 파일명과 리포지토리 구조, 내비게이션 패턴, Copilot Chat과 인라인 제안 등 기능과의 모든 상호작용, 그리고 제안에 대한 피드백(좋아요/싫어요) 까지. 코드 자체뿐 아니라 코드를 작성하는 방식과 패턴 전체가 수집 대상입니다.
결정적으로, 프라이빗 리포지토리의 코드도 포함됩니다. GitHub FAQ에서 직접 인정했습니다. Copilot을 사용하는 동안 프라이빗 리포의 코드 스니펫이 수집되어 모델 학습에 사용될 수 있습니다. 리포지토리가 "at rest" 상태에서 직접 스캔되는 것은 아니지만, Copilot을 켜고 코드를 작성하는 순간 그 코드는 학습 데이터 후보가 됩니다.
GitHub Copilot 데이터 수집 범위
수집 대상 (4/24부터 기본 활성화)
- • 수락/수정한 Copilot 출력
- • 입력 코드 스니펫
- • 커서 주변 코드 컨텍스트
- • 주석, 문서, 파일명
- • 리포 구조, 내비게이션 패턴
- • Chat, 인라인 제안 상호작용
- • 피드백 (좋아요/싫어요)
- • 프라이빗 리포 코드 스니펫
제외 대상
- • Copilot Business 사용자
- • Copilot Enterprise 사용자
- • 학생/교사 무료 플랜
- • 유료 Organization 외부 협업자
- • 옵트아웃한 사용자
- • Issues, Discussions 데이터
- • "at rest" 상태의 리포 코드
수집된 데이터는 Microsoft 포함 GitHub 계열사와 공유. 제3자 AI 제공자에게는 공유 안 함.
개인은 옵트아웃, 기업은 면제
이번 정책 변경에서 가장 논란이 되는 부분은 이중 구조입니다.
Copilot Business와 Enterprise 고객은 계약상 보호를 받습니다. 그들의 데이터는 학습에 사용되지 않습니다. 학생과 교사 무료 플랜도 제외됩니다. 하지만 월 $10~39를 내는 개인 개발자(Pro/Pro+)와 무료 사용자는 직접 설정에서 옵트아웃하지 않으면 자동으로 데이터가 수집됩니다.
Hacker News 토론에서 dormento라는 사용자가 이 구조를 정확히 꼬집었습니다.
"그들(기업)은 변호사가 있고 당신에게는 보통 없으니까, 빠져나갈 수 있다고 생각하는 겁니다."
이것은 단순한 불공정 비판이 아닙니다. 비즈니스 현실과 직결됩니다. 프리랜서 개발자가 클라이언트 프로젝트를 Copilot으로 작업하는 경우를 생각해봅시다. 클라이언트는 자연스럽게 자사 코드가 AI 학습에 사용되지 않을 것이라 기대합니다. 하지만 개발자가 Copilot Pro를 사용하고 옵트아웃을 하지 않았다면, 클라이언트 코드의 스니펫과 컨텍스트는 학습 데이터로 흘러갑니다. 이는 NDA 위반이나 계약 분쟁의 씨앗이 될 수 있습니다.
GitHub의 CPO Mario Rodriguez는 공식 발표에서 말했습니다.
"AI 지원 개발의 미래는 여러분 같은 개발자의 실제 인터랙션 데이터에 달려 있습니다."
이 문장을 달리 읽으면 이렇습니다. "우리 AI를 더 좋게 만들기 위해 당신의 코드가 필요합니다. 기업은 돈을 더 내서 면제받고, 당신은 직접 끄지 않으면 기여하게 됩니다."
옵트아웃의 함정
옵트아웃 자체는 간단합니다. GitHub Settings > Copilot > Features > Privacy에서 "Allow GitHub to use my data for AI model training"을 비활성화하면 됩니다. 이전에 이미 옵트아웃한 사용자의 설정은 유지된다고 GitHub은 밝혔습니다. EU와 캐나다 등 일부 지역에서는 규제 때문에 기본적으로 비활성화 상태로 제공되는 것으로 보고되었습니다.
하지만 문제는 옵트아웃 방식 에 있습니다.
첫째, 다크 패턴 비판입니다. HN의 stefankuehnel은 "AI 모델 학습에 내 데이터 사용 허용"이라는 설정이 데이터 추출이 아니라 기능 혜택처럼 프레이밍되어 있다고 지적했습니다. 7bit는 이를 "FOMO를 만들려는 다크 패턴이자 비열한 수법"이라고 표현했습니다.
둘째, 설정 리셋 보고입니다. martin-t라는 사용자는 수동으로 비활성화한 설정이 다시 활성화된 사례를 보고하며, "무능함은 악의와 동등하게 처벌받아야 한다"고 말했습니다. 이것이 버그인지 의도적인지는 확인되지 않았지만, 옵트아웃 설정의 신뢰성에 의문을 던집니다.
셋째, GDPR 적합성 문제입니다. pred_라는 사용자는 GDPR하에서 동의는 "자유롭게 제공되고, 구체적이고, 정보에 근거한, 모호하지 않은" 것이어야 한다고 지적했습니다. mt42or는 더 직접적이었습니다.
"이게 합법인가요? EU 국가에서는 분명 아닐 텐데요."
보안 필터링의 한계
GitHub은 API 키, 비밀번호, 토큰, 개인 식별 정보(PII)를 자동 필터링한다고 밝혔습니다. 하지만 HN의 QuadrupleA가 지적한 근본적인 문제가 있습니다.
Copilot은 특정 파일을 학습에서 제외하는 메커니즘이 없습니다. .env 파일이나 설정 파일에 있는 민감한 정보가 자동 필터링을 통과할 가능성이 항상 존재합니다. 자동 필터링은 알려진 패턴(API 키 형식, 비밀번호 필드명)만 잡을 수 있고, 비정형 비밀(사내 약어로 된 토큰, 커스텀 형식의 크리덴셜)은 놓칠 수 있습니다.
TZubiri는 두 가지 핵심 위험을 정리했습니다. 비밀 유출(필터링 실패로 크리덴셜이 학습 데이터에 포함되는 것)과 지적재산 노출(다른 사용자의 Copilot 제안에 자신의 코드 패턴이 반영되는 것)입니다.
업계 선례와 비교
GitHub은 이 변경이 업계 표준이라고 주장합니다. 실제로 Anthropic, JetBrains, Microsoft 등이 유사한 옵트아웃 정책을 운영하고 있습니다. 하지만 The Register가 지적했듯이, 이 "업계 표준"은 유럽 기준의 옵트인 방식과 근본적으로 다릅니다. GDPR은 명시적 동의(옵트인)를 요구하는데, GitHub은 암묵적 동의(옵트아웃)를 기본값으로 삼고 있습니다.
역사적 맥락도 중요합니다. GitHub Copilot의 초기 엔진이었던 OpenAI Codex는 이미 GitHub에 공개된 코드로 학습되었습니다. 2021년 Copilot 출시 때부터 이에 대한 법적 논란이 있었고, 집단소송까지 제기되었습니다. 이번 변경은 수집 범위를 공개 코드에서 사용자의 실시간 인터랙션 데이터까지 확장한 것입니다. 단순히 리포에 올라간 코드가 아니라, 코드를 작성하는 과정 전체가 데이터 소스가 됩니다.
GPL과 라이선스의 미해결 영역
AI 학습 데이터와 라이선스 충돌
GPL 코드의 딜레마
GPL 라이선스 코드가 AI 학습에 사용되면, AI가 생성한 파생 코드도 GPL을 적용해야 하는가? 현행법에서는 명확한 답이 없습니다.
프라이빗 리포의 역설
프라이빗 리포는 공개하지 않은 코드입니다. 하지만 Copilot을 켜고 작업하면 해당 코드의 스니펫과 컨텍스트가 학습 데이터에 들어갈 수 있습니다. "비공개"의 의미가 재정의되는 셈입니다.
계약 리스크
프리랜서/에이전시 개발자가 클라이언트 코드를 Copilot으로 작업하면, NDA 위반이나 계약 분쟁이 발생할 수 있습니다. 기업 고객은 면제되지만 개인 개발자는 스스로 관리해야 합니다.
HN의 rzmmm은 한탄했습니다.
"내 GPL 라이선스가 코드와 함께 전달되기를 바랍니다."
tglman은 더 나아가, AI 모델이 GPL 코드로 학습되었다면 그 모델의 파생물도 GPL 조건을 상속해야 한다고 주장했습니다. 이것은 아직 법적으로 검증되지 않은 영역이지만, AI 학습과 오픈소스 라이선스의 충돌은 점점 더 뜨거운 법적 쟁점이 되고 있습니다.
커뮤니티의 이탈 움직임
이번 정책 변경은 단순한 불만을 넘어 구체적인 이탈 행동으로 이어지고 있습니다.
sph는 모든 소프트웨어를 프라이빗 서버로 이전한다고 선언했습니다.
"봇이 내 코드를 상업적으로 사용하는데 왜 copyleft에 시간을 쓰나요?"
rvz는 2019년의 예측을 상기시키며 Codeberg나 셀프호스팅을 권했습니다. midasz는 이미 Forgejo를 셀프호스팅하며 자체 러너를 운영하고 있다고 밝혔습니다. thesmart는 "GitHub을 떠날 준비가 됐다"며 "인프라의 enshittification"을 비판했습니다.
matltc는 더 극단적인 선택을 고려하고 있었습니다.
"VSCode 자체를 삭제하는 것을 고려하고 있습니다. Copilot이 방해만 됩니다."
물론 2,000만 명의 Copilot 사용자 중 실제로 이탈하는 비율은 극소수일 것입니다. GitHub의 네트워크 효과와 생태계 장벽은 높습니다. 하지만 오픈소스 커뮤니티의 핵심 기여자들, 즉 GitHub 생태계의 가치를 만드는 개발자들이 불신을 키우고 있다는 것은 장기적으로 무시할 수 없는 신호입니다.
GitHub 측의 논리
GitHub VP Martin Woodward는 HN 토론에 직접 참여해 몇 가지를 명확히 했습니다. Business/Enterprise 고객은 명시적으로 제외됩니다. 이전에 옵트아웃한 설정은 보존됩니다. 리포에 저장된 코드가 아니라 인터랙션/사용 데이터만 학습에 사용됩니다. 그리고 시행 한 달 전에 미리 발표해서 옵트아웃할 시간을 제공했습니다.
GitHub의 핵심 근거는 Microsoft 내부 테스트 결과입니다. Microsoft 직원들의 인터랙션 데이터로 학습시킨 결과 "여러 언어에서 수락률이 의미있게 향상"되었다는 것입니다. 실제 개발자가 어떻게 코드를 작성하고, 어떤 제안을 수락하고, 어떤 피드백을 주는지 알아야 Copilot을 더 좋게 만들 수 있다는 논리입니다.
이 논리 자체는 기술적으로 타당합니다. AI 모델은 학습 데이터의 질과 관련성에 따라 성능이 결정됩니다. 실제 사용 패턴 데이터는 합성 데이터보다 훨씬 가치 있습니다. 문제는 이 가치 있는 데이터를 동의 없이 기본 수집한다는 방식에 있습니다.
이것이 의미하는 것
GitHub Copilot의 데이터 정책 변경은 AI 산업의 근본적 긴장을 드러냅니다. AI 모델을 개선하려면 데이터가 필요하고, 가장 가치 있는 데이터는 실제 사용자의 데이터입니다. 하지만 사용자들은 자신의 데이터가 동의 없이 학습에 사용되는 것을 원하지 않습니다.
GitHub은 4억 명 이상의 개발자와 3억 개 이상의 리포지토리를 보유한 세계 최대 코드 호스팅 플랫폼입니다. 이 플랫폼이 옵트아웃 방식의 데이터 수집을 기본값으로 설정한 것은, AI 학습 데이터 확보 경쟁에서 네트워크 효과를 무기로 활용하겠다는 선언입니다.
4월 24일이 다가오고 있습니다. 아직 옵트아웃하지 않은 Copilot Free/Pro/Pro+ 사용자라면, 지금 Settings > Copilot > Features > Privacy를 확인할 때입니다. 혹은, 이 정책이 의미하는 바를 곱씹으며 자신의 개발 환경을 재검토할 때일 수도 있습니다. 당신의 코드는, 4월 24일부터 Microsoft의 AI를 학습시키는 데이터가 됩니다. 직접 끄지 않는 한.