Hur man ändrar Hugging Face-cache-katalogen

Ange HF_HOME när du vill flytta Hugging Face och dess standardcache tillsammans. Ange HF_HUB_CACHE när du endast vill flytta nedladdade Hub-repositorier. Kopiera den befintliga cachen medan nedladdningar är stoppade, gör variabeln kvarstående för den process som använder den, och kontrollera att en behållen modell finns innan du raderar något.

En Hugging Face-cache som rör sig genom en tydlig vägkontroll in i en verifierad större målplats.
Variabeln anger var ny cacheaktivitet sker; kopiering och verifiering är separata steg som bevarar återställning.

HF_HOME och HF_HUB_CACHE är inte utbytbara

Hugging Face tillhandahåller flera cachevariabler eftersom de lokala data inte är av samma slag. Standardvärdena härleds från HF_HOME; normalt används ~/.cache/huggingface om inte XDG_CACHE_HOME ändrar det.

Om ditt problem är nedladdad modelllagring är HF_HUB_CACHE den smalaste återgörningen. Om du vill ha en självständig Hugging Face-roten på en annan disk är HF_HOME enklare att förstå – men kom ihåg att inloggningsuppgifter och annat tillstånd kan följa den roten.

Granska den aktiva sökvägen innan du väljer en målplats

Använd Hugging Face cache-platsvägledning för att bekräfta befintliga miljövariabler och biblioteksspecifika åsikter. En notebook, tjänst, behållare och interaktiv skall kan inte arvda samma miljö. Sökvägen som skrivs ut inom den faktiska arbetsbelastningen är mer användbar än värdet i en skall som aldrig ser den.

hf cache ls

# Python: se den Hub-cach som har lösts av detta miljö
python -c "from huggingface_hub.constants import HF_HUB_CACHE; print(HF_HUB_CACHE)"

Stoppa aktiva nedladdningar och träningsjobb innan du kopierar. Cache innehåller ögonblicksbilder och delade blobbar; det är bättre att kopiera en stabil trädstam än att följa nya länkar medan en annan process ändrar den.

Gör den nya sökvägen till varig i rätt miljö

För en enskild testkörning, ställ in variabeln i den aktuella skallen. För vanlig användning, lägg till den i miljökonfigurationen som startar arbetsbelastningen: en skallprofil, tjänsteenhet, behållardefinition, anteckningsbokskärna eller programstartare.

# macOS eller Linux: flytta endast Hub-repositoriumscachen
export HF_HUB_CACHE="/mnt/ai-cache/huggingface/hub"

# Flytta hela Hugging Face-hemmet.
export HF_HOME="/mnt/ai-cache/huggingface"
# PowerShell-miljövariabel
[Environment]::SetEnvironmentVariable(
  "HF_HUB_CACHE",
  "D:\AI-Cache\huggingface\hub",
  "User"
)

Starta om programmet efter att du har ändrat en beständig variabel. Python-bibliotek löser ofta cachekonstanter när de importeras; att ändra miljön mitt i en process kan inte omdirigera arbete som redan pågår.

Kopiera, poängtera, kontrollera och rensa

  1. Skapa målfilsystemet på en filbaserad plattform som stöder länkar och behörigheter som dina arbetsbelastningar kräver.
  2. Kopiera den gamla cachet in i den utan att omordna refs, snapshots eller blobs.
  3. Ställ in den valda miljövariabeln och starta arbetsbelastningen om.
  4. Kör hf cache ls --revisions och bekräfta att den förväntade biblioteket och versionen visas.
  5. Ladda en känd modell utanför nätet eller använd hf cache verify <repo> för en kvarhållen databas.
  6. Utför en ny liten nedladdning och bekräfta att ändringarna gäller målet, inte källan.

Håll den ursprungliga cachet genom åtminstone en ren start. Om verifieringen misslyckas, återställ den föregående variabeln och undersök kopieringen eller behörigheterna. Gör inte "reparerar" en misslyckad migrering genom att manuellt sammanfoga två delvis cachar.

Endast då besluta dig för att tömma den gamla cachen.

När målet är bevisat kan den gamla kopieringen vara överflödig. Om du också vill ta bort föråldrade databaser eller versioner i den nya cacheminnet, använd den dokumenterade arbetsflödet för att säkert rensa Hugging Face-cachen. Förskjutning och rensning är olika åtgärder; att kombinera dem gör det svårare att avgöra vilken åtgärd orsakade en saknad modell.

För oföränderliga modellfamiljer bör en avsiktlig arkivskiva hållas utanför den livscykeln. Tensor Archive kan behålla relaterade lokala artefakter, verifiera dem och återställa dem exakt. Det påverkar inte Hub-cachen eller väljer vilken version din kod ska ladda.

Relaterade lagringsfrågor

Om trycket kommer från flera körningsmiljöer istället för en enda cache, läs hur du organisera en basmodell med många anpassningar. För en mer omfattande beslutsfattande kring att behålla eller ta bort, använd lokalt modellbiblioteksbevarandekontrollista.

Källor

Separat lagring från cache-tillstånd. Gratis nedladdning ↓