바위, 종이, 실리콘: MacBook에서 235B AI 모델을 구동한 방법
대부분의 사람들은 소비자용 하드웨어에서 프런티어(frontier) AI 모델을 실행할 수 없다고 말합니다.
Qwen3-235B와 같은 모델을 실행하려면 470GB의 RAM이 필요합니다. 최고 사양의 Mac Studio조차 192GB에 불과합니다. 업계에서는 대신 클라우드 GPU를 대여하라고 권합니다.
저는 시스템 엔지니어가 아닌 웹 개발자입니다. GPU 커널이나 저수준 메모리를 다루는 일은 하지 않습니다. 하지만 한 가지 의문이 생겼습니다. '실제로 활성화되는 모델의 부분만 로드한다면 어떻게 될까?'
Mixture of Experts (MoE) 모델에서는 대부분의 파라미터가 대부분의 시간 동안 작동하지 않고 대기 상태로 있습니다. 저는 가중치(weights)가 필요해지는 직전에 이를 로드하는 시스템을 구축하기로 했습니다.
C++ 코드를 작성하는 데 AI 에이전트의 도움을 받았습니다. 저는 호기심을 제공했고, 에이전트는 구현의 깊이를 더해주었습니다.
저의 영감은 Filippo Biondi의 위성 관련 논문에서 얻었습니다. 그는 레이더를 사용하여 기자의 대피라미드 내부를 관찰했습니다. 레이더는 바위를 투과할 수는 없지만, 바위에 부딪힐 때 발생하는 진동을 측정할 수는 있습니다. 그는 그 진동을 측정하여 내부 지도를 만들었습니다.
저는 이 논리를 AI 메모리에 적용했습니다.
저는 이를 S-MoE (Seismic Mixture of Experts)라고 부릅니다. 이 시스템은 세 가지 스트림을 통해 작동합니다:
• The Scout: RAM에서 실행되는 모델의 경량화된 부분입니다. 다음에 어떤 전문가(expert)가 활성화될지 예측합니다. • The Streamer: SSD에서 특정 전문가 블록을 메모리로 로드하는 I/O 스레드입니다. • The GPU: 방금 도착한 가중치를 사용하여 연산을 수행합니다.
이 시스템은 OS 캐시를 우회하기 위해 Direct I/O를 사용합니다. 런타임 힙 할당(heap allocations)을 사용하지 않으며, 모든 OS 뮤텍스(mutexes)를 피합니다.
결과는 어떨까요? 16GB RAM을 가진 Mac과 512GB RAM을 가진 Mac 모두 235B 모델로부터 정확히 동일한 지능을 산출해냅니다. 단지 한쪽이 다른 쪽보다 더 빠를 뿐입니다.
AI를 둘러싼 메모리 장벽은 자연 법칙이 아니라 소프트웨어적 가정입니다. 여러분이 이미 소유하고 있는 하드웨어에서도 프런티어 모델을 실행할 수 있습니다.
S-MoE는 오픈 소스입니다.
Optional learning community: https://t.me/GyaanSetuAi
