
BeeLlama.cpp v0.4.1: KVarN, KV 정밀도 테일(precision tail), q2_0-q3_1 KV 캐시, 지원 개선.
요약
llama.cpp의 포크 버전인 BeeLlama.cpp v0.4.1이 출시되었습니다. KVarN 양자화 기술과 혼합 정밀도 KV 캐시(Precision Tail) 기능을 통해 VRAM 효율성과 모델 추론 정밀도 사이의 균형을 개선했습니다.
핵심 포인트
- KVarN: 분산 정규화를 통해 비트당 정밀도를 높인 KV 캐시 양자화 구현
- KV 캐시 정밀도 테일: 최근 토큰을 BF16/F16으로 저장하여 정보 손실 방지
- 다양한 양자화 유형 지원: q2_0~q3_1 및 q6_0~q6_1 등 정밀도 옵션 확대
- VRAM 최적화: 벤치마크를 통해 입증된 효율적인 메모리 사용량 및 성능
요약(TL;DR): 더 많은 KV 캐시 양자화 (quantization) 기능을 갖춘 llama.cpp 포크(fork)이며, 모든 주장은 벤치마크를 통해 입증되었습니다: KVarN, KV 캐시 정밀도 테일 (KV cache precision tail), 추가적인 표준 KV 캐시 유형 (q2_0-q3_1, q6_0, q6_1) 등이 포함됩니다. BeeLLama v0.4.1이 출시되었습니다. v0.4.0의 기능 세트를 기반으로 하며, 이제 더 나은 백엔드(backend) 및 모델 지원을 제공합니다.
KVarN: 비트당 더 나은 정밀도를 제공하는 분산 정규화 KV-캐시 양자화 (Variance-normalized KV-cache quantization) (논문).
몇 주 전 v0.3.2 Preview에서 이미 소개되었으나, 당시에는 성능 문제와 VRAM 사용량 급증이 있는 매우 초기 단계의 구현이었습니다. 이제 v0.4.1에서는 완성된 형태입니다. 정밀도는 동일한 비트 너비에서 일반적인 양자화(quants)가 제공하는 것보다 여전히 높으면서도, 프리필(prefill), 디코딩(decode) 및 메모리에 미치는 영향은 매우 적습니다.
KV 캐시 정밀도 테일 (KV cache precision tail): 혼합 정밀도 (mixed-precision) KV 캐시 분야의 유망한 새로운 기능입니다. 이를 통해 최근 토큰 중 특정 개수를 BF16 또는 F16으로 저장하도록 지정할 수 있으며, 나머지 KV 캐시는 평소처럼 양자화됩니다. 이러한 방식을 통해 가장 중요한(hottest) 토큰들을 손실 없이 저장함으로써, 모델이 사용자의 작업 세부 사항, 코드 또는 데이터를 잘못 읽는 것을 방지할 수 있습니다.
추가적인 표준 KV 캐시 유형: q6_0 및 q6_1이 상위 계층에 추가되어, 기존의 q5_0/1과 q8_0 유형 사이에서 정밀도와 VRAM 사이의 균형을 미세하게 조정할 수 있습니다. KVarN이 잘 작동하지 않지만 극단적인 양자화 없이는 VRAM에 모두 담을 수 없는 경우를 위해, turbo3 및 turbo2를 대체하는 q2_0, q2_1, q3_0, q3_1이 추가되었습니다.
SWA 구조 (Gemma, GPT-OSS)의 경우 KVarN과 KVPT의 정밀도는 동일하지만, SWA 링(ring)과 혼합 정밀도 KV 캐시 사이의 복잡성으로 인해 VRAM 및 성능 비용이 더 높다는 점에 유의하십시오.
GitHub 저장소: https://github.com/Anbeeld/beellama.cpp
Qwen 3.6 27B Q5_K_S 64k에 대한 KLD 결과:
여기에는 동일한 벤치마크의 q8_0 t0와 비교된 모든 대칭 qX_0 쌍 및 tail 0/1024/2048을 가진 X >= 4인 kvarnX 쌍이 있으며, 중앙값 KLD와 VRAM 비용 사이의 비율에 따라 정렬되었습니다.
전체 벤치마크 데이터 및 분석: KV 캐시 정밀도 테일(KV Cache Precision Tail): 구현 및 벤치마크.
| Cache Tail | KV MiB Size | vs q8_0 Median | vs q8_0 P99.9 | vs q8_0 |
|---|---|---|---|---|
| kvarn4 1024 | 1232.00 | 56.6% | 1.62 | 91.4% |
| kvarn4 2048 | 1296.00 | 59.6% | 1.60 | 95.5% |
| kvarn4 0 | 1184.00 | 54.4% | 1.50 | 81.8% |
| q4_0 1024 | 1248.00 | 57.4% | 1.50 | 86.0% |
| q4_0 2048 | 1312.00 | 60.3% | 1.48 | 89.2% |
| kvarn5 0 | 1440.00 | 66.2% | 1.48 | 98.1% |
| kvarn5 1024 | 1488.00 | 68.4% | 1.48 | 101.3% |
| kvarn5 2048 | 1552.00 | 71.3% | 1.43 | 101.9% |
| q5_0 1024 | 1504.00 | 69.1% | 1.40 | 96.9% |
| q5_0 2048 | 1568.00 | 72.1% | 1.36 | 98.0% |
| kvarn6 0 | 1696.00 | 77.9% | 1.31 | 102.2% |
| kvarn6 1024 | 1744.00 | 80.1% | 1.29 | 103.4% |
| kvarn6 2048 | 1808.00 | 83.1% | 1.25 | 103.8% |
| q6_0 0 | 1664.00 | 76.5% | 1.24 | 94.7% |
| q6_0 1024 | 1760.00 | 80.9% | 1.24 | 100.1% |
| q5_0 0 | 1408.00 | 64.7% | 1.22 | 78.8% |
| q6_0 2048 | 1824.00 | 83.8% | 1.20 | 100.6% |
| kvarn8 0 | 2208.00 | 101.5% | 1.03 | 104.4% |
| kvarn8 1024 | 2256.00 | 103.7% | 1.01 | 104.4% |
| q8_0 0 | 2176.00 | 100.0% | 1.00 | 100.0% |
| q8_0 1024 | 2272.00 | 104.4% | 0.97 | 101.3% |
| kvarn8 2048 | 2320.00 | 106.6% | 0.97 | 103.6% |
| q8_0 2048 | 2336.00 | 107.4% | 0.95 | 101.6% |
| q4_0 0 | 1152.00 | 52.9% | 0.93 | 49.2% |
| 제출자: /u/Anbeeld [링크] [댓글] |
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기