mergekit 개요 — 가중치 공간 병합의 실용 구현

mergekit 개요 — 가중치 공간 병합의 실용 구현

mergekit 은 사전훈련 언어 모델들을 병합하기 위한 오픈소스 툴킷이에요. out-of-core 방식으로 텐서를 하나씩 로드·처리·저장해, GPU 8GB만으로도 대규모 병합을 CPU 또는 최소 VRAM으로 돌릴 수 있어요.

왜 병합이 유용한가

가중치 공간 병합은 추론 시 여러 모델을 동시에 돌리는 앙상블과 달리, 단일 모델과 같은 추론 비용을 유지하면서 여러 파인튜닝 모델의 능력을 이식하거나 최적의 절충점을 찾아요. 원본 훈련 데이터 접근이나 추가 훈련 컴퓨팅도 필요 없어요.

주요 기능

  • Llama·Mistral·GPT-NeoX·StableLM 등 다양한 아키텍처 지원.
  • linear·SLERP·TIES·DARE·task arithmetic 등 다수 병합 메서드.
  • 레이어 단위 조립("Frankenmerging"), MoE 병합, LoRA 추출, 다단계 병합.
  • CPU/GPU 실행, 지연 로딩으로 메모리 최소화.

사용 방법

mergekit-yaml 명령과 YAML 설정 파일이 진입점이에요. 설정에는 merge_method, base_model, models, parameters(dtype 등) 등을 써요. 환경에 맞춰 --cuda--lazy-unpickle 같은 옵션을 조정해요.

더 알아보기