“프로그램이 가볍다.” “따라하기 쉽다.”
“기능이 다 있다” 이 AI 플랫폼의 이름은?
AI

상생의 경쟁력—오픈 소스와 AI

거대 오픈 소스는 기술이 발전하고 기업이 영리 활동하는 걸 어떻게 도와줄 수 있는 걸까요? 아니, 후자의 경우 애초에 가능은 한 걸까요? 이번 글은 오픈 소스에 대해 다룹니다.
ai-researcher
황상연 AI 연구1팀 팀장
2024.09.0610min read
상생의 경쟁력 - 오픈 소스와 AI.png

Software is eating the world. — Marc Andreessen, Co-Founder, Andreessen Horowitz, 2011 [1].

Most of that software is open source. — Jim Zemline, Executive Director, The Linux Foundation, 2022 [1].

세계가 발전할수록 소프트웨어의 중요성은 점점 더 커지고 있습니다. 소프트웨어의 발전은 우리의 일상뿐 아니라 전 산업에 지대한 영향을 줍니다. AI의 대두가 가장 대표적인 예이죠. 그리고 그러한 소프트웨어의 발전은 오픈 소스 (정확히는 오픈 소스 소프트웨어)의 발전 위에 이루어져 왔다고 해도 과언이 아닙니다.

오픈 소스가 소프트웨어 전반과 AI의 발전에 공로해 온 바가 큰 반면, 오픈 소스의 지속성과 장점에 대해선 집단마다 서로 다른 의견을 가지고 있습니다. 비슷한 영리 기관이어도 정보의 은닉을 위해 오픈 소싱을 지양하는 곳이 있는 반면, 오히려 지향하는 곳도 있습니다. 거대 오픈 소스는 기술이 발전하고 기업이 영리 활동하는 걸 어떻게 도와줄 수 있는 걸까요? 아니, 후자의 경우 애초에 가능은 한 걸까요?

오픈 소스란?

오픈 소스의 정의에 있어 가장 보편적으로 참고되는 건 Open Source InitiativeThe Open Source Definition입니다. The Open Source Definition은 아래 네 가지 자유를 보장하는 것으로 요약할 수 있습니다 [2]:

  1. (Use) 오픈 소스 소프트웨어는 누구나 어떠한 목적으로든 사용할 수 있다.
  2. (Access) 오픈 소스 소프트웨어는 누구나 그 소스 코드에 접근할 수 있다.
  3. (Share) 오픈 소스 소프트웨어는 누구나 재배포할 수 있다.
  4. (Modify) 오픈 소스 소프트웨어는 누구나 그 수정본이나 파생 저작물을 개발·배포할 수 있다.

오픈 소스는 정보화 시대와 비슷한 시기에 도래했을 만큼 오래되었습니다. 소프트웨어 개발에서 오픈 소스를 이용하고 새로이 개발하는 건수는 계속해서 증가하고 있죠. 소프트웨어 개발자들의 제일의 플랫폼이자 오픈 소스의 성지인 GitHub의 2023년 통계조사에 따르면 공개된 코드 저장소의 개수는 2.8억 개 이상으로, 지난해에 비해 22% 증가했습니다.

GitHub의 2023년 오픈 소스 관련 통계 요약 [Daigle et al. Octoverse 2023].

오픈 소스의 예 중 가장 유명한 건 아무래도 리눅스일 것입니다. 리눅스는 Microsoft WindowsmacOS와 같은 운영체제로 [3], 전 세계 과반의 스마트폰에 설치된 안드로이드 운영체제의 기반을 이룹니다. 또한 리눅스는 AI 서비스, 웹 서비스, 기상 예측, 과학 연구 등 많은 분야에서 쓰이는 슈퍼컴퓨터의 운영체제로 선택되고 있습니다. 이렇게 리눅스라는 하나의 예만 보더라도 오픈 소스가 사유 소프트웨어에 비해 전사회에 얼마나 큰 영향을 미쳤는지 충분히 설명할 수 있습니다.

오픈 소스와 AI

바로 위에서 리눅스의 예를 들 때 AI 이야기가 살짝 지나갔는데요, AI 분야에는 오픈 소스가 어떤 기여를 했을까요?

AI 모델 개발을 한 번이라도 경험한 분이라면 오픈 소스가 얼마나 중요한지는 다음 두 단어만 봐도 절감할 수 있습니다. 바로 PyTorchTensorFlow이죠. 둘은 각자가 AI (정확히는 기계학습) 서비스를 개발할 때 필수불가결한 프레임워크입니다. 지금에서 둘 중 어느 하나도 없이 AI를 개발한다는 건 아무런 도구 없이 손으로 집을 짓는 것과 같을 겁니다.

또 하나의 예로 Hugging Face 플랫폼이 있습니다. Hugging Face에서는 수많은 AI 개발자들이 모델과 데이터, 라이브러리 등을 공개하거나 협력개발하고, 또한 사용자로서 AI 모델들의 기능을 웹상에서 간편하게 이용해 볼 수 있습니다. GitHub가 소프트웨어 전반의 오픈 소싱과 협업의 장이 되는 것처럼, Hugging Face 또한 AI 분야에서 비슷한 역할을 하며 계속해서 영향력을 키워가고 있습니다.

AI 기반 신약개발 분야에 밀접한 오픈 소스의 예로는 ColabFold가 있습니다 [Mirdita et al. Nature Methods 2022]. ColabFold는 단백질의 구조를 예측하는 AlphaFold 2와 같은 모델을 최소한의 타이핑과 클릭만으로 이용할 수 있게 만들어진 프로젝트입니다. 지금은 Google DeepMind가 AlphaFold ServerAlphaFold 3 기능의 일부를 제공하고 있지만, 그에 앞서 AlphaFold 2와 RoseTTAFold를 포함한 유사 모델들을 코딩을 모르는 연구자도 쉽게 써볼 수 있도록 제공하고, 또한 오픈 소스로 개발하여 연구자들이 함께 개선해 나갈 수 있게 한 데에 의의가 큰 프로젝트입니다. ColabFold는 지금도 교육뿐 아니라 연구 목적에서 활용되고 있습니다.

ColabFold 노트북을 이용해 β-carbonic anhydrase (UniProt ID: B5ILN4)의 구조를 예측하고 시각화한 화면.

오픈 소스와 생성 AI (feat. LLM)

AI에 있어 지금 제일의 화두는 무엇보다도 생성 AI일 것입니다. ChatGPT와 같은 서비스의 근간이 되는 거대언어모델이 가장 대표적인 생성 AI이죠. 하지만 OpenAI의 ChatGPT와 Google의 Gemini는 오픈 소스가 아닙니다. 소스 코드가 없을뿐더러 모델 구조가 어떠한지, 모델을 어떻게 훈련했는지, 어떤 데이터를 사용했는지 등 많은 점들이 기밀에 부쳐있죠. 주류 거대언어모델 중 오픈 소스에 준하는 모델로는 Meta의 Llama가 있습니다 [4].

거대언어모델의 대두에 힘입은 덕분에 생성 AI와 관련된 오픈 소스 프로젝트의 수도 급증했습니다. 아래 그림에서 보이는 것처럼, GitHub에 공개된 생성 AI 프로젝트 수는 2022년에 비해 2023년에 무려 248%가 증가했습니다. 많은 경우 OpenAI API와 같은 사유 소프트웨어의 사용을 전제하지만, 많은 파생 프로젝트들이 오픈 소스로 개발되며 커뮤니티를 발전시키고 있습니다. 그 예로 현재까지 무려 17만 개 가량의 별을 받은 AutoGPT가 있습니다.

GitHub상 생성 AI 관련 프로젝트 수의 증가 추이 [Daigle et al. Octoverse 2023].

 

왜 오픈 소스여야 할까?

그렇다면 소프트웨어나 AI를 오픈 소스로 개발하면 무엇이 좋을까요?

다양한 오픈 소스 예시

오픈 소스가 개인에게 좋은 점

오픈 소스의 이점은 개인의 입장과 기업의 입장으로 나누어 볼 수 있습니다. 먼저 개인이 오픈 소스 소프트웨어를 개발하는 동기로는

  • 순수한 즐거움
  • 대상 소프트웨어 혹은 개발 커뮤니티의 발전을 위한 이타심
  • 다른 사람들의 코드를 보거나 협력하며 배우는 기회
  • 평판과 경력 개발

등이 있습니다. 실제로 오픈 소스에 기여하고 있는 240여 명의 개발자를 대상으로 한 조사에선 위 동기들에 높은 비율로 찬성하는 것으로 나타났습니다 [Gerosa et al. 2021].

오픈 소스가 기업에게 좋은 점

오픈 소스의 선택이나 개발이 기업에게 줄 수 있는 이점으로는

  • 오픈 소스를 개발하는 기업의 인지도 상승과 인재 채용으로의 연결
  • 제품을 개발하는 비용 절감
  • 더 많은 사람의 기여를 통한 제품의 빠른 개발과 개선
  • 독과점 방지

등 다양한 면들이 있습니다. The Linux Foundation에서 2023년에 Fortune 500대 기업에 시행한 조사에 따르면, 과반의 응답자가 △비용 절감 △더 빠른 개발 △높은 호환성과 표준화 (open standards & interoperability) △커뮤니티를 통한 지식 교류 △사유 소프트웨어로부터의 독립 등 면에서 오픈 소스가 많은 이점이 있다고 응답했습니다 [Chesbrough. The Linux Foundation 2023].

물론 기업 입장에선 오픈 소스를 택하는 것에 장점만 있지는 않겠죠. 동일한 조사에서 나타난 오픈 소스로 인한 비용 요소로는 △보안 취약점 △사용자 지원의 부재 △라이선스 컴플라이언스 등이 있습니다. 그럼에도 불구하고, 70%에 달하는 응답자가 오픈 소스로 인한 이득이 비용을 넘는다고 답했습니다.

“Measuring the Economic Value of Open Source” 보고서의 인포그래픽 [Chesbrough. The Linux Foundation 2023].

오픈 소스의 기여를 좀 더 가시적으로 제시한 조사로는 OpenUK의 2023년 조사가 있습니다. 해당 조사에서는 전 세계에서 최초로 오픈 소스 소프트웨어의 부가가치를 산정했습니다. 오픈 소스 소프트웨어의 2022년 영국 내 부가가치는 약 136억 파운드로, 동일 해 IT, 소프트웨어 및 컴퓨터 서비스 군의 영국 내 총부가가치인 507억 파운드의 27%를 차지합니다. 비록 그 수치는 영국에 해당하지만, 전체 테크 섹터의 경제적 가치의 상당량이 오픈 소스에서 비롯했다는 점은 여러 나라에 시사될 것 같습니다.

오픈 소스의 진정한 좋은 점 - Llama 3.1의 선례

오픈 소스—좀 더 넓게는 기술과 연구, 특히 AI의 openness—에 대한 공감은 다양한 사례에서 방증되고 있습니다. 지난해 말 OpenAI에서 Sam Altman이 해고되었던 사건이 그렇고 [Wikipedia], AlphaFold 3가 모델 공개 없이 Nature에 출판되고 학계의 수많은 비판을 낳은 것이 그렇죠 [Nature 2024].

많은 개발자와 연구자들이 오픈 소스를 지지하는 동기에 이전 절들에서 나열된 점들만 있을까요? 혹여 공익 추구란 명목 뒤에 프리웨어를 탐하는 지극히 좁고 개인적인 욕심을 숨긴 건 아닐까요?

오픈 소스의 좀 더 근본적이고 장기적인 이점은 Mark Zuckerberg의 Open Source AI Is the Path Forward에서 아주 잘 표현되어 있습니다. 해당 기고는 지난 7월 Meta에서 Llama 3.1을 공개하면서 함께 올라왔습니다. 글을 요약해 보자면, AI 모델의 성능 측면에서, 그리고 안전성 측면에서 오픈 소스가 그 둘을 극대화할 수 있는 최선의 수단이란 것입니다. 오픈 소스는 누구나 접근 가능하고 수정 가능한 덕분에 가장 넓은 집단의 지성과 능력을 이용할 수 있습니다. 또한 오픈 소스는 특정한 시스템에 제약되지 않고 개발 생태계의 모든 수단을 이용할 수 있습니다. 덕분에 AI를 가장 빠르게, 가장 높게 발전시킬 수 있죠.

또한 AI의 가능한 모든 요소가 투명하게 공개될수록 더 안전해질 수 있다고 주장합니다. 오픈 소스 프로젝트는 불특정 한 다수로부터의 제안을 올바르게 반영해야 하기 때문에 오히려 사유 소프트웨어보다 더 엄밀하고 복잡한 절차를 거쳐 수정됩니다. AI 모델의 가능한 많은 요소가 공개되어 있을수록 더 많은 사람이 모델을 더 투명하게 이해할 수 있고, 그럴수록 AI의 안전한 운용을 위한 검사와 수정이 더욱 철저하게 이뤄질 수 있는 거죠. 물론 오픈 소스 AI의 안전성에 있어선 아직까지 입장이 다양하지만, 적어도 Zuckerberg는 오픈 소스가 해답이라고 믿고 있습니다.

마지막 절로 넘어가기 전에 제가 Zuckerberg의 글에서 가장 흥미롭게 읽은 단락을 인용하겠습니다:

다음 질문은 미국과 민주주의 국가들이 중국과 같은 막대한 자원을 가진 국가의 위협에 어떻게 대처해야 하는가입니다. 미국의 장점은 탈중앙화 및 개방형 혁신입니다. 어떤 사람들은 중국의 접근을 막기 위해 우리의 모델을 폐쇄해야 한다고 주장하지만, 제 생각에는 이는 효과가 없을 뿐 아니라 미국과 동맹국들에게만 불이익을 줄 것입니다. 우리의 적들은 스파이 활동에 능숙하고, 휴대용 컴퓨터 하드 드라이브 및 데이터에 들어가는 모델을 훔치는 것은 비교적 쉬우며, 대부분의 기술 회사는 이를 더 어렵게 만드는 방식으로 운영되지 않습니다. 폐쇄적인 모델만 존재하는 세상에서는 소수의 대기업과 지정학적 적대국만이 선도적인 모델에 접근할 수 있는 반면 스타트업, 대학, 중소기업은 기회를 놓치게 될 가능성이 높습니다. 또한 미국의 혁신을 폐쇄적인 개발로 제한하면 우리가 전혀 주도하지 못할 가능성이 높아집니다. 대신 강력한 개방형 생태계를 구축하고 선도 기업이 정부 및 동맹국과 긴밀히 협력하여 최신 기술을 최대한 활용하고, 장기적으로 지속 가능한 우위를 확보할 수 있도록 하는 것이 최선의 전략이라고 생각합니다.

The next question is how the US and democratic nations should handle the threat of states with massive resources like China. The United States’ advantage is decentralized and open innovation. Some people argue that we must close our models to prevent China from gaining access to them, but my view is that this will not work and will only disadvantage the US and its allies. Our adversaries are great at espionage, stealing models that fit on a thumb drive is relatively easy, and most tech companies are far from operating in a way that would make this more difficult. It seems most likely that a world of only closed models results in a small number of big companies plus our geopolitical adversaries having access to leading models, while startups, universities, and small businesses miss out on opportunities. Plus, constraining American innovation to closed development increases the chance that we don’t lead at all. Instead, I think our best strategy is to build a robust open ecosystem and have our leading companies work closely with our government and allies to ensure they can best take advantage of the latest advances and achieve a sustainable first-mover advantage over the long term. — Mark Zuckerberg, Founder & CEO, Meta, 2024.

거인의 어깨에 올라서서

학계에서 연구를 하는 것은 거인의 어깨에 올라서서 있는 것과 같습니다. 과거부터 차곡차곡 쌓인 무수한 사람들의 크고 작은 발견과 기여를 직간접적으로 발판 삼아 새로운 실적을 내죠. AI 개발도 마찬가지입니다. 수많은 개발자와 연구자들이 openness에 공감하며 공들여 개발한 오픈 소스들을 딛고 올라 새로운 모델을 개발하죠.

제약 산업이나 소재 산업 같은 분야에서 openness를 일컫는 건 마치 물과 기름을 동시에 떠올리는 것 같습니다. 물질 개발을 위한 컴퓨터 시뮬레이션에 오픈 소스를 활용하는 것 같은 좁은 예를 넘어서, 물질을 개발하는 과정 자체를 open 할 수는 없을까요? 오픈 이노베이션이 진정으로 의미하는 것처럼, 물질이나 소스 코드 같은 산물이 아니라 그것들을 만들어낸 과정, 지식, 노하우에 앞서 소개된 네 가지 자유를 전제하면 어떻게 될까요? 영리 기업인 Meta가 오픈 소스를 추구하는 것처럼, 정보 보안이 생명인 제약 산업에서도 openness의 가능성을 진지하게 고민하는 날이 도래할 순 없을까 싶습니다 🤗


[1] 두 인용 모두 다음의 초록으로부터 재인용: [Chesbrough. The Linux Foundation 2023].

[2] 해당 네 가지 자유는 자유 소프트웨어의 속성에 해당하며, 자유 소프트웨어와 오픈 소스 소프트웨어는 많은 점에서 비슷하지만 엄밀하게는 차이가 있다. 예를 들어, 소프트웨어 개발의 자유주의를 선도한 Richard Stallman과 기관 GNU의 경우 둘의 차이를 심각하게 인식한다. 단, 본 글에서는 오픈 소스에 대한 쉬운 이해를 위해 관련한 내용은 생략했다.

[3] 정확히는 리눅스 커널을 의미하지만, 해당 커널에 기반하는 운영체제를 총칭하기도 한다. 단, 운영체제를 일컫는 경우, [2]와 관련한 맥락에서 “GNU/Linux” 표기가 주장되기도 한다.

[4] Llama는 The Open Source Definition에 의하면 엄밀하게는 오픈 소스가 아니다. Meta는 Llama의 라이선스의 1.b.v항과 2항으로 모델의 사용을 제한하고 있다. 현재 해당 페이지는 Llama 2만을 얘기하나, 이후에 나온 Llama 3과 3.1 모두 라이선스에 동일한 조항을 포함한다. 반면, Google의 경우 Gemini 서비스와 동일하게 개발했다고 주장하는 거대언어모델 Gemma를 오픈 소스로 공개하였다. Llama와 Gemma 모두 데이터는 공개되어 있지 않다.