NVIDIA가 개발한 Python 라이브러리로, Hugging Face transformers 기반의 다양한 플러그형 압축 방식으로 추론 중 LLM KV cache를 압축합니다.
Zefan-Cai/KVCache-Factory
긴 컨텍스트 LLM 추론을 위한 KV cache 압축, 검색, 병합 및 양자화 기법을 비교하는 통합 연구 환경입니다.
- 스타
- 1,394
- 포크
- 181
- 열린 이슈
- 4
- 마지막 커밋
- 3개월 전
어떤 프로젝트인가요?
KVCache-Factory는 자동 회귀 LLM용 여러 KV cache 기법을 하나의 평가 인터페이스로 제공합니다. PyramidKV 코드베이스에서 시작했으며, 이제 StreamingLLM, H2O, SnapKV, Quest, MiniCache, AdaKV, HeadKV 같은 기준 기법과 전체 캐시를 유지하는 무손실 HeadInfer 오프로딩 경로를 포함합니다.
이 프로젝트는 프롬프트 길이에 따라 KV cache가 커져 GPU 메모리의 대부분을 차지하는 긴 컨텍스트 추론을 대상으로 합니다. 사용자는 명령줄 플래그로 기법과 레이어별 캐시 예산을 선택한 뒤 LongBench, RULER 또는 needle-in-a-haystack 평가를 실행해 정확도를 비교할 수 있습니다. 디코딩 비용을 측정하는 지연 시간 및 메모리 벤치마크 스크립트도 제공됩니다.
Llama 및 Mistral 모델을 가장 폭넓게 지원합니다. 일부 최신 기법은 실행기 지원 범위가 더 좁으며, attention 패치가 해당 버전에 의존하기 때문에 transformers는 4.44.2로 고정되어 있습니다.
핵심 기능
- 01압축, 검색, 병합 및 양자화 기법을 하나의 인터페이스로 제공합니다.
- 02구성 가능한 캐시 예산으로 LongBench, RULER 및 needle-in-a-haystack 평가를 실행합니다.
- 03전체 캐시를 유지하는 무손실 헤드 단위 CPU 오프로딩 기법인 HeadInfer를 포함합니다.
- 04디코딩 지연 시간과 최대 메모리를 측정하는 벤치마크 스크립트를 제공합니다.
- 05FlashAttention v2 및 SDPA attention 구현을 지원합니다.
활용 사례
- 긴 컨텍스트 벤치마크에서 KV cache 압축 기법을 비교합니다.
- PyramidKV 또는 관련 캐시 예산 실험을 재현합니다.
- 단일 GPU에서 KV cache 전략별 메모리와 지연 시간의 상충 관계를 측정합니다.
- 기존 기준 기법과 비교하며 새로운 KV cache 기법을 프로토타이핑합니다.
빠른 시작
- 1
저장소를 클론합니다
git clone https://github.com/Zefan-Cai/KVCache-Factory.git - 2
프로젝트 디렉터리로 이동합니다
cd KVCache-Factory - 3
종속성을 설치합니다
pip install -r requirements.txt - 4
Python 경로를 프로젝트 루트로 설정합니다
export PYTHONPATH="$PWD:${PYTHONPATH}"
사용 전 알아둘 점
- 주요 평가 실행에는 로컬 Llama 또는 Mistral 모델과 GPU가 필요합니다.
- transformers 4.44.2로 고정되어 있으며 attention 패치는 버전에 따라 달라집니다.
- 일부 최신 방법은 지원되는 runner와 모델의 범위가 더 좁습니다.
- 배치 추론은 지원되지 않습니다. eval_batch_size는 1로 유지해야 합니다.
토픽
자주 묻는 질문
- KVCache-Factory은(는) 무엇인가요?
- 긴 컨텍스트 LLM 추론을 위한 KV cache 압축, 검색, 병합 및 양자화 기법을 비교하는 통합 연구 환경입니다. KVCache-Factory는 자동 회귀 LLM용 여러 KV cache 기법을 하나의 평가 인터페이스로 제공합니다. PyramidKV 코드베이스에서 시작했으며, 이제 StreamingLLM, H2O, SnapKV, Quest, MiniCache, AdaKV, HeadKV 같은 기준 기법과 전체 캐시를 유지하는 무손실 HeadInfer 오프로딩 경로를 포함합니다.
- KVCache-Factory은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
- KVCache-Factory은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
- KVCache-Factory은(는) 아직 유지보수되고 있나요?
- 6개월 이내 업데이트. KVCache-Factory의 마지막 커밋은 2026년 8월 13일입니다.
- KVCache-Factory은(는) 어디에 사용할 수 있나요?
- 긴 컨텍스트 벤치마크에서 KV cache 압축 기법을 비교합니다. PyramidKV 또는 관련 캐시 예산 실험을 재현합니다. 단일 GPU에서 KV cache 전략별 메모리와 지연 시간의 상충 관계를 측정합니다. 기존 기준 기법과 비교하며 새로운 KV cache 기법을 프로토타이핑합니다.
- KVCache-Factory는 어떻게 설치하나요?
- 저장소를 클론합니다: git clone https://github.com/Zefan-Cai/KVCache-Factory.git 프로젝트 디렉터리로 이동합니다: cd KVCache-Factory 종속성을 설치합니다: pip install -r requirements.txt Python 경로를 프로젝트 루트로 설정합니다: export PYTHONPATH="$PWD:${PYTHONPATH}"
- KVCache-Factory은(는) 어디서 받을 수 있나요?
- 소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/Zefan-Cai/KVCache-Factory
요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.
관련 프로젝트
양자화와 프루닝으로 LLM을 압축해 vLLM에서 바로 추론에 사용할 수 있는 체크포인트를 만드는 Python 라이브러리입니다.
대규모 언어 모델을 양자화하고(NVIDIA, AMD, Intel, Apple 및 CPU 하드웨어에서 GPTQ, AWQ, GGUF, FP8, EXL3 등 지원) 서빙하는 툴킷입니다.
OpenVINO, PyTorch, ONNX에서 추론 속도를 높이기 위해 양자화, 프루닝, 희소화를 지원하는 신경망 압축용 Python 프레임워크입니다.
소비자용 GPU와 CPU에서 DeepSeek-V4, Qwen3.6 같은 대형 오픈 웨이트 모델을 실행하는 엣지 네이티브 MoE 서빙 엔진입니다.
NVIDIA의 오픈소스 라이브러리로, 양자화·프루닝·증류·희소성·추측 디코딩을 통해 딥러닝 모델을 압축하고 추론 속도를 높입니다.