F/OSS 史唯: 우리는 LLM을 거부할 게 아니라 되찾아 와야 한다
며칠 전 〈자유·오픈 소스 소프트웨어와 LLM 학습에 관해〉(On FLOSS and training LLMs)라는 글을 읽었다. 자유/오픈 소스 소프트웨어 커뮤니티에서 느끼는 좌절감을 잘 담아낸 글이었다. AI 기업들은 F/OSS 개발자들을 전혀 존중하지 않는다. 오픈 소스 라이선싱의 이상주의적 원칙을 악용하고 있다. 법은 우리의 작업물이 독점 언어 모델의 훈련 재료로 쓰이는 걸 막아주지 못한다. 글을 읽으며 여러 차례 고개를 끄덕였다.
하지만 나는 이 글의 결론에는 동의하지 않는다.
저자가 제안하는 해법은 거부와 고립이다. 크롤러를 차단하고, GitHub 같은 중앙화된
포지에서 떠나고, AI 스크래퍼가 우리 코드에 접근하지 못하게 막자는 것이다.
그리고 이런 비윤리적 도구
를 쓰는 사람들을 커뮤니티에서 배척하자고 한다.
단절과 고립의 전략이다. 분노는 이해된다. 하지만 이 접근은 중요한 기회를 놓치고
있고, F/OSS를 만들어온 역사적 패턴을 오독하고 있다.
우리가 동의하는 지점
갈라지는 지점을 논하기 전에, 저자가 옳은 부분부터 짚고 넘어가자. 현재의 상황은
정말로 심각하다. AI 기업들은 훈련 데이터 출처를 완전히 무시하고 있다.
법적으로 가능하니까 하겠다
는 말이 그들이 개별 개발자와 커뮤니티를 대하는
태도를 정확하게 보여준다. 공격적인 크롤링은 사실상 분산 서비스 거부(DDoS)
공격이나 다름없다. 콘텐츠 제작자의 명시적 의사는 무시된다. 제대로 작동하는
옵트아웃(opt-out) 메커니즘조차 제공하지 않는다.
법적 싸움도 이기기 어렵다는 점에서 저자의 말이 맞다. F/OSS 라이선스는 본질적으로 용처를 차별하지 않는다. 오픈 소스 정의의 여섯 번째 원칙은 특정 분야에 대한 제한을 명시적으로 금지한다. GPL 같은 주요 라이선스들은 저작자 표시를 요구하고 파생 저작물에 대한 조항을 두고 있지만, 저자 말대로 능력 있는 변호사라면 LLM 훈련이 종래 의미의 파생 저작물 생성이 아니라고 주장할 수 있다. 통계적 패턴 추출이 코드 재사용처럼 저작자 표시를 요구하지 않는다고 말이다.
현재의 법은 부족하다. 이 법은 옛 시대를 위해 만들어졌다. 그 시대에
사용
이란 소프트웨어를 실행하거나 수정하거나 재배포하는 것이었지,
신경망에 넣어 패턴을 추출하는 게 아니었다. 법은 권력을 위해 봉사한다. 이 경우
권력은 법무팀을 동원해 이런 모호함을 탐색하고 악용할 수 있는 기업들에게 있다.
우리가 갈라지는 지점
그러나 여기서 길이 갈라진다. 답은 거부가 아니라 재전유다.
저자는 현재의 상황을 개발자 존중과 AI 훈련 허용 사이의 싸움으로 프레이밍한다. 하지만 제3의 길이 있다. F/OSS 역사와 더 일관되고, 우리가 실제로 바라는 미래를 만들 가능성이 높은 길이다. 우리는 우리의 코드로 LLM을 훈련하지 못하게 막으려 하기보다, 모델 자체를 해방시키라고 요구해야 한다.
내 입장은 이렇다. 나는 내 코드가 LLM 훈련에 쓰이길 바란다. 바라지 않는 건 그 훈련으로 AI 사기업의 사유 재산이 되는 독점 모델이 만들어지는 것이다. 문제는 기술 자체나 훈련 과정이 아니다. 공유지의 사유화, 집단 지식의 독점, 가치가 다수에서 소수로만 흐르는 것이 문제다.
이건 아주 새로운 문제는 아니다. F/OSS가 여태 싸워온 그 문제다. 옷만 바꿔 입었을 뿐이다.
현실 인식에 관하여
더 나아가기 전에 근본적인 이야기를 하나 해보자. LLM을 둘러싼 여러 관점들은 대개 현실 자체를 어떻게 인식하느냐에서 갈린다.
얼마 전 Redis 제작자 Salvatore Sanfilippo, 일명 antirez가
AI 코딩 도구 경험담을 썼다. 그는 우리 중 많은 이들처럼 손으로 빚은 코드와
소프트웨어의 인간적 손길을 깊이 중시하는 사람이다. 하지만 이렇게 말한다. 지금
일어나고 있는 현실을 외면하는 건 불가능하다. 코드 작성은 더 이상 대부분 필요
없다… 프로그래밍은 영원히 바뀌었다.
그의 결론은 이렇다: 적응하라. 새 도구들을 배우라. 반AI 하이프(hype)
에
빠지지 말라. 그는 LLM을 90년대 오픈 소스처럼 민주화 기술로 본다. 작은 팀이 큰
회사와 경쟁할 수 있게 해준다고 말이다.
나도 antirez의 현실 인식에 대체로 동의한다. LLM은 프로그래밍을 근본적으로 바꿨고, 되돌릴 수 없다. 반면 〈자유·오픈 소스 소프트웨어와 LLM 학습에 관해〉의 저자는 현실을 다르게 인식하는 것으로 보인다. 저항이 여전히 의미 있고, 철수가 효과적일 수 있으며, LLM의 훈련 데이터 접근을 의미 있게 줄일 수 있다는 인식이다. 나는 회의적이다. OpenAI와 Anthropic은 이미 필요한 걸 다 긁어갔다. GitHub도 모든 코드를 갖고 있다. 훈련 데이터는 이미 존재한다.
하지만 여기서 나는 antirez의 낙관론과 갈라선다. 그는 중앙화를 걱정하면서도 중국산 오픈 모델 등을 통해 시장 경쟁이 해결해줄 거라고 믿는 듯하다. 그리고 개발자들이 어떻게 적응하고 이 도구를 활용할 수 있는지에 집중한다. 중요한 얘기지만, 더 깊은 질문을 비껴간다. 이 변혁은 어떤 조건에서 일어나는가?
질문은 LLM을 쓸 것이냐 적응할 것이냐가 아니다. 그 배는 이미 떠났다. 질문은 누가 모델을 소유하느냐다. 모델을 훈련시킨 공유지로부터 누가 이득을 보느냐다. 수백만 F/OSS 개발자가 자기 코드를 공공에 기여했다면, 결과로 나온 모델이 독점이어야 하나? 이건 단순히 중앙화나 시장 역학 문제가 아니다. 집단 노동의 열매가 집단에게 남느냐, 사유 재산이 되느냐의 문제다.
유물론적 독해
자유·오픈 소스 소프트웨어 역사를 유물론적 렌즈로 보면 명확한 패턴이 보인다. 기술 변화가 새로운 형태의 착취를 만들고, 그 착취는 공유지를 보호하기 위한 새로운 형태의 라이선싱을 요구한다.
궤적을 살펴보자.
GPLv2(1991)는 바이너리 배포 문제를 다뤘다. 기업들이 GPL 코드를 가져다 컴파일해서 바이너리만 배포했다. 자유 코드로 사실상 독점 소프트웨어를 만든 것이다. 해법은 카피레프트(copyleft)였다. 소프트웨어를 배포하면 소스 코드도 제공해야 한다.
GPLv3(2007)는 티보이제이션을 다뤘다. TiVo 같은 기업들은 기술적으로는 소스 코드를 제공했지만 하드웨어 락으로 수정판 실행을 막았다. 해법은 소스 코드뿐 아니라 설치 정보까지 요구하는 것이었다. 사용자가 수정할 자유를 유지하도록 말이다.
AGPL(2007)은 SaaS 허점을 다뤘다. 기업들은 소프트웨어를 배포할 필요가 없다는 걸 깨달았다. 서비스로만 돌리면 GPL 배포 요구사항이 작동하지 않았다. 해법은 네트워크 상호 작용을 배포와 동등하게 취급하는 것이었다.
매번 같은 패턴이 반복됐다. 새 기술이 기존 라이선스의 간극을 드러내면, 기업들이 그 간극을 악용했다. 그러면 커뮤니티가 간극을 메우는 진화한 라이선싱으로 대응했다. 이건 이상주의가 현실을 만나 실패한 게 아니다. 변증법적 발전이다. 변화하는 물질적 조건에 맞춰 우리 도구를 정제하는 지속적 과정이다.
이제 또 새로운 간극이 보인다. 바로 훈련 허점이다. 기업들은 F/OSS 코드를 독점 모델의 훈련 데이터로 쓸 수 있다. 모델을 공개하거나 훈련 출처를 밝힐 의무도 없다. 전형적인 착취다. 호혜성 없는 가치 추출이다.
유물론적 대응은 새 기술을 거부하는 게 아니다. 라이선스를 진화시켜 포괄하는 것이다.
훈련 카피레프트가 어떤 모습일 수 있을까
나는 GPLv4나 TGPL (Training GPL) 같은 것을 꿈꾼다. 이런 조항들을 포함해야 할 것이다.
훈련은 명시적으로 허용한다. 코드는 기계 학습 모델의 훈련 데이터로 쓰일 수 있다. F/OSS 자유 원칙과 일치하고 분야 차별을 피한다.
하지만 그 결과물인 모델은 해방되어야 한다. 해당 코드로 훈련한 모든 모델은 호환 가능한 카피레프트 라이선스로 가중치(weights)를 공개해야 한다. GPLv3가 바이너리에 소스 코드를 요구하듯, 훈련 카피레프트는 훈련된 시스템에 모델 가중치를 요구한다.
훈련 데이터는 문서화해야 한다. 의존성을 문서화하길 기대하듯, 어떤 데이터로 훈련했는지 명확히 밝혀야 한다.
파인튜닝(fine-tuning)된 모델도 의무를 물려받는다. 카피레프트 모델을
파인튜닝하면 파생 모델도 공개해야 한다. 조금만 수정해서 새 것이라
주장하기
회피를 막는다.
네트워크 사용도 의무를 부과한다. AGPL처럼 API로 모델을 제공하는 것도 배포로 간주해 가중치 공개를 요구한다.
기술적 도전과 선례
이게 기술적으로 가능할까? 집행할 수 있을까? 타당한 질문이지만 새로운 질문은 아니다. 이전 모든 GPL 진화에서 똑같이 제기된 질문이다.
바이너리가 당신 소스 코드로 컴파일됐다는 걸 어떻게 증명하나? 하드웨어 락이 수정을 막는다는 걸 어떻게 증명하나? 서비스가 당신 코드를 돌리고 있다는 걸 어떻게 증명하나? 매번 답은 기술적 증거, 커뮤니티의 감시, 때로는 법적 조치의 조합이었다. 완벽한 집행은 불가능하다. 하지만 라이선스가 무가치하단 뜻은 아니다. GPL 위반은 일어나지만 GPL은 작동한다. 거대한 공유지를 만들고 보호해왔다.
특정 코드가 훈련에 쓰였다는 증명은 소스 코드가 바이너리에 쓰였다는 증명보다 확실히 더 어려울 것이다. 하지만 넘을 수 없는 건 아니다. 훈련 데이터셋은 문서화할 수 있다. 모델 계보는 추적할 수 있다. 통계 분석이 훈련 출처를 식별할 수도 있다. 더 중요한 건, 라이선스 존재 자체가 준수를 향한 사회적·법적 압력을 만든다는 것이다.
혼합 훈련 세트 문제도 있다. TGPL과 비TGPL 코드로 함께 훈련하면? 이것도 GPL과 비GPL 코드를 링크하는 문제와 유사하다. 수년간의 커뮤니티 실천과 이따금의 법정 사례로 해결돼왔다. 세부사항은 따로 풀어야 할 문제지만, 큰 방향은 맞다.
이게 왜 철수보다 중요한가
저자의 철수 전략은 감정적 호소력이 있다. 접근을 거부하고 당신은 우리를 존중
안 하니 우리 작업을 가질 수 없다
고 말하는 것은 이른바 사이다
처럼
통쾌하다. 하지만 여러 면에서 더 큰 그림을 놓친다.
일단 이 전략은 전장을 크게 양보한다. F/OSS 개발자들이 코드를 공개 접근성에서 철수하면, 그저 AI 훈련을 막는 게 아니라 오픈 소스 AI 훈련만 막는다. OpenAI와 Anthropic은 이미 필요한 건 다 긁어갔고, 거대한 데이터셋을 갖고 있다. 철수가 막는 건 Llama나 Mistral 같은 프로젝트와 더 넓은 오픈 소스 LLM 생태계가 양질의 훈련 데이터에 접근하는 것이다.
더 근본적으로는, 문제를 잘못 짚고 있다. 기술 자체가 아니라 그것을 누가 어떻게 쓰느냐가 문제인데 말이다. LLM은 컴파일러나 웹 서버가 본질적으로 착취적이지 않은 것처럼 본질적으로 착취적이지 않다. 도구일 따름이다. 자본주의 하의 모든 도구처럼 권력을 집중시키거나 분산시키는 데 쓰일 수 있다. 사용 조건이 아니라 거부에 집중하면 질병이 아니라 증상만 치료할 위험이 있다.
커뮤니티 분열 위험도 있다. 저자는 비윤리적 도구
의 사용자들을 배척하고
환영 받지 못하게 만들고 고립시키자고 한다. 하지만 어디까지가 사용인가? 누가
F/OSS 프로젝트 패치를 작성하는 데 GitHub Copilot을 쓴다면? 디버깅에 ChatGPT를
쓴다면? 정확히 어디가 선이고 그걸 누가 결정할까? 이런 순수성 테스트는
역사적으로 목표 달성보다 운동 분열에 더 효과적이었다.
하지만 가장 치명적인 건, 실제로 작동해 왔던 F/OSS 전략을 포기한다는 것이다. 접근을 막는 게 아니라 라이선스로 자유를 지키는 전략을. GPL의 천재성은 누구에게도 코드 사용을 막지 않았다는 것이다. 대신, 받은 자유를 다른 이에게도 주도록 요구해서 모두의 자유를 보장했다. 철수는 정반대 철학이다.
우리가 만들어야 할 미래
나는 강력한 AI 모델이 존재하고, 훈련할 여력이 있는 사기업들만이 아니라 모두가 그러한 모델에 접근할 수 있는 미래에 살고 싶다. 수백만 F/OSS 프로젝트에 인코딩된 지식이 독점 모델로 사유화되는 대신 공유지의 일부가 되는 세상를 바란다. 내 코드가 모델 훈련을 돕는다면 그 모델을 나와 다른 모두가 사용하고 연구하고 수정하고 공유할 수 있는 세상를 바란다.
이 미래는 철수에서 오지 않는다. 참여에서, 우리의 라이선싱 도구의 진화에서, 우리가 보고 싶은 오픈 소스 AI 생태계를 구축하는 것에서 온다. GNU/Linux를 만들고, 우리가 아는 웹을 만들고, 우리가 매일 쓰는 도구를 준 것과 같은 전략에서 온다.
저자는 존중은 주어지는 게 아니라 얻어지는 것이고, 우리를 무시하는 사람들은 똑같이 대해야 한다고 쓴다. 나도 이 원칙에는 동의하지만 다르게 적용하고자 한다. 무례한 것은 훈련 행위 자체가 아니라, 그 결과물을 사유화하고 공동체에 되돌려 주지 않는 데에 있다. 적절한 대응은 우리도 공유를 거부하는 게 아니다. 그건 바닥으로의 경주다. 호혜성을 요구하고 우리가 항상 주장해온 바로 그 자유를 주장하는 것이다.
Linus Torvalds가 Linux를 독점으로 유지하는 대신 GPL로 공개했을 때, 기업은
이걸 쓸 수 없다
고 말하지 않았다. 누구든 쓸 수 있지만 개선하면 공유해야
한다
고 말했다. 그 조건, 그 호혜성 요구가 자원봉사 개발자와 거대 기업을 모두
포함하는 생태계를 만들었다. 스마트폰에서 슈퍼컴퓨터까지 모든 걸 돌리고, 함께
만드는 방식이 실제로 작동한다는 걸 증명한 생태계를.
AI 시대에도 같은 원칙을 적용해야 한다. 우리 코드로 훈련 금지
가 아니라
우리 코드로 훈련하면 모델을 해방해야 한다
로. 철수가 아니라 참여 조건이다.
거부가 아니라 재전유다.
역사적 기회
유물 사관은 필연성에 관한 게 아니라고 생각한다. 패턴을 인식하고 그에 따라 행동하는 것이다. F/OSS 라이선싱의 모든 주요 전환은 문제 인식, 커뮤니티 논의, 법적 혁신, 점진적 채택 패턴을 따랐다. LLM과 관련해선 현재 그 사이클의 시작점에 있는 듯하다.
기회이다. 현재 AI 훈련과 모델 공개를 지배할 규범에 대한 대화가 일어나고 있다. 커뮤니티에서 이 문제들에 대한 논의가 뜨겁다. 오픈 소스 AI 모델이 늘어나는 지금, 어떤 라이선스가 적용될지는 아직 정해지지 않았다.
F/OSS 개발자들이 이 대화에서 철수하고, 전장을 양보하고, 거부에만 집중하면, 5년 뒤엔 기업과 기업 친화적 법원에 의해 모든 규범들이 설정된 걸 보게 될 것이다. 훈련 허점이 확고하게 확립되고, 오픈 소스 AI는 독점 모델 대비 영구적으로 불리해질 것이다.
하지만 우리가 참여하고, 훈련 카피레프트를 밀어붙이고, 모델 해방을 요구하는 라이선스로 코드를 공개하기 시작하면, 우리가 그 미래를 만들 수 있다. 쉽지는 않을 것이다. 법적 작업, 커뮤니티 조직화, 아마 법정 사례도 필요할 것이다. GPL이 테스트되고 검증되는 데 수년이 걸렸다. 하지만 결국 작동했고, 훈련 카피레프트라고 작동하지 못할 이유는 없다.
결론
〈자유·오픈 소스 소프트웨어와 LLM 학습에 관해〉에 표현된 분노와 좌절을 존중한다. 현재 AI 기업들이 나쁘게 행동하고 있고, 우리의 작업물을 착취하고 있으며, 법이 부족하다는 점에서, 저자가 옳다. 내 이견은 우리의 대응이 거부가 아니라 진화여야 하고, 철수가 아니라 참여여야 하며, 접근 금지가 아니라 라이선싱 혁신이어야 한다고 믿는다는 점이다.
질문은 F/OSS 코드에 대한 LLM 훈련이 어떤 추상적 의미에서 윤리적인가가 아니다. 어떤 조건에서 윤리적인가다. 답은 F/OSS가 여태까지 보여 준 답과 같다고 믿는다. 우리가 부여하는 자유가 보존되고 전달될 때, 개선이 공유지로 돌아올 때, 지식이 자유롭게 남을 때 윤리적이다.
크롤러를 차단하기보다는 그들이 크롤하는 규칙을 바꿔야 한다. GitHub에서 철수하기보다는 GitHub 훈련이 카피레프트를 존중하도록 요구해야 한다. AI 도구 사용자를 배척하기보다는 우리의 자유를 존중하는 더 나은 AI 도구를 만들어야 한다.
유물 사관은 가르친다. 새로운 생산력은 새로운 생산관계를 요구한다고. LLM은 새로운 생산력이다. 훈련 카피레프트는 LLM을 F/OSS 가치와 정렬시킬 새로운 생산관계가 될 것이다.
내가 쓰는 코드는 자유롭기 위해 쓴다. 신경망을 통과해 모델 가중치로 나타나더라도 자유롭게 남길 바란다. 순진한 이상주의가 아니다. 수십 연간 F/OSS를 이끌어온 바로 그 원칙이다. 우리는 여러 기술 전환을 거쳐 소프트웨어 자유를 보호해왔고, 이번에도 할 수 있다.
LLM을 거부하는 게 아니라 되찾아 와야 한다. 우리의 공유지가 그들의 사적 정원이 되는 걸 방관할 것인가? 나는 코드가 모두의 것이듯, 그걸로 훈련한 AI 모델도 모두의 것이 되는 미래를 위해 싸우고 싶다.