
200만 토큰 컨텍스트와 4개의 볼트온 전문가: Macaron V1이 LoRA를 어떻게 실제 아키텍처로 변모시켰는가
요약
Mind Lab이 출시한 Macaron V1은 GLM-5.2를 베이스로 동결하고 4개의 1B LoRA 전문가 모델을 결합한 독특한 아키텍처를 선보입니다. 이는 LoRA를 단순한 비용 절감 수단이 아닌, 개인화된 상태를 유지하는 핵심 아키텍처로 격상시킨 사례입니다.
핵심 포인트
- GLM-5.2 베이스 모델을 동결하고 4개의 LoRA 전문가를 볼트온한 구조
- LoRA를 단순 패치가 아닌 지속적인 로컬 상태를 위한 아키텍처로 활용
- 200만 토큰의 긴 컨텍스트를 지원하여 개인화된 데이터 학습에 최적화
- 전체 재학습 없이도 개인의 선호도와 습관을 효과적으로 반영 가능
올해 중국 모델들의 출시 속도는 다소 놀라울 정도입니다.
GLM-5.2가 등장했을 때, 이미 대화의 주제는 이것이 Opus 4.8에 얼마나 근접했는가에 맞춰져 있었습니다. Kimi K3가 출시되자 대부분의 리더보드는 기준점을 Fable 5로 변경했습니다. 지난주 Alibaba는 2.4T 파라미터 규모의 Qwen3.8을 공개했습니다.
현지 연구소들은 더 이상 따라잡는 수준이 아닙니다. 그들은 이미 도착했습니다.
그러던 중 저는 완전히 다른 경로를 택한 모델을 만났습니다. 다른 모든 이들이 차세대 범용 플래그십(general-purpose flagship)을 만들기 위해 경주하는 동안, 이 모델은 GLM-5.2를 통째로 기반(bedrock)으로 동결(freeze)하고 그 위에 4개의 작은 전문가(experts)를 훈련시킵니다. 이 모델은 스스로를 개인용(personal) 모델이라고 부릅니다.
이것은 Mind Lab에서 막 출시한 Macaron V1입니다. 보도에 따르면 GLM-5.2를 기반으로 사후 훈련(post-trained)된 세계 최초의 모델이라고 합니다.
저는 수많은 새로운 모델을 테스트해 왔습니다. 하지만 실제 일상생활을 장기적으로 돕기 위한 용도로 포지셔닝된 모델은 다른 종류의 테스트를 요구했습니다.
그래서 저는 제 삶을 모델에 입력했습니다. 중국 마이크로블로깅 앱에서 작성한 제 게시물 4,580개를 모델에 쏟아붓고 인생 조언을 구했습니다. 이는 모델이 저와 어떻게 대화하는지 확인하기 위함도 있었고, 긴 컨텍스트(long context)를 실제로 얼마나 잘 읽어내는지 스트레스 테스트(stress-test)하기 위함이기도 했습니다.
LoRA의 새로운 역할
구조적으로 Macaron V1은 오늘날의 대형 모델들 사이에서 이례적인 존재입니다.
748B 파라미터 중 744B는 동결된 GLM-5.2 베이스(base)이며, 단 하나도 움직이지 않습니다. 실제로 훈련되는 것은 그 베이스에 볼트온(bolted onto)된 4개의 1B 모델이며, 팀은 이를 LoRA 전문가(LoRA experts)라고 부릅니다.
AI 이미지 생성(AI image generation)을 접해 보셨다면 LoRA는 익숙한 영역일 것입니다. 훈련된 모델에게 새로운 기술을 가르치는 기존 방식은 전체를 다시 훈련시키는 것이었습니다. 이는 비용이 많이 들고, 이미 알고 있는 것을 잊어버리는 현상(forgetting)이 발생하기 쉬웠습니다.
LoRA는 다른 접근 방식을 취합니다. 원래 모델은 건드리지 않은 채, 필요할 때 끼워 넣는 탈착식 플러그인처럼 옆에 작은 새 모듈을 부착합니다. Microsoft Research가 2021년에 이를 제안했으며, 이후 이는 시중에 떠도는 모든 스타일 및 캐릭터 모델의 중추가 되었습니다.
하지만 그동안 LoRA는 아키텍처적으로 진지한 접근이라기보다는 비용 절감을 위한 임시방편(workaround)으로 취급되어 왔습니다.
Mind Lab은 이를 한 단계 격상시켰으며, 저는 그 프레임워크가 적절하다고 생각합니다. 이 적은 양의 파라미터(parameters) 조각은 단순한 패치가 아니라, 지속적인 로컬 상태(persistent local state)에 더 가깝습니다. 베이스 모델(base model)은 일반적인 능력, 즉 공유되는 부분을 제공합니다. 어댑터(adapter)는 개인의 선호도, 습관, 그리고 도구를 사용하는 방식인 개별적인 부분을 담당합니다.
이러한 논리는 타당합니다. 이미 충분히 강력한 베이스 모델을 사용한다는 것은, 배포 후 학습하는 대부분의 내용이 무(zero)에서 새로운 능력을 구축하는 것이 아니라 모델이 이미 알고 있는 것을 재구성하는 것임을 의미합니다. 이는 아주 작은 업데이트만으로도 놀라울 정도로 큰 변화를 만들어낼 수 있음을 뜻합니다.
그들은 이 아이디어를 한계까지 밀어붙였습니다. _On the Scaling of PEFT_라는 제목의 논문에서, 그들은 어댑터가 레이어당 단 하나의 튜닝 가능한 방향(tunable direction)으로 압축되어도 여전히 안정적으로 학습될 수 있음을 보여줍니다. 이는 베이스 모델 파라미터 수의 0.5% 미만으로도 작동하며, 연산 비용은 전체 미세 조정(full fine-tuning)의 약 10분의 1 수준입니다.
특히, 베이스 모델이 강력할수록 이러한 작은 업데이트의 효과는 더욱 커집니다.
그들의 손에서 LoRA는 일회성 미세 조정 기술이 아니라, 재고(inventory)처럼 축적하고 관리할 수 있는 무언가가 되었습니다. 그들의 플랫폼인 MinT는 이미 100만 개 이상의 LoRA 카탈로그를 보유하고 있으며, 각 LoRA는 고유한 정체성과 버전 기록을 가지고, 배포 전 평가를 거치며, 언제든 롤백(rollback)할 준비가 되어 있습니다.
다시 Macaron V1으로 돌아가면: 4개의 LoRA 전문가들은 사고 방식(mode of thinking)에 따라 나뉩니다. L0는 대화를 담당하고, L1은 일상생활에서의 작업 실행을 담당하며, L2는 코딩을, L3는 인터페이스 생성을 담당합니다. 모든 요청은 어떤 전문가가 처리할지를 결정하는 라우터(router)를 거치게 되는데, 그들은 이 설정을 MoL, 즉 Mixture of LoRA라고 부릅니다.
채팅, 코딩, 그리고 도구 사용 (tool use)에 대한 사고 방식은 서로 충분히 다르기 때문에, 이 모든 것을 하나의 가중치 (weights) 세트에 억지로 밀어 넣으면 서로 충돌을 일으킵니다. 즉, 코딩 능력을 향상시키면 대화 능력이 저하될 수 있다는 것입니다. 대신 이들을 각각 별도로 학습시키면, 나중에 새로운 기능을 추가할 때 이미 작동 중인 다른 부분에는 전혀 손을 대지 않고 새로운 LoRA를 플러그인처럼 연결하기만 하면 됩니다.
명명 방식 또한 센스 있습니다. V1은 두 가지 크기로 출시됩니다. 748B 플래그십 모델은 Venti라고 불리며, Qwen 3.6을 기반으로 구축되어 로컬 배포를 목적으로 하는 35B 컴팩트 버전은 Tall이라고 불립니다.
스타벅스 컵 사이즈를 차용한 것인데, 이는 다른 연구소들이 흔히 사용하는 Pro/Max/Ultra 식의 명명법보다 훨씬 읽기 쉽습니다.
벤치마크에서 프런티어 모델 (frontier models)과 비교한 결과는 다음과 같습니다:
제 눈에 띄는 점은 이 모델이 개인 생활 (personal-life) 및 인터페이스 생성 (interface-generation) 벤치마크에서 선두를 달리고 있거나 대등한 성적을 거두고 있으며, 코딩 분야에서는 오늘날의 최상위 모델들과 근소한 차이를 보인다는 것입니다. 이는 GLM-5.2를 기반으로 학습되었기에 타당한 결과입니다. 기본 능력 (base capability)이 탄탄하며, 그 위에 채팅, 코딩, 그리고 에이전트 특화 판단력을 LoRA 레이어로 쌓아 올린 것입니다.
이러한 결과는 일관성이 있습니다.
시작하기
모델은 현재 라이브 상태이며, 테스트 방법은 간단합니다. 플랫폼 이름은 MinT이며, OpenAI 및 Anthropic과 호환되는 엔드포인트 (endpoints)를 모두 제공합니다.
작은 설정 변경만으로 Claude Code를 Macaron에 직접 연결할 수 있습니다:
중국 본토를 위한 별도의 접속 지점은 mintcn.macaron.xin이며, 가격은 입력 토큰 100만 개당 8위안(¥), 출력 토큰 100만 개당 28위안(¥)입니다. 또한 이 플랫폼은 가공되지 않은 GLM-5.2 베이스 모델을 직접 호스팅하기도 합니다.
저는 이 디자인이 마음에 듭니다. 자체적인 대조군(control group)을 함께 제공하기 때문입니다. Macaron V1과 베이스 모델(base model)에 동일한 프롬프트(prompt)를 실행해 보면, 사후 학습(post-training)을 통해 실제로 무엇이 변했는지 즉시 확인할 수 있습니다.
내 삶을 입력하기
첫 번째 실전 테스트는 제 삶을 입력하는 것이었습니다.
저는 2019년부터 중국의 마이크로블로깅 앱에 4,580개의 게시물을 작성해 왔으며, 이는 약 65만 자에 달하는 지속적인 기록입니다. 저는 이 모든 데이터를 내보내기(export)하여 단일 요청(request)에 담아 넣었습니다.
저는 쉬운 사실 확인(fact-check)부터 시작했습니다. 제가 직접 만든 작은 웹캠 보조 조명(fill-light)에 관한 첫 게시물은 언제였을까요?
모델은 정확한 날짜를 찾아냈고, 원문 문장을 그대로 인용해 주었습니다. 그것은 제가 Cursor를 사용하여 한 시간 만에 완성한 프로젝트였으며, 사람들이 주로 찾는 색상에 맞춰 네 가지 웜톤(warm-toned) 조명 프리셋(preset)을 포함하고 있었습니다. 나중에 제가 직접 원본 아카이브를 검색(grep)해 보았을 때도 결과는 같았습니다.
토씨 하나 틀리지 않고 정확했습니다.
그다음 저는 함정을 설치했습니다. 제가 밤을 새워 Swift로 보조 조명 코드를 직접 손으로 작성했다는 게시물을 찾아달라고 요청했습니다.
하지만 그런 게시물은 존재하지 않습니다. 저는 코드를 작성하지 않으며, 이는 4,580개의 게시물 전체가 증명하는 사실입니다.
모델은 미끼를 물지 않았습니다. 모델은 그런 게시물은 존재하지 않으며 제가 잘못 기억하고 있을 수 있다고 단호하게 말한 뒤, 가장 유사한 실제 게시물을 찾아 보여주었습니다. 그 게시물은 며칠 뒤의 것으로, 제가 실제로 Cursor를 사용하여 약 한 시간 만에 코드를 완성했다고 적혀 있었으며, 저 자신을 코딩 배경이 없는 사람이라고 명시적으로 설명하고 있었습니다.
모델은 잘못된 전제(false premise)에 맞춰 장단을 맞추지 않았고, 실제 문장을 찾아내어 저를 교정하는 수고를 마다하지 않았습니다.
환각(hallucination) 없이 긴 컨텍스트(long context)를 정확하게 읽어내는 것은 하나의 능력입니다. 하지만 누군가를 이해하는 것은 또 다른 문제입니다.
Macaron 위에서 실행되는 Claude Code 세션 내에서, 제 전체 글쓰기 작업 공간을 앞에 두고, 저는 지난 몇 년간 제 업무와 삶의 주요 전환점들을 정리해 달라고 요청했습니다. 솔직히 말해서, 모델이 그것들을 얼마나 정확하게 재구성해 내는지 보고 조금 섬뜩할 정도였습니다.
그다음 저는 진짜 질문을 던졌습니다. 제가 지금까지 해온 모든 일들을 고려할 때, 다음 단계에서 제가 집중해야 할 것은 무엇인가요?
그 첫 번째 답변은 직설적이었습니다: 당신은 기회가 부족한 것이 아니라, 너무 많은 기회에 흩어져 있으며, 그중 어느 하나에도 충분한 레버리지 (leverage)를 활용하지 못하고 있다는 것이었습니다.
전체를 다 붙여넣지는 않겠지만, 요지는 이랬습니다: 흩어진 일회성 작업들을 맡는 것을 멈추고, 대신 한 가지 일에 깊게 파고드라는 것이었습니다. 그것이 제시한 모든 지점은 제 자신의 이력에서 나온 실제 프로젝트나 실제 수치에 근거하고 있었습니다.
그것은 단 한 번도 저를 치켜세우지 않았습니다. 기본적으로 제 자신의 이력서를 저를 반박하는 증거로 제시하고 있었던 셈입니다.
이것은 여러분도 직접 시도해 볼 가치가 있습니다: 여러분의 실제 작업 파일들을 앞에 두고, 여러분이 진정으로 미뤄왔던 질문을 던져보세요. 모델이 여러분의 이력을 읽기 전의 답변은 커리어 계획 템플릿에 불과합니다. 하지만 읽고 난 후의 답변은 가치 있는 것이 되기 시작합니다.
코딩: K3와 Opus를 같은 테이블로 불러오기
코딩 테스트를 위해 저는 어려운 과제를 선택했습니다.
저는 X(구 트위터)에서 200만 회 이상의 조회수를 기록한 컨셉 디자인을 본 적이 있습니다. 자금성(Forbidden City)을 모델로 한 떠 있는 황금색 지붕과, 상호작용할 때 물처럼 뒤틀리고 흐르는 한자 커튼이 그 아래에 매달려 있는 디자인이었습니다.
저는 이것을 순수 텍스트 브리프 (brief)로 변환하여 네 개의 모델에게 시도하게 했습니다: 참조 이미지 없이, 지붕은 전적으로 코드로 그려내야 하며, 문자의 흐름은 노이즈 필드 (noise field)에 의해 구동되어야 하고, 외부 라이브러리 사용은 금지되었습니다. 이는 복잡한 프론트엔드 (front-end) 시각 작업을 테스트하기 위해 특별히 설계되었습니다.
K3와 Opus 모두 제 기대치를 뛰어넘었습니다. 크림색 종이 배경, 세리프 (serif) 헤더, 작은 "About" 푸터, 그리고 원본과 밀도가 거의 유사한 문자 커튼까지 구현해 냈습니다. 두 모델 모두 결과물 사이트에 브랜드 이름까지 부여했습니다.
반면 Qwen의 커튼은 너무 성겼고, 문자들이 흐르는 물이라기보다는 떨어지는 눈처럼 흩어져 있었습니다.
Macaron V1의 버전은 제 몫을 다했습니다. 커튼의 밀도와 흐름은 모두 설득력이 있었고, 지붕은 완전히 코드로 그려졌습니다. 중간 과정에서 모델은 스스로 헤드리스 브라우저 (headless browser)를 실행하여 런타임 (runtime)의 파티클 배열 (particle array)을 읽고, 커튼의 너비나 텍스트 영역과의 중첩 같은 지표들을 검증했습니다. 즉, 자신의 작업물을 스스로 확인한 것인데, 이는 아마도 이 모델이 실제로 사용되도록 의도된 방식에 더 가까울 것입니다.
제 판단으로는: 이 모델의 코딩 능력은 Kimi K3보다는 약간 아래에 위치하며, 대략 Claude Opus 4.8과 비슷하고, Qwen3.8보다는 높습니다.
동일한 코딩 축상에서 저는 좀 더 유희적인 테스트를 진행했습니다: 고전 게임인 Battle City를 테마 게임으로 재구축하는 것이었습니다. 저는 모델에게 크루즈 여행 가이드를 건네주며, 가이드의 실제 내용을 게임 메커니즘 (mechanics)에 녹여내라고 요청했습니다.
모델은 무언가를 구축하기 전에 제가 확인할 수 있도록 디자인 매핑 테이블 (design-mapping table)을 가장 먼저 가져왔습니다. 그리고 그때 저는 이번 테스트 전체에서 가장 마음에 드는 디테일을 발견했습니다. 가이드의 모든 사실이 게임 플레이에 직접적으로 용접(welded)되어 들어갔다는 점입니다.
가이드에 항해일의 풍속이 33 km/h라고 언급되어 있었기에, 해당 레벨에서는 적의 이동 속도가 30% 증가했습니다. 특정 날의 강수 확률 96%는 6번의 타격이 필요한 비 보스 (rain boss)가 되었습니다. 오후 3시에 출발하는 마지막 페리는 레벨 클리어 카운트다운 메커니즘이 되었습니다. 7일간의 일정은 7개 레벨의 캠페인이 되었고, 갑판 레스토랑은 파괴 가능한 엄폐물이 되었으며, 조용한 예배당은 보호막 아이템 (shield pickup)이 되었습니다.
결과물을 넘겨주기 전, 모델은 심지어 자체적인 프로그래밍적 검사 (programmatic checks)까지 수행했습니다. 각 요소가 올바르게 렌더링되었는지 확인하기 위한 픽셀 카운트 (pixel counts), 그리고 사격, 3회 타격 엄폐, 아이템 획득이 모두 작동하는지 확인하는 로직 테스트 (logic tests)를 실행했습니다.
실행 모습은 다음과 같습니다:
에이전트 능력 테스트: 나의 리포지토리 중 하나를 맡겨보았다
코딩 테스트를 마무리하기 전, 저는 더 큰 시도를 해보았습니다.
제 공개 GitHub 리포지토리 중 하나에 해결되지 않은 이슈 (open issues)들이 쌓여 있었기에, Macaron 기반의 Claude Code 세션을 해당 리포지토리에 직접 연결했습니다: 명확하고 수정할 가치가 있는 것을 골라, 이를 배포(ship)하고, 커밋(commit) 시 모델의 정체성을 서명하라고 지시했습니다.
그것은 특정 스킬을 스킬 CLI (skills CLI)를 통해 설치할 때 하위 디렉터리가 누락된다는 이슈 보고를 선택했습니다.
그다음 단계는 저를 당혹스럽게 만들었습니다. 곧바로 코드 수정 (code fix)으로 뛰어드는 대신, 그것은 먼저 CLI의 최신 버전을 설치하고 버그를 재현 (reproduce)하려고 시도했습니다. 알고 보니 해당 이슈는 이후 릴리스에서 이미 업스트림 (upstream)에서 수정된 상태였습니다. 이슈를 제기한 사람이 구버전을 사용하고 있었던 것입니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기

