# Qwen3.6-35B-A3B K-Guard REAP 12.5% — MLX 8-bit > English model card: [README.md](./README.md) 이 모델은 [`mlx-community/Qwen3.6-35B-A3B-8bit`](https://huggingface.co/mlx-community/Qwen3.6-35B-A3B-8bit)을 기반으로 만든 한국어 중심 expert-pruned MLX 체크포인트입니다. Routed MoE expert에는 REAP 방식의 router-weighted activation pruning을 적용했으며, 기존 8-bit MLX 형식, top-8 routing, shared expert, tokenizer, chat template과 비-MoE 구성요소는 유지했습니다. 이 릴리스에서 **K-Guard**는 pruning 전에 routing 및 activation 통계를 수집할 때 사용한 한국어 중심 calibration profile을 의미합니다. 별도의 fine-tuning이나 가중치 재학습은 하지 않았습니다. ## 모델 요약 | 항목 | 값 | |---|---:| | 기반 체크포인트 | `mlx-community/Qwen3.6-35B-A3B-8bit` | | 아키텍처 | Qwen3.6 MoE (`qwen3_5_moe`) | | MoE layer | 40 | | Layer당 routed expert | 256개에서 **224개**로 축소 | | Layer당 제거 expert | 32 / 256 (**12.5%**) | | Token당 활성 routed expert | 8개, 유지 | | Shared expert | 유지 | | 양자화 | MLX affine 8-bit, group size 64 | | 로컬 체크포인트 크기 | 약 **31.17 GiB** | | Pruning 후 학습 | 없음 | ## Calibration 및 expert 선정 총 24,576개 sequence로 구성된 결정적 한국어 중심 mixture에서 expert 중요도를 관측했습니다. - 일반 한국어 instruction 및 reasoning 8,192개 - 한영 의미 대응 pair 8,192개 - 범용 capability replay 4,096개 - Qwen3.6 text 및 reasoning 특화 4,096개 Observer는 seed 17, 최대 sequence length 8,192로 40개 MoE layer 전체를 관측했습니다. 각 layer에서 router-weighted activation 통계로 expert를 정렬하여 상위 224개를 유지하고, router row도 동일한 index로 축소했으며, top-8 routing은 그대로 유지했습니다. Calibration 파일과 layer/expert별 전체 observation CSV는 [`eouya2/KGuard-Korean-MoE-Calibration-v1`](https://huggingface.co/datasets/eouya2/KGuard-Korean-MoE-Calibration-v1)에 공개했습니다. ## 평가 결과 Base와 pruning 모델 모두 동일한 deterministic subset과 prompt로 평가했습니다. | Benchmark | Base 8-bit | 이 모델 | |---|---:|---:| | KMMLU | 66.4 | **64.5** | | MMLU-Pro | 64.3 | **61.3** | | GSM8K | 96.7 | **95.7** | | HumanEval+ pass@1 | 90.9 | **92.1** | | 학술 10-benchmark macro | 81.2 | **80.5** | KMMLU, MMLU-Pro, GSM8K는 각각 512문항의 고정 subset을 사용했고, HumanEval+는 EvalPlus 전체 164문항을 사용했습니다. 위 결과는 동일한 로컬 평가 조건에서 모델 간 차이를 비교하기 위한 수치입니다. ## MLX 사용법 ```bash pip install -U mlx-lm mlx_lm.generate \ --model eouya2/Qwen3.6-35B-A3B-KGuard-REAP12.5-8bit-MLX \ --prompt "한국어로 mixture-of-experts 모델을 간단히 설명해 주세요." \ --max-tokens 256 \ --temperature 0.0 ``` Python 예제: ```python from mlx_lm import generate, load model_id = "eouya2/Qwen3.6-35B-A3B-KGuard-REAP12.5-8bit-MLX" model, tokenizer = load(model_id) messages = [{"role": "user", "content": "한국어로 자기소개를 해 주세요."}] prompt = tokenizer.apply_chat_template( messages, tokenize=False, add_generation_prompt=True, ) print(generate(model, tokenizer, prompt=prompt, max_tokens=256)) ``` OpenAI-compatible server: ```bash mlx_lm.server --model eouya2/Qwen3.6-35B-A3B-KGuard-REAP12.5-8bit-MLX ``` ## 권장 용도 Apple Silicon 로컬 실행, 한국어·한영 생성, MoE pruning 연구, routed expert 용량을 완만하게 줄인 모델이 필요한 실험에 사용할 수 있습니다. 실제 서비스 적용 전에는 기반 모델과 동일하게 용도별 품질 및 안전성 평가를 권장합니다. ## 참고 자료 - 기반 모델: [`Qwen/Qwen3.6-35B-A3B`](https://huggingface.co/Qwen/Qwen3.6-35B-A3B) - MLX 8-bit 변환: [`mlx-community/Qwen3.6-35B-A3B-8bit`](https://huggingface.co/mlx-community/Qwen3.6-35B-A3B-8bit) - REAP 논문: [REAP the Experts](https://huggingface.co/papers/2510.13999) - MLX pruning 구현: [`egesabanci/reap-mlx`](https://github.com/egesabanci/reap-mlx) ## 라이선스 모델은 upstream Qwen 릴리스의 Apache 2.0 라이선스를 따릅니다. 별도 공개한 합성 calibration 데이터는 CC BY 4.0입니다.