클라우드의 교훈을 딛고 빠르게 진화하고 있는 AI 분야에서 ‘오픈소스’가 의미하는 바를 적극적으로 검토할 필요가 있다. ⓒ Getty Images Bank
오픈소스는 클라우드 환경에서 결코 편안히 자리잡은 적이 없다. 오픈소스가 그 어느 때보다 강력해진 것은 사실이지만(많은 오픈소스 프로젝트의 보안이 관리되지 않는다는 주장에도 불구하고), 새로운 라이선스 모델이 계속 등장하는 데는 이유가 있다. 기업의 욕심 때문이 아니다. 오픈소스의 근본적인 자유, 그리고 존경받는 오픈소스 정의(Open Source Definition, OSD)가 클라우드 컴퓨팅에서 비롯된 격차에 진정으로 답하기 위해 업데이트되지 않았기 때문이다. (필자는 2009년에 이와 관련한 글을 작성했다.)
OSD를 이끄는 오픈소스 이니셔티브(Open Source Initiative, OSI)의 전무 이사 스테파노 마풀리는 “오픈소스는 소프트웨어가 배포 및 실행되는 방식을 진화시킬 기회를 놓쳤다. 어떤 일이 일어나고 있는지 그다지 관심을 두지 않았고, 이로 인해 클라우드 비즈니스에 긴장이 조성됐다. 기억으로는 변화에 상당한 관심을 두긴 했으나 빠르게 움직여야 한다는 압박으로 인해, 결국 누구도 만족시키지 못한 채 소프트웨어 제작 현실을 무시한 일반공중사용허가서(Affero General Public License, AGPL) 같은 서드파티 해킹을 받아들이게 됐다. 일부는 AGPL을 ‘독’이라고 표현했으며, 구글과 같은 대기업들은 단순히 ‘준수하기 어렵다’며 이를 거부했다”라고 말했다.
OSI는 AI 시대에 맞게 오픈소스를 업그레이드하기로 결정했다. 인터뷰에서 마풀리는 OSD를 AI 분야에 적용하는 데 따르는 어려움과 기회에 대해 설명했다.
'계속 이 용어를 사용하는 사람들'
메타 같은 기업은 대규모 언어 모델(LLM) 및 기타 AI 프로젝트에 ‘오픈소스’라는 용어를 잘못 사용했다는 이유로 비판을 받았다. 깃허브(GitHub)의 개발자 정책 책임자인 마이크 링크스베이어는 “오픈소스 AI가 무엇인지는 아직 정의되지 않았다. 클라우드에서와 동일할 것이라고 가정할 수는 있으나, 결과는 역시 불만족스러울 것이다”라고 언급했다. 아린(Aryn)의 CEO이자 공동 창업자인 메홀 샤는 “AI 모델은 표면적으로 소프트웨어 프로그램일 뿐이지만, 개발, 사용, 배포 방식은 다르다”라고 지적했다. 이를 무시하고 다르게 가정할 경우, 오픈소스 AI는 실패하고 말 것이다.
OSI는 “AI는 데이터와 소프트웨어 간 경계를 허문다”라고 언급했다. 오픈소스를 LLM의 가중치/부동 소수점 숫자에 적용해야 할까? 아니면 학습 데이터 혹은 다른 것에 적용해야 할까? 답은 명확하지 않다. 이와 다른 의견을 제시하는 사람은 아마 클라우드에서와 같은 경솔한 실수를 저지를 위험이 있으며, 어려운 문제를 진정으로 해결하기 보다는 라이선스 해킹에 안주할 수도 있다.
결과가 중요하다.
‘무료 및 오픈소스’(제60조) AI를 위한 예외 조항을 마련하려는 유럽의회의 AI 법 초안을 떠올려볼 수 있다. 마풀리는 “오픈소스가 실제로 무엇을 의미하는지 명확히 이해하지 못하면 연구에 엄청난 여파가 미칠 것으로 예상한다. 또한 이러한 불확실성이 학계 및 민간 연구소를 모두 어려움에 처하게 할 수 있다”라고 지적했다. 상용 오픈소스가 클라우드에 적용되던 초기 단계를 겪은 사람이라면, 필자가 2007년 설명한 문제를 인식할 수 있을 것이다. 당시에는 누구도 ‘배포’가 점차 ‘네트워크에 걸쳐 배포되는 서비스’이자 ‘소프트웨어’를 의미하게 될 것이라고 생각하지 못했다. 오픈소스를 도입하려는 기업들은 GPL과 같은 무료 오픈소스 라이선스를 어떻게 적용해야 하는지 잘 몰랐다.
마풀리는 “클라우드에서 겪었던 것과 같은 실수를 AI에서 반복하고 싶지 않았다. 3년 전부터 ‘AI’ 분야에서 어떤 변화가 일어나고 있는지 살펴보기 시작했다”라고 강조했다. 클라우드가 OSI를 뒤흔들었을 때와 지금이 얼마나 다른지는 아무리 강조해도 지나치지 않는다. OSI는 클라우드에 너무 늦게 반응한 것처럼 보였지만, 이제는 빨리 개입하고 있다.
‘극단적인 복잡성’
OSI와 마풀리는 단순히 ‘소프트웨어는 소프트웨어’라고 가정하는 대신, AI에서 소프트웨어가 무엇을 의미하는 지에 대한 근본적인 질문으로 씨름하고 있다. 마풀리는 “개발자가 모델에 액세스한다는 것은 무엇을 의미하며, 어떤 권한을 행사해야 하고, 모델의 수정 및 재배포를 위해서는 무엇이 필요한가?”라고 물었다. 대부분의 개발자들이 소스코드를 검사하거나 수정하지 않지만, 개발자는 이를 할 수 있어야 한다. 블랙박스 시스템이 일상 생활(취업 희망자 선별 등)에 큰 영향을 미칠 수 있는 AI 분야에서는 특히 그렇다. 머신러닝 모델이 어떻게 특정 결론에 도달했는지 이해하기 위해 이러한 ‘블랙박스’를 들여다볼 수 있는 역량이 필요하다. 마풀리는 “오픈소스에서는 블랙박스에 표시된 내용과 실제 결과가 일치하는지 확인할 수 있도록 작동 방식을 연구해야 한다”라고 주장했다.
쉬워 보이는가? 그렇지 않다. 그는 “이것이 바로 우리가 하고자 하는 일이며 매우 복잡한 시나리오다”라고 강조했다.
마풀리는 OSI가 편협한 시각에서 벗어나도록 하기 위해 모질라(Mozilla), 벤처 투자자, 크리에이티브 커먼즈, 학자 등 다양한 이해 관계자와 협력하고 있다. 그는 “오픈소스가 경제적 성공의 원동력으로 인식되기 때문에, 더 명확한 이해를 얻고자 하는 열정을 가진 다양한 사람들과 대화하는 것이 핵심”이라고 말했다.
가장 큰 어려움은 데이터와 소프트웨어가 불가분의 관계로 연결된 세계에서 오픈소스를 정의하는 방법에 있다. 마풀리의 설명에 따르면, 현재 실무단에서는 학습 데이터와 이를 적용하는 방법에 대한 지침 사이의 종속성을 중심으로 치열한 논의가 전개되고 있다. 그는 “복잡성, 이해 관계가 얽혀 있기 때문에 현재로서는 이것이 무엇을 의미하는지에 대한 견고한 합의점을 찾지 못하고 있다”라고 설명했다.
여기에는 적어도 2가지 접근 방식이 있으며, 실무단에서는 2개의 진영이 경쟁하고 있다. 첫 번째 진영은 ‘소스코드’가 데이터 세트에 일대일로 변환된다는 사고를 내세우면서 소스코드의 편안한 개념에 충실하고자 한다. 이 관점에서 모델 구축 방법에 대한 지침 및 바이너리 코드의 조합은 오픈소스의 대상이 되는 소스코드다.
두 번째 진영은 상황을 근본적으로 다른 시각에서 바라본다. 이들은 원본 데이터 세트에 대한 액세스 권한 없이는 코드를 수정할 수 없다고 여긴다. 이 관점에서는 오픈소스의 근본적인 자유를 효과적으로 행사하기 위해 다른 요소들이 필요해진다. 마풀리는 “아티팩트를 만드는 데 들어간 작업을 상세하게 설명해야 한다”라고 말했다. 이 환경에서는 데이터 세트 조립에 쓰인 모든 스크립트, LLM을 관리하는 가중치, 모델에 적용한 편향 등을 전부 공개해야 한다. 이 방식이 오픈소스 AI에 대해 더 흥미롭고 유용한 것처럼 보이긴 하지만, 실제로 구현하기는 훨씬 더 복잡하다.
2가지 접근 방식 모두 그 자체로는 실행하기 어렵다. 마풀리는 “공통 분모를 찾아야 할 것”이라고 말했다. 그의 설명에 따르면 한 접근 방식은 데이터를 공유할 수 없거나 공유 데이터(연합 학습 시스템 등)를 간과하고, 다른 접근 방식은 AI를 작동시키기 위한 데이터의 본질적 중요성을 인식하지 못한다. 이 때문에 AI의 거대한 확산이 오픈소스의 영향에서 완전히 벗어날 수도 있다. 이는 어떤 면에서는 OSI가 ‘배포’의 정의를 강요해 구글과 같이 오픈소스를 장려하는 기업이 AGPL 같은 라이선스를 회피하기 어렵도록 제약을 걸었던 과거 사례와 유사하다.
다만 마풀리는 낙관적으로 바라보고 있다. 그는 2024년까지 “모두가 오픈소스 AI의 정의를 찾아야 하는 긴급한 문제를 마주하고 있기 때문에 ‘네 가지 자유(편집자 주: 1986년 FSF가 발표한 소프트웨어의 네 가지 본질적 자유)’와 유사한 무언가를 보게 될 것”이라고 설명했다. 그는 “이번의 접근 방식은 다르다. 라이선스 평가를 위해 10개 항목으로 구성된 체크리스트를 만들지 않고 한 발짝 물러나 있다. 대신 이 네 가지 자유(실질적으로는 네 가지 원칙)는 다섯 가지 자유가 돼 AI 시스템에 적용될 것이다. 필수 원칙이 결정되면 딥러닝, 머신러닝 및 기타 AI 시스템에 적용해 ‘오픈소스’를 측정하는 일이 비교적 수월해질 수 있다”라고 주장했다.