Hugging Face 캐시 디렉터리 변경 방법

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

명시적인 경로 제어를 통해 검증된 더 큰 대상으로 이동하는 Hugging Face 캐시.
변수는 새로운 캐시 활동이 향하는 위치를 정의합니다. 복사와 검증은 롤백을 보존하는 별도 단계입니다.

HF_HOME과 HF_HUB_CACHE는 서로 바꿔 쓸 수 없습니다

Hugging Face는 로컬 데이터가 모두 같지 않으므로 여러 캐시 변수를 제공합니다. 기본값은 HF_HOME에서 파생되며 XDG_CACHE_HOME이 변경하지 않는 한 일반적으로 ~/.cache/huggingface입니다.

다운로드한 모델 저장 공간이 문제라면 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 라이브러리는 가져올 때 캐시 상수를 해석하는 경우가 많습니다. 프로세스 도중 환경을 바꿔도 이미 진행 중인 작업이 리디렉션되지 않을 수 있습니다.

복사, 경로 지정, 검증 후 정리

  1. 워크로드에 필요한 링크와 권한을 지원하는 파일 시스템에 대상을 만드세요.
  2. refs, snapshots 또는 blobs을 재배열하지 말고 이전 캐시를 그 안에 복사하세요.
  3. 선택한 환경 변수를 설정하고 워크로드를 재시작하세요.
  4. hf cache ls --revisions을 실행하고 예상 리포지터리와 리비전이 나타나는지 확인하세요.
  5. 알려진 모델 하나를 오프라인으로 로드하거나 보관한 리포지터리에 hf cache verify <repo>을 사용하세요.
  6. 소규모의 새로운 다운로드를 수행하고 소스가 아니라 대상이 변경되는지 확인하세요.

최소 한 번의 정상적인 재시작 동안 원래 캐시를 유지하세요. 검증에 실패하면 이전 변수를 복원하고 복사 상태나 권한을 조사하세요. 부분 캐시 두 개를 수동으로 병합해 실패한 이전을 “수정”하지 마세요.

그런 다음에만 이전 캐시를 정리할지 결정하세요

대상이 검증되면 이전 사본은 중복일 수 있습니다. 새 캐시 안의 오래된 리포지터리나 리비전도 제거하려면 문서화된 워크플로를 사용해 Hugging Face 캐시를 안전하게 정리하세요. 재배치와 가지치기는 서로 다른 작업이며, 이를 결합하면 어떤 조치가 모델 누락을 일으켰는지 파악하기 어렵습니다.

대체할 수 없는 모델 패밀리는 실시간 캐시 외부에 의도적으로 보관하세요. Tensor Archive는 연관된 로컬 산출물을 보관하고 검증하며 정확히 복원할 수 있습니다. Hub 캐시를 변경하거나 코드가 로드할 리비전을 선택하지 않습니다.

관련 저장 답변

하나의 캐시가 아니라 여러 런타임 때문에 부담이 생긴다면 하나의 베이스 모델을 여러 어댑터와 함께 정리하는 방법을 읽으세요. 더 폭넓은 보관 또는 삭제 결정에는 로컬 모델 라이브러리 보존 체크리스트를 사용하세요.

출처

보존을 캐시 상태와 분리하세요.무료 다운로드 ↓