Hugging Face 캐시 디렉터리 변경 방법
Hugging Face 홈과 기본 캐시를 함께 옮기려면 HF_HOME을 설정하세요. 다운로드한 Hub 리포지터리만 재배치하려면 HF_HUB_CACHE을 설정하세요. 다운로드를 중지한 상태에서 기존 캐시를 복사하고 사용하는 프로세스에 변수를 영구 적용한 다음, 아무것도 삭제하기 전에 보관한 모델을 검증하세요.

HF_HOME과 HF_HUB_CACHE는 서로 바꿔 쓸 수 없습니다
Hugging Face는 로컬 데이터가 모두 같지 않으므로 여러 캐시 변수를 제공합니다. 기본값은 HF_HOME에서 파생되며 XDG_CACHE_HOME이 변경하지 않는 한 일반적으로 ~/.cache/huggingface입니다.
HF_HOME은 로컬에 저장된 토큰 상태와 기본 캐시 하위 디렉터리에 사용되는 Hugging Face 홈을 이동합니다.HF_HUB_CACHE은 모델, 데이터 세트 및 Spaces가 있는 Hub 리포지터리 캐시를 이동하며 기본값은$HF_HOME/hub입니다.HF_XET_CACHE은 Xet 청크 캐시를 제어하며 기본값은$HF_HOME/xet입니다.HF_ASSETS_CACHE은 하위 라이브러리 자산을 제어하며 기본값은$HF_HOME/assets입니다.
다운로드한 모델 저장 공간이 문제라면 HF_HUB_CACHE이 가장 좁은 범위의 재정의입니다. 다른 디스크에 하나의 자체 완결형 Hugging Face 루트를 두려면 HF_HOME이 이해하기 더 쉽지만 자격 증명과 다른 상태도 그 루트를 따를 수 있음을 기억하세요.
대상을 선택하기 전에 활성 경로 확인
Hugging Face 캐시 위치 가이드를 사용해 기존 환경 변수와 라이브러리별 재정의를 확인하세요. 노트북, 서비스, 컨테이너 및 대화형 셸은 동일한 환경을 상속하지 않을 수 있습니다. 실제 워크로드 안에서 출력한 경로가 워크로드가 보지 못하는 셸의 값보다 유용합니다.
hf cache ls
# Python: 이 환경에서 Hub 캐시가 해석된 위치 보기
python -c "from huggingface_hub.constants import HF_HUB_CACHE; print(HF_HUB_CACHE)"
복사하기 전에 활성 다운로드와 학습 작업을 중지하세요. 캐시에는 스냅샷과 공유 블롭이 있습니다. 다른 프로세스가 변경하는 동안 새 링크를 쫓는 것보다 안정된 트리를 복사하는 편이 낫습니다.
올바른 환경에서 새 경로를 영구 적용
일회성 테스트라면 현재 셸에서 변수를 설정하세요. 일반적인 사용에서는 워크로드를 시작하는 환경 구성, 즉 셸 프로필, 서비스 유닛, 컨테이너 정의, 노트북 커널 또는 애플리케이션 런처에 넣으세요.
# macOS 또는 Linux: Hub 리포지터리 캐시만 이동
export HF_HUB_CACHE="/mnt/ai-cache/huggingface/hub"
# 또는 Hugging Face 홈 전체 이동
export HF_HOME="/mnt/ai-cache/huggingface"
# PowerShell 사용자 환경 변수
[Environment]::SetEnvironmentVariable(
"HF_HUB_CACHE",
"D:\AI-Cache\huggingface\hub",
"User"
)
영구 변수를 변경한 뒤 애플리케이션을 재시작하세요. Python 라이브러리는 가져올 때 캐시 상수를 해석하는 경우가 많습니다. 프로세스 도중 환경을 바꿔도 이미 진행 중인 작업이 리디렉션되지 않을 수 있습니다.
복사, 경로 지정, 검증 후 정리
- 워크로드에 필요한 링크와 권한을 지원하는 파일 시스템에 대상을 만드세요.
refs,snapshots또는blobs을 재배열하지 말고 이전 캐시를 그 안에 복사하세요.- 선택한 환경 변수를 설정하고 워크로드를 재시작하세요.
hf cache ls --revisions을 실행하고 예상 리포지터리와 리비전이 나타나는지 확인하세요.- 알려진 모델 하나를 오프라인으로 로드하거나 보관한 리포지터리에
hf cache verify <repo>을 사용하세요. - 소규모의 새로운 다운로드를 수행하고 소스가 아니라 대상이 변경되는지 확인하세요.
최소 한 번의 정상적인 재시작 동안 원래 캐시를 유지하세요. 검증에 실패하면 이전 변수를 복원하고 복사 상태나 권한을 조사하세요. 부분 캐시 두 개를 수동으로 병합해 실패한 이전을 “수정”하지 마세요.
그런 다음에만 이전 캐시를 정리할지 결정하세요
대상이 검증되면 이전 사본은 중복일 수 있습니다. 새 캐시 안의 오래된 리포지터리나 리비전도 제거하려면 문서화된 워크플로를 사용해 Hugging Face 캐시를 안전하게 정리하세요. 재배치와 가지치기는 서로 다른 작업이며, 이를 결합하면 어떤 조치가 모델 누락을 일으켰는지 파악하기 어렵습니다.
대체할 수 없는 모델 패밀리는 실시간 캐시 외부에 의도적으로 보관하세요. Tensor Archive는 연관된 로컬 산출물을 보관하고 검증하며 정확히 복원할 수 있습니다. Hub 캐시를 변경하거나 코드가 로드할 리비전을 선택하지 않습니다.
관련 저장 답변
하나의 캐시가 아니라 여러 런타임 때문에 부담이 생긴다면 하나의 베이스 모델을 여러 어댑터와 함께 정리하는 방법을 읽으세요. 더 폭넓은 보관 또는 삭제 결정에는 로컬 모델 라이브러리 보존 체크리스트를 사용하세요.
출처
- Hugging Face Hub 환경 변수 —
HF_HOME,HF_HUB_CACHE,HF_XET_CACHE및HF_ASSETS_CACHE의 현재 의미와 기본값. - Hugging Face Hub 캐시 가이드 — 현재 캐시 레이아웃과 공유 블롭 모델.
- Hugging Face Hub CLI 가이드 — 캐시 검사 및 검증 명령.