Moonshot AI는 7월 27일 Kimi K3의 가중치를 온라인에 공개하며, 지금까지 출시된 가장 큰 오픈 모델을 누구나 무료로 내려받을 수 있게 했다. 이 모델은 2023년에 설립된 베이징 스타트업이 만든 2.8조 파라미터 시스템으로, 텍스트뿐 아니라 이미지를 읽고 한 번의 질의에 100만 토큰을 입력받을 수 있다. 이는 전체 코드베이스를 한 번에 담기에 충분한 규모다.

업계의 이목을 끈 것은 이 모델이 리더보드에서 차지한 위치였다. 독립 추적 기관들은 K3가 최상위권에 있다고 평가한다. Artificial Analysis의 인텔리전스 지수에서는 Claude Fable과 GPT-5.6 Sol Max에 이어 3위권에 올랐고, Frontend Code Arena에서는 실행 비용의 일부만으로 1위를 차지했다. 오픈 가중치 모델은 누구나 내려받아 검사하고, 수정하고, 자체 네트워크 안에 보관할 수 있다. 선도적인 폐쇄형 모델 중 어떤 것도 어떤 가격으로도 이를 허용하지 않는다. 지난주 많은 사람을 불안하게 만든 부분이 바로 이것이며, 이번 출시는 단순한 연구 성과가 아니라 OpenAI와 Anthropic을 겨냥한 경쟁적 움직임으로 해석됐다.

다만 덜 주목받는 한 가지 문제가 있다. 내려받을 수 있다는 것과 실행할 수 있다는 것은 다르다. 파일 용량은 1.56TB에 달하며, 실제로는 데이터센터용 GPU가 장착된 여러 노드의 랙이 필요하다는 뜻이다. 그런 장비가 없는 사람에게 오픈 가중치는 대부분 기술적 수사에 가까웠다.

Pipe Network가 오픈 소스 포트를 공개하면서 격차를 좁혔다. 이제 작동하는 K3를 Apple Silicon 데스크톱 한 대에서 구동할 수 있다.

장애물은 처음부터 메모리였다. 가장 많이 압축한 형태에서도 K3에는 약 870GB가 필요하다. 현존하는 가장 큰 Mac인 M3 Ultra Mac Studio의 통합 메모리 용량은 최대 512GB다. 이는 간발의 차이로 부족한 수준이 아니다.

두 가지 엔지니어링 작업이 이 격차를 메운다.

변환 스트리밍

모델을 Mac에서 실행하려면 먼저 Apple의 머신러닝 소프트웨어가 읽는 형식으로 파일을 다시 작성해야 한다. 표준 도구는 전체 모델을 메모리에 불러온 뒤 변환하고 다시 저장하는 방식으로 이를 처리한다. 사람들이 집에서 실행하는 소형 모델에는 이 방식이 통한다. 그러나 K3에는 적용할 수 없다. 원본 형태의 K3는 5.6TB이고, 시중에 판매되는 어떤 기계도 그에 가까운 메모리 용량을 갖추지 못했기 때문이다.

모델은 하나의 단단한 블록이 아니다. 여러 섹션이 쌓인 구조이며, K3에는 93개 섹션이 있다. 각 섹션은 작업의 일부를 처리한 뒤 다음 섹션으로 넘긴다. 이 포트의 변환기는 바로 이 구조를 활용한다. 한 섹션을 불러와 변환하고 디스크에 기록한 다음 삭제하고, 다음 섹션으로 넘어간다. 전체 모델이 한 번에 존재할 필요가 없으므로 작업을 수행하는 기계에 필요한 메모리는 수천 GB가 아니라 수십 GB에 불과하다. 화려한 작업이라기보다는 배관에 가깝지만, 이것 없이는 프로젝트의 다른 어떤 작업도 진행할 수 없다.

사용하지 않는 전문가 제거

K3의 대부분은 어느 순간에도 아무 작업을 하지 않으며, 이는 설계상 의도된 것이다. 하나의 거대한 범용 네트워크가 아니라 좁은 분야의 전문가들로 구성된 패널 형태로 만들어졌다. 93개 섹션 각각에는 896개의 전문가가 들어 있고, 라우터가 처리 중인 단어에 가장 적합한 16개를 선택한다. 나머지는 작업에서 제외된다. 이를 모두 합치면 디스크에 저장된 모델 용량의 약 98%가 어느 순간에도 유휴 상태인 전문가들로, 이들 역시 공간을 차지하고 있다.

이러한 전문가는 ‘experts’라고 불리며, Cerebras에서 개발한 기법인 REAP는 어떤 전문가를 남길지 결정하는 방법이다. 실제로 관심 있는 텍스트 유형의 샘플을 모델에 통과시키고, 어떤 전문가가 핵심 작업을 수행하는지 확인한 뒤 제 몫을 하지 못하는 전문가는 제거한다. K3에 적용하면 1.56TB가 350GB로 줄어들어 Mac Studio에 여유 있게 들어간다.

코퍼스가 곧 제품이다

이 저장소에서 가장 흥미로운 결과는 보정에 사용하는 샘플 텍스트가 완성된 모델의 능력을 결정한다는 점이다.

팀은 다양한 유형의 콘텐츠가 어떤 전문가에 의존하는지 측정했다. 유럽 언어들은 서로 군집을 이룬다. 코드도 하나의 군집을 이룬다. 중국어와 코드는 거의 겹치지 않으며, 무작위로 예상되는 수준보다도 겹침이 적다.

이 결과는 출력에 나타난다. 영어와 코드로 보정한 빌드는 중국어 능력을 완전히 잃고 같은 말을 반복하기 시작한다. 중국어만으로 보정한 빌드는 깔끔한 중국어를 작성하지만 작동하는 코드를 생성하지 못한다. 두 가지 모두로 보정한 빌드는 양쪽 능력을 모두 유지한다. 모델을 단순히 압축하는 것이 아니라, 어떤 능력을 남길지 선택하는 것이다.

팀은 이 결과가 정식 평가가 아니라 소수의 테스트 프롬프트에 기반한다는 점을 신중하게 지적한다. 또한 같은 실험의 이전 버전에서는 나중에 잘못된 것으로 밝혀진 결론을 도출하기도 했다.

솔직한 단서

훈련은 모델을 가르치는 과정이다. 추론은 모델을 사용할 때마다 일어나는 일로, 프롬프트를 한 단어씩 답변으로 바꾸는 작업이다. 이때 생성되는 각각의 단어마다 기계가 모델 가중치의 상당 부분을 훑어야 한다. 따라서 추론 속도는 모델이 얼마나 영리한지보다 컴퓨터가 데이터를 얼마나 빠르게 이동시킬 수 있는지에 좌우된다.

이 환경에서 속도는 초당 0.14~0.20토큰이다. 문장 하나를 생성하는 데 몇 분이 걸린다. 생성되는 단어 하나마다 메모리에서 약 87GB를 읽어야 하므로, 이는 소프트웨어 버그가 아니라 하드웨어의 한계다. 더 공격적으로 가지치기해도 문제가 해결되지 않는다. 100GB 더 작은 빌드도 속도는 거의 빨라지지 않았다.

이 프로젝트의 진정한 교훈은 바로 이것이다. 모델을 머신에 맞추는 일은 소프트웨어로 해결할 수 있었다. 하지만 실제로 사용할 수 있게 만드는 일은 그렇지 않았으며, 이는 이 정도 크기의 모델이 "로컬"이라는 표현이 의미를 갖기 전에 여전히 얼마나 많은 하드웨어를 필요로 하는지 상당히 정확하게 보여준다. 이 도구는 실행해 두고 나중에 돌아오는 작업을 위한 배치 도구이지, 챗봇이 아니다. 다만 소비자용 머신의 메모리 대역폭은 계속 증가하고 있고, 소프트웨어 기반 작업은 이제 완료되어 공개된 상태다. 언젠가 하드웨어가 이를 따라잡을 때를 위해서다.

두 가지는 깔끔하게 작동한다. 비전 구성 요소는 Moonshot 자체의 코드로 테스트했으며 반올림 오차 범위 내에서 일치하므로, 이미지가 처음부터 끝까지 정상적으로 처리된다. 또한 남아 있는 전문가 모델들은 원본과 비트 단위로 완전히 동일하다. 소스 형식과 Apple의 형식이 우연히 숫자를 같은 방식으로 인코딩하기 때문이다. 손실된 정보는 가지치기 자체뿐이다.

이 저장소는 무엇이 아직 테스트되지 않았는지도 이례적으로 직접적으로 밝힌다. 가지치기하지 않은 전체 버전은 이를 담을 수 있는 컴퓨터가 존재하지 않기 때문에 토큰을 단 하나도 생성한 적이 없다.