Hy3를 위한 llama.cpp 호환 혼합-정밀도 GGUF 양자화 배포
이 모델은 주로 text-generation 태스크를 수행하도록 구성되어 있다. 양자화된 GGUF 포맷은 대화형 생성과 서빙 워크로드에서 메모리 사용량을 크게 줄이고자 설계되었다. 또한 MTP 초안 기반 디코딩을 활성화하면 추론 지연을 줄이며 대화형 응답 품질을 보존하는 것을 목표로 한다.64K 컨텍스트apache-2.0
Hy3 기반 모델을 imatrix 보정과 혼합-정밀도 레시피로 GGUF에 양자화하여 llama.cpp에서 MTP self-speculative decoding과 함께 실행할 수 있게 만든 배포판이다.
TL;DR
이 배포는 tencent/Hy3를 기반으로 Hy3를 llama.cpp에서 실행 가능한 GGUF로 변환하고 imatrix 기반 보정을 통해 혼합-정밀도(Q4_K_M, IQ1_M 등) 양자화를 적용한 패키지이다. 제공된 스크립트와 레시피는 Attention과 임베딩처럼 민감한 텐서에는 높은 비트를 유지하고 FFN 전문가층에는 공격적으로 낮은 비트를 배분하는 방식으로 파일 크기와 품질을 절충한다. MTP self-speculative decoding을 선택적으로 활성화하면 초안 기반 디코딩으로 추론 지연과 비용을 추가로 줄일 수 있으며 변환 과정에서 채팅 템플릿을 GGUF에 박아 런타임 호환성을 확보한다. 따라서 이 배포는 로컬·경량 서버 환경에서 Hy3를 효율적으로 운영하려는 워크로드에 실용적인 양자화·배포 파이프라인을 제공한다.
핵심 역량
- 양자화된 GGUF 형태로 텍스트 생성 추론을 수행할 수 있으며, llama.cpp 런타임과 직접 연동되어 로컬·경량 서버에서 동작한다. 이 배포는 BF16에서 시작해 Q4_K_M 또는 IQ1_M과 같은 혼합-정밀도 레시피로 변환된 모델을 생성하는 파이프라인을 포함한다. MTP가 포함된 GGUF를 사용하면 self-speculative decoding을 통해 추론 비용과 지연을 줄일 수 있다.
- imatrix 기반 보정 워크플로를 통해 가중치별 중요도를 계산하고 그 결과를 여러 양자화 레시피에 재사용할 수 있다. 보정 파일은 텍스트 샘플 한 파일로 입력되며, 한 번 계산한 imatrix는 Q4_K_M과 IQ1_M 같은 서로 다른 타깃에 적용 가능하다. 이 방식은 저비트 양자화 시 민감한 레이어를 보호하면서 전체 파일 크기를 낮추는 데 기여한다.
- 배포 스크립트는 패치 적용, 빌드, GGUF 변환, 양자화, 채팅 템플릿 임베딩까지 전 과정을 자동화하는 도구와 예제를 제공한다. 제공된 레시피는 Attention 및 토큰 임베딩 같은 민감 영역을 높은 정밀도로 유지하고 라우티드 전문가에 낮은 비트를 집중하는 전략을 사용한다. 이로 인해 파일 크기 대비 상대적으로 높은 품질을 유지할 수 있다.
강점
- llama.cpp와 패치·레시피·스크립트 일체를 제공하여 현장에서 바로 빌드하고 서빙할 수 있는 완성된 워크플로를 제공한다. 이로 인해 양자화 모델을 수동으로 맞추는 시간과 시행착오를 줄일 수 있다. 또한 MTP 옵션을 통해 추론 효율을 추가로 개선할 수 있다.
- imatrix를 통해 동일한 보정 결과를 여러 양자화 타깃에 재사용할 수 있어 보정 비용을 분산시키는 효율을 가진다. 이 접근은 특히 매우 저비트 레시피에서 민감한 레이어를 보호하면서도 전체 파일 크기를 크게 줄이는 데 도움이 된다. 문서에는 IQ1_M 약 83 GiB, Q4_K_M 약 166 GiB라는 가이드라인이 포함되어 있어 하드웨어 요구량 계획에 유용하다.
훈련 방식
기본적으로 tencent/Hy3를 기반으로 삼아 BF16 GGUF 변환을 거친 뒤, imatrix 보정으로 층별 중요도를 계산하고 그 결과를 토대로 여러 혼합-정밀도 양자화 레시피(Q4_K_M, IQ1_M 등)를 적용해 GGUF를 생성하는 방식이다.
알아두면 좋은 것
- 리포지터리는 Hy3를 대상으로 llama.cpp에 패치를 적용한 빌드 스크립트를 제공하며 MTP 및 전용 파서를 포함한 패치가 자동으로 적용된다.
- imatrix 보정 도구와 혼합-정밀도 레시피들이 recipes/ 폴더에 포함되어 있어 사용자 데이터로 중요도 매트릭스를 생성한 뒤 여러 타깃 정밀도로 양자화할 수 있다.
- IQ1_M 레시피는 극단적 저비트를 목표로 하며 대형 가중치 확인을 위해 일부 민감층은 상위 정밀도로 올리는 layer-by-layer 업그레이드를 포함한다.
- 라이선스는 Apache-2.0으로 표기되어 있으며 GGUF 변환, 양자화 및 llama.cpp 빌드 예제가 README 내에 명확히 제공되어 있다.
기술적 특징
- MTP self-speculative decoding을 패치로 지원하여 추론 중 초안 토큰을 먼저 생성하고 이를 기반으로 최종 토큰을 검증함으로써 전체 추론 지연과 비용을 낮춘다. 이 기법은 MTP가 포함된 GGUF에서만 동작하도록 레시피를 구분해 제공하며, MTP용 레시피는 블록과 관련 전문가를 K-quant로 유지해 낮은 비트 타입과의 호환성을 확보한다. 문서에는 MTP를 활성화할 때와 비활성화할 때의 빌드·실행 플래그 예시가 포함되어 있다.
- 혼합-정밀도 레시피는 Attention과 토큰 임베딩·출력 헤드를 상대적으로 높은 비트(q8_0 / q4_K / q6_K)로 유지하고 FFN의 shared experts와 routed experts에 서로 다른 비트를 배분하는 방식으로 동작한다. 이 설계는 손실이 민감한 부분에 더 높은 정밀도를 할당해 품질 저하를 최소화하면서 파일 크기를 줄이는 구체적 비용-품질 절충을 구현한다. recipes 폴더에 layer-by-layer 민감도 조정이 가능한 파일들이 포함되어 있어 세밀한 제어가 가능하다.
- imatrix 계산 흐름은 BF16 상태의 GGUF와 작은 보정 데이터셋을 사용해 각 텐서의 중요도를 산출하고 이 값을 토대로 어떤 텐서에 비트를 더 쓸지 결정한다. imatrix는 한 번 계산하면 여러 타깃 정밀도에 재사용할 수 있어 양자화 반복 실험의 효율을 높인다. 도구는 single-GPU 메모리 제약을 고려한 옵션과 전문가층을 CPU에 둔 상태로 실행하는 플래그를 제공한다.
- gguf-py 및 관련 스크립트는 채팅 템플릿을 GGUF 메타데이터에 삽입해 minja 호환 템플릿을 제공함으로써 런타임에서 --jinja 모드로 안전하게 실행하게 한다. 이 과정은 Hy3의 Python str.format 기반 템플릿을 정적 Jinja 포맷으로 변환해 런타임 크래시를 피하는 것을 목표로 한다. 메타데이터 병합 명령 예시도 README에 포함되어 있어 배포 편의성이 높다.
차별점
- llama.cpp에 특화된 패치와 빌드 스크립트를 포함해 로컬 서빙 환경에서 곧바로 배포 가능한 상태를 제공한다.
- imatrix 기반 보정 한 번으로 여러 혼합-정밀도 양자화 타깃에 재사용 가능한 워크플로를 제공한다.
- MTP self-speculative decoding을 옵션으로 지원해 초안 기반 디코딩을 활성화하면 지연과 비용 절감 효과를 추가로 얻을 수 있다.
벤치마크
| 벤치마크 | 지표 | 값 | 비교 |
|---|---|---|---|
| weights-size | size | IQ1_M ~83 GiB; Q4_K_M ~166 GiB | — |
이미지 분석

163
Likes
145.1k
Downloads
0 / 0
조회수
관련 토론
아직 관련 토론이 없습니다.
댓글
댓글을 작성하려면 로그인이 필요합니다.