이번엔 사명을 '메타'에서 '오픈'으로 바꾸기라도 할 참인가?
며칠 전인 7월 23일, 메타에서 ‘Llama 3.1’ 모델 패밀리를 발표했습니다.
지난 4월, ‘Llama 3’ 패밀리를 발표한지 3개월 만인데요. Llama 3은 8B, 70B의 두 종 (각 종별 2가지로 총 4가지)의 소형 버전 뿐이었다면, 이번에는 매개변수 4,050억개짜리 Llama 3.1 405B 모델이 포함되어 있습니다. 이 모델은 ‘공개된’ 모델 중 최대 규모의 모델로서, GPT-4, Claude 3.5 Sonnet 등의 폐쇄형 모델 (Closed Model)과 대등한 성능을 보이는 것으로 알려져 있습니다.
발표와 함께 학계, 업계의 반응도 뜨겁고, 한 마디로 화제가 되고 있는데요. 특히 메타의 CEO인 마크 주커버그는 “오픈 소스 OS인 리눅스가 현재 클라우드 컴퓨팅 및 수많은 모바일 디바이스의 업계 표준이 되었다”고 하면서 “AI 모델 역시 비슷한 방식으로 발전할 것이다”라고 Llama 3.1에 의미를 부여했고, “내년부터는 Llama가 업계에서 가장 뛰어난 모델이 될 것이다”라고 강한 자신감을 보였습니다.
자, 한 번 발표된 Llama 3.1이 어떻게 만들어졌고 얼마나 뛰어난지, 이 Llama 3.1의 발표가 메타와 다른 AI 리더들에게 어떤 의미일지, 그리고 메타의 ‘오픈 소스’가 정말 어떤 건지 한 번 생각해 볼까요?
다른 모델보다도, 이번에 공개된 모델들 중 가장 크고 성능이 좋은 Llama 3.1 405B 모델을 가지고 살펴보죠.
Llama 3.1 405B의 사전 학습 (Pre-training)
이 모델은 15조 개 (15 trillion) 토큰의 다중 언어(Multilingual) 데이터로 사전 학습된 모델이고, Llama 2 때와 비교했을 때 거의 50배에 가까운 3.8×1025 FLOPS의 컴퓨팅 파워로 학습했습니다. 모델 이름처럼 4,050억개 매개변수를 가진 Dense Transformer 아키텍처를 사용해서 안정성, 확장성 관점의 최적화를 거쳤습니다.
트레이닝 상의 도전과제 (Challenge)
Llama 3.1 405B는 공개된 모델들 중 가장 거대한 모델인 만큼 자그마치 16,000개의 H100 GPU를 사용했다고 합니다. 이 과정에서 GPU 최적화를 위해서 ‘4D 병렬화’ 개념을 적용했는데, 바로 다수의 GPU들 사이의 연산을 최적화하기 위해서 텐서, 파이프라인, 컨텍스트, 데이터의 4가지를 모두 병렬화한 겁니다. (데이터 병렬화에 대해서 설명한 튜링포스트 코리아의 글을 참조해 보시면 좋겠습니다)
Llama 3.1 405B의 사후 학습 (Post-training)
모델의 답변을 사람의 선호도와 정렬 (Align)하고 특정한 모델의 기능을 개선하기 위해서, 사람이 주석을 달은 데이터로 파인튜닝되어 있습니다. 그리고 강화학습법인 DPO (Direct Preference Optimization; 직접 선호도 최적화)를 적용했고, 모델 출력의 안전성, 신뢰성을 확보하기 위해서 사후 학습 단계에서 안전성 지표들을 적용했다고 합니다.
Llama 3.1 405B 모델은 공개된 모델들 중에서는 최초로 ‘전반적으로 GPT-4와 같은 선두 주자에 육박하는 성능을 보이는 모델’입니다.
영어, 스페인어, 이탈리아어, 독일어, 포르투칼어, 아랍어, 벵골어, 태국어의 8개 언어를 지원하고, Context Window도 Llama 3 때와 비교해서 15배 이상 증가한 128,000 토큰으로 늘어났습니다. (128K 토큰이면 xAI의 Grok 1.5, GPT-4 Turbo 모델 정도 수준으로, 대략 50~60 페이지 분량 길이입니다.)
밑의 표에서도 나타나듯이, Llama 3.1 405B는 공개된 모델들 중에서는 가장 강력한 수준의 성능을 보여줍니다. MMLU와 IFEval 같은 포괄적인 성능 테스트 뿐 아니라, GSM8K (수학), ARC Challenge (추론), Nexus (도구 활용), Multilingual MGSM (다국어) 등 다양한 특수 영역의 테스트에서도 GPT-4o, Claude 3.5 Sonnet 등 현존 최고의 모델들과 대등한 결과를 기록하고 있습니다.
Llama 같은 공개된 모델이 폐쇄형 모델과 경쟁하면서 성장하려면, 생태계에 여러 관점과 방식으로 Llama를 사용하고자 하는 이해관계자들에게 부가적인 기능과 다양한 선택지를 제공해야 합니다.
Llama 3.1 405B는 손쉽게 합성 데이터를 생성한다든가, 간단한 단계를 통해서 Model Distillation을 위해 사용한다든가, AWS/NDIVIA/Databrick 등의 파트너가 제공하는 도구들로 RAG 시스템을 용이하게 구축할 있게 한다든가 하는, 생태계 확산을 위한 작업을 진행하고 있는 것으로 보입니다.
그리고 다국어를 지원하면서 세이프티 계층을 추가한 Llama Guard 3라든가, Prompt Injection이나 Jailbreak를 방지하기 위한 Prompt Guard와 같은 추가 요소도 함께 공개를 했고, 3rd Party 도구들이 Llama 모델에 손쉽게 접근하고 통합할 수 있도록 하는 Llama Stack API를 내놓고 이에 대한 개발자 커뮤니티의 피드백을 기다리고 있습니다.
우선 많은 전문가들은 이번 메타가 발표한 Llama 3.1에 기대를 갖고 있어 보입니다. ‘공개된’ 모델인 만큼, 기본적으로 거대언어모델을 활용하고자 하는 기업 등 많은 당사자에게 하나의 또 다른 옵션을 제공하는 셈이니까요. 그리고 ‘Llama Moment’라고 불리는, 2023년 3월 4chan에 다운로드할 수 있는 토렌트 파일로 Llama 모델이 유출된 이후, 원했든 원치 않았든 Llama 모델이 다른 수많은 (소형) 오픈소스 모델의 기반이 되었다는 건 이미 주지의 사실입니다.
그런데, Llama 3이 공개된지 한 달 뒤에 오픈AI가 GPT-4o, 최근에는 GPT-4o 미니를 내놨고, 구글은 소형 모델 Gemini 1.5 Flash를, 앤쓰로픽도 Claude 3.0을 3.5로 업그레이드하면서 소형 모델 Sonnet을 먼저 공개했죠. 메타가 자리잡고 있던 판에 초거대모델을 만들던 경쟁사들이 치고 들어온 셈이니, 메타로서는 이에 대한 카운터 펀치를 날리고도 싶었을 것 같습니다.
단, 시장의 흐름이 어느 정도 초거대 모델에서 - 특히 오픈소스의 경우 - 소형언어모델 (sLM)로 이동 중인 상황에서 큰 모델 발표가 어떤 파급효과가 있을지 의구심을 표하는 경우도 있습니다. 웬만큼 큰 규모의 기업이 아니고서야, Llama 3.1 405B 모델을 이용하려면 서버 클러스터 수준의 비싼 컴퓨팅 자원들이 필요하니까요.
어쨌든 메타의 입장에서 가장 큰 전략적 목표는, Llama 3.1 405B 모델을 위시로 한 Llama 모델 패밀리를 통해서 더 많은 사용자 기반을 확보하면서 사실상의 업계 표준 (de facto Standard)으로 자리를 확고하게 하면서 지배력을 강화하는 것일 겁니다. 어쨌든 폐쇄형 모델들과 대비해서 비용 대비 성능이 훨씬 좋을 수 밖에 없고, 활용의 자유도도 상대적으로 높으며, 3rd Party들이 붙은 Llama 생태계가 성장한다면 다양한 아키텍처의 LLM 어플리케이션들이 Llama 기반으로 등장하고 확산할 수 있을 겁니다.
이런 전략은 폐쇄형 모델을 기반으로 선두를 달리고 있는 오픈AI, 구글, 앤쓰로픽 등의 경쟁자에게 상당한 위협이 될 수 있습니다. Llama 3.1 발표 하루만에 Arcee.ai 같은 회사는 자사의 Cloud + VPC를 이용해서 Llama 3.1 405B를 더 효율적으로 트레이닝하고 활용할 수 있는 서비스를 제공하기 시작했습니다.
비단 생태계라든지 B2B 측면에서 뿐 아니라, 이런 초거대규모 모델이 결국 타겟으로 할 수 밖에 없는 ‘글로벌 B2C’ 서비스 영역에서 앞서거니 뒷서거니 하고 있는 경쟁사들 — 오픈AI, 애플, 구글 등 - 과 한 판 벌여보고자 하는, 장기적인 포석의 의미도 크다고 봅니다. 아직 LLM을 위시로 한 ‘생성형AI’ 서비스의 폼팩터 (Form Factor)가 어떤 것이어야 하느냐 규명되지 않은 상태에서, 왓츠앱, 페이스북 메신저, 페이스북, 인스타그램, 쓰레드, 메타 퀘스트 등 엄청난 사용자 베이스와 미래의 UX로 거듭날 만한 아이템들을 가진 메타로서는 승부를 걸어보고 싶을 겁니다.
구글이나 메타처럼 이렇게 기댈 언덕을 지렛대 삼아서 AI를 키우는 회사가 아닌, 순수한 AI를 시작으로 서비스를 만들어가야 할 오픈AI나 앤쓰로픽 같은 회사들의 움직임, 그리고 기업 가치 향방이 궁금해지네요.
다 좋아요. 좋은데, 성질 고약한 저같은 사람에게 하나 걸리는 부분이 있습니다. 바로 ‘오픈 소스’라는 표현이에요.
어떤 회사가, 자사가 개발한 기술적 자산을 어떤 조건으로 공개하거나 비공개하는 것은 뭐 회사 마음이에요. 아무 문제 없습니다. 그리고, 기존의 소프트웨어와 조금은 다른 요소들이 많은 AI 판에서 ‘오픈 소스’의 정확한 정의가 무엇이냐에 대해서도 커뮤니티에서 아직 명확히 정리되고 합의된 것이 없기는 합니다.
그럼에도 불구하고, 소프트웨어 업계에서 ‘오픈 소스’라는 말은 커뮤니티 내에서 상식적으로 통용되고 받아들여지는 기술적 정의 (Technical Definition)가 있는 표현입니다. 예를 들면, OSI (Open Source Initiative)가 정의하는 ‘오픈 소스’의 의미를 일부 살펴보면:
The license shall not restrict any party from selling or giving away the software as a component of an aggregate software distribution containing programs from several different sources. The license shall not require a royalty or other fee for such sale. The program must include source code, and must allow distribution in source code The license must not restrict anyone from making use of the program in a specific field of endeavor.
그리고 FSF (Free Software Foundation)에서는 ‘Software Freedom’을 이렇게 정의해요:
There are four freedoms that every user should have: the freedom to use the software for any purpose, the freedom to change the software to suit your needs, the freedom to share the software with your friends and neighbors, and the freedom to share the changes you make.
위의 표현들은 물론 ‘법적 정의’는 아닙니다만, ‘오픈 소스 소프트웨어’라는 것에 대한 일반인의 기대치를 잘 반영한다고 봐요 - 쉽게 말하면 “이거 가지고 하고 싶은 거 하세요”지, 그저 “소스코드를 드립니다”가 아니라는 말이죠.
가장 잘 알려진 오픈 소스 라이센스라면 아마 Apache 2.0 라이센스와 MIT 라이센스일 텐데, 소프트웨어를 수정하든, 판매하든, 수정해서 폐쇄형으로 판매하든 제약이 없습니다. 다른 많은 오픈 소스 AI 도구들도 Apache 2.0 라이센스 하에서 배포되고 있습니다 - 메타/페이스북의 대부분의 라이센스도, 그리고 LAION이나 OpenLLaMA 같은 AI 어시스턴트도 Apache 2.0 라이센스입니다.
그런데, 이번에 발표된 메타의 Llama 3.1 라이센스를 살펴보면, 아래와 같은 조건 (Term)이 붙어있습니다:
Additional Commercial Terms. If, on the Llama 3.1 version release date, the monthly active users of the products or services made available by or for Licensee, or Licensee’s affiliates, is greater than 700 million monthly active users in the preceding calendar month, you must request a license from Meta, which Meta may grant to you in its sole discretion, and you are not authorized to exercise any of the rights under this Agreement unless or until Meta otherwise expressly grants you such rights.
상업적으로 자유롭게 사용할 수 있지만, MAU (월간 활성 사용자수)가 ‘7억명이 안 되는 경우에만’ 그렇다는 거예요. 라이센스에 들어가는 조건 치고는 숫자가 아주 희한하지 않나요? 이건, Meta와 경쟁할 만한 글로벌, 거대 플랫폼 - Social Network, Video Chat, Siri 등 - 에는 ‘오픈하지 않겠다’는 의지, 또는 너희같은 거대 기업들이 사용하려면 ‘엄청난 돈을 내야 할 거야’라는 신호로 읽힙니다. 예를 들어, 최근에 ‘애플 인텔리전스’ - 이에 대한 튜링포스트 코리아 뉴스레터도 한 번 봐 주세요 - 를 중심으로 Multi-AI 전략을 발표한 애플이, iOS 18에 Llama 3.1을 쓰려면 메타의 허락을 받아야 한다는 겁니다. 아마 ‘쓰지 마’ 하거나 ‘돈 내라’고 하겠죠?
다시 말씀드리지만, 기업의 AI 제품 전략과 그에 맞는 라이센스 전략은 그 기업의 의사결정 내용이죠. 뭐라고 할 생각은 없어요. 다만, 작년까지만 해도 ‘Open Approach’라는, 약간은 애매한 용어로 넘어갔던 메타가, 이번에는 아예 대놓고 리눅스와 비교해 가면서 ‘Open Source’라는 용어로 자사의 기술을 포장하는 건, 아무리 잘 봐 줘도 ‘헷갈리게 해서 돈 벌자는 상술’로 보입니다.
모두를 위한 3차원 가상세계를 만들겠다며 ‘페이스북’에서 ‘메타’로 사명 변경을 한 것은 사실상 실패 - 일단은요 - 로 돌아간 것 같으니, 차라리 이번에 사명을 ‘오픈 뭐뭐뭐’ 또는 ‘뭐뭐뭐 오픈’이라고 하는게 좀 덜 뻔뻔해 보였을 것 같네요. ‘오픈AI’ 때문에 어려웠겠죠?