3 minute read

r/LocalLLM을 그냥 훑어 보다가 멈춘 글이 있었다. “돌릴 수 없는 거대 LLM은 대체 무슨 소용인가”를 첫마디로 던지는 글이었다. 질문이 무심해서 더 오래 남는다. 이 질문에 대한 제작자 나름의 답이 ClusterChat이다. 언어 모델을 블록 단위로 쪼개 접속한 사람들의 GPU에 나눠 얹고, 그 전 과정을 브라우저 안에서 끝내는 오픈소스 프로젝트다.

로컬 LLM을 쓰는 사람이라면 다 아는 벽이 하나 있다. VRAM이다. 요즘 좋다는 27B급 모델도 8비트로 얹으면 수십 기가바이트가 그냥 증발한다. 마침 같은 날 올라온 Qwen4 소식 스레드에서도 새 27B를 q4로 낮춰도 32기가 맥북에는 빠듯하다는 한숨이 나온다. 그래서 보통은 세 가지 중 하나를 택한다. 크기를 포기하거나, 작은 모델로 눈을 돌리거나, 클라우드 API 비용을 안거나. ClusterChat은 이 선택지 밖으로 걸어 나온다. 나 혼자 부족하면 여럿이서 얹으면 되지 않나, 하는 발상이다.

브라우저가 곧 클러스터다

동작 방식을 한 줄로 압축하면 이렇다. 모델을 블록 구간으로 쪼개고, 들어온 사람마다 한 조각씩 맡긴다. 브라우저 밖으로 나갈 필요가 없다. WebGPU가 각자의 GPU를 붙잡아 두고, WebRTC가 조각들 사이를 잇는다. 사이트를 열고 GPU를 빌려 줄지 묻는 체크박스에 체크하면 끝이다.

비슷한 시도가 없었던 것도 아니다. exo도 Petals도 있었다. 다만 이 둘은 결국 설치가 따른다. 파이썬 런타임을 깔고, 의존성을 맞추고, 포트를 열어야 한다. 제작자가 댓글에서 밝혔듯 분산 그 자체는 이미 풀린 문제였고, 남은 차이는 진입 장벽이었다. 설치라는 단어가 아예 등장하지 않는다는 것. 이게 생각보다 큰 차이를 만든다.

제작자가 실측으로 돌려 본 조합이 묘하게 현실적이다. 3090 한 장에, 늙어서 골칫거리였을 1070 Ti. 이 두 장을 묶어 Qwen3.8-27B를 8비트로 구동했다. 측정된 속도는 이렇다.

Qwen3.8-27B (q8, MTP speculative decoding)
- 3090 × 2, 서로 다른 두 집 (지연 28ms) → 약 8.1 tok/s
- 3090 × 2, 한 컴퓨터에 같이            → 약 20 tok/s

같은 GPU 두 장인데, 집만 다른 데 나눠 뒀을 뿐인데 속도가 절반 이하로 뚝 떨어진다. 병목은 연산이 아니라 회선이다. 토큰이 레이어 사이를 오가며 네트워크를 건너는 구조라서 어쩔 수 없는 부분이기도 하다. 홈랩을 굴려 본 사람이라면 익숙한 그래프, 거리가 늘면 처리량이 줄어드는 바로 그 곡선이 여기서도 그대로 나타난다.

사람이 나가도 채팅은 끊기지 않는다

설계에서 눈길이 머무는 부분은 내구성 쪽이다. 각 GPU는 여러 채팅의 KV 캐시를 따로 들고 있다. 그리고 모델 조각을 한 대만이 점유하지 않아도 된다. 같은 조각을 여러 GPU가 함께 들고 있을 수 있어서, 누군가 노트북을 덮고 자리를 떠도 남은 사람들이 이어 받는다. 모델이 죽는 게 아니라 그냥 사람이 나가는 것뿐인 구조로 만들어 둔 셈이다.

참여는 초대 링크로 묶이는 프라이빗 클러스터 단위다. 친구 몇이 자기 GPU를 꺼내 놓고 혼자서는 못 돌리는 모델을 함께 돌린다는 그림이 자연스럽게 그려진다.

한계도 제작자 스스로 정직하게 적어 뒀다. 채팅이 분리되어 있지, 비밀은 아니라는 것. 클러스터에 참여한 GPU들이 내 대화를 전부 처리하기 때문에, 믿을 만한 사람끼리 묶이고 공개 데모에는 아무것도 보내지 말라는 안내가 붙는다. 지금은 채팅만 된다. 공개 데모는 16명 제한에, 사람이 몰리는 시간대에는 토큰 속도가 2~3 tok/s까지 내려간다.

왜 주목할까

댓글 반응이 후끈했다. “과하게 띄우는 건 아닌 건지 모르겠는데, 혁명처럼 보인다”는 반응이 대표적이고, “구체적으로 어떻게 분산하냐”는 기술 질문이 곧바로 달렸다. 신작 소개글에는 드물게 물음표가 그렇게 빨리 붙는다. 읽은 사람들이 진지하게 받아 들였다는 뜻이다.

로드맵도 볼거리가 있다. MoE 모델 지원, Claude Code·OpenAI 호환 API 노출, 도구 호출, 웹 검색. 그리고 속도 개선인데, 여기서 제작자가 언급한 이름이 MAFDET이다. 지난주 이 블로그에서도 다룬, 엔터를 누르기 전에 미리 생각을 시작해 두는 방식의 프로젝트다. 브라우저 분산과 그런 선(先)사고 기법이 만나면 뭐가 되는 건지, 제작자 본인도 궁금하다고 아이디어를 던져 둔 상태다.

개인적인 감상을 덧대 보면, 이 프로젝트는 하드웨어 격차를 돈으로 풀지 않고 사람 수로 푸는 접근이다. 클라우드 API는 편하지만 프라이버시와 비용을 내야 하고, 로컬은 그 둘에서 자유롭지만 성능 벽에 막힌다. 그 사이에 “믿는 사람들끼리 GPU를 합친다”는 제3의 길을 놓아 본 것이다. 한계조차 코드와 실측 수치로 그대로 공개돼 있다. 솔직해서 오히려 신뢰가 간다.

정리

체크해 볼 지점은 세 가지로 좁혀진다. 브라우저만으로 분산 추론이 되는가, 되긴 한다. 회선이 병목이라 실사용 속도가 보장되는가, 상황에 따라 다르다. 그래도 해 볼 만한가, 친구 GPU 몇 장만 껴 준다면 그렇다. 공짜 점심은 아니지만, 점심 값을 여럿이 나눠 내는 묘안 정도로는 충분히 그럴싸하다.

코드는 GitHub에 공개돼 있다. 프라이빗 클러스터를 열어 친구들과 시험해 보거나, 공개 데모를 구경하는 것부터 시작할 수 있다.