AskCleanAskClean

בדיקה וניקוי של מטמון Hugging Face ב-Mac

צוות AskClean · עודכן 2026-09-29

אתרו את המטמון שבו משתמש היישום, בדקו אותו עם hf cache ls והציגו יעד מסוים מראש באמצעות hf cache rm --dry-run. שמרו מודלים שנחוצים ללא רשת ועבודה שלכם. אל תמחקו blob משותפים ידנית או את כל HF_HOME.

איור רעיוני של גרסאות המחוברות לנתונים משותפים ופרויקטים הנשמרים בנפרד
כמה גרסאות עשויות לחלוק קבצים. שמרו checkpoint ופרויקטים שלכם בנפרד. איור רעיוני.

אתרו את הנתונים והגנו על העבודה

המיקום הרגיל הוא ~/.cache/huggingface/hub. HF_HUB_CACHE קובע מטמון מאגרים, בעוד HF_HOME רחב יותר. ללא HF_HOME, ההגדרה XDG_CACHE_HOME עשויה להשפיע על ברירת המחדל; cache_dir יכול לבחור נתיב אחר. בדקו בנפרד יישומים גרפיים, מסוף ו-notebook. HF_HOME עשוי להכיל פרטי אימות: אל תמחקו את כולו או תפרסמו את התוכן.

checkpoint מותאמים, adapter, שינויי tokenizer, המרות, נתונים פרטיים והגדרות פרויקט לא בהכרח ניתנים להורדה חוזרת. אמתו גיבוי: כלים מסוימים מדלגים על מטמונים עם CACHEDIR.TAG. שמרו מה שאין לו דרך שחזור ידועה; תאריך גישה ישן אינו הוכחה שהמודל מיותר.

הציגו מזהים מלאים ואזהרות

עצרו יישומים, הורדות ומשימות שמשתמשים במטמון. הריצו hf cache ls --no-truncate ואז hf cache ls --revisions --no-truncate --show-warnings. הגרסה שנבדקה מסתירה אזהרות מפורטות כברירת מחדל. השתמשו תמיד באותו --cache-dir למיקום מותאם. חקרו בעיות קריאה או מבנה, תעדו נפח בשימוש ושטח פנוי ואל תפרסמו רשימות מאגרים פרטיים.

בדקו את היקף המחיקה

hf cache rm דורש מזהה מלא מה-CLI. השאירו model/ למאגר מודל; שם תיקייה שמתחיל ב-models-- אינו תחליף. לגרסה מסוימת השתמשו ב-hash מלא ואמתו את המאגר שלה. התחילו עם --dry-run. הפלט מסכם יעדים ונפח משוער, לא כל קובץ בנפרד. יעד של מאגר כולל את כל הגרסאות שלו שבמטמון.

לאחר הבדיקה הסירו רק --dry-run ושמרו את היעד, הנתיב ושאלת האישור. אם הבחירה השתנתה או התצוגה המקדימה נכשלה, עצרו את המחיקה ובדקו למה. הקבצים נמחקים ישירות בלי פח; שחזור דורש גיבוי או גישה מחודשת להורדה. snapshot, ובמבנים מסוימים מאגרים, חולקים blob. תנו למנהל המטמון לטפל בהפניות ואל תחברו סתם את הגדלים המוצגים.

הבדילו בין prune למטמונים אחרים

בגרסה 2.0.0 שנבדקה, hf cache prune --dry-run מציג גרסאות detached והורדות שלא הושלמו. פרויקט יכול להיות מקובע לגרסה מדויקת גם ללא הפניה בעלת שם. בדקו כל יעד ועצרו הורדות פעילות. התחילו בפריט יחיד ומוגדר היטב.

נתונים שנוצרים ב-HF_DATASETS_CACHE שונים מהורדות Hub. בדקו בנפרד העברות Xet ופלט local_dir, תוך שמירת שינויים מקומיים. מחיקת כל HF_HOME אינה מחליפה את הבדיקה הזו.

טענו בפועל את המודלים שנשמרו

חזרו על המדידה, טענו את המודלים והגרסאות הנחוצים ובצעו משימה קטנה עם תוצאה ידועה. ייבוא מוצלח של ספריית Python אינו מספיק. בדקו שימוש ללא רשת כשהחיבור באמת מנותק. במקרה כשל עצרו ניקוי ובדקו סביבה, נתיבים, קבצים, גישה ומקום לפני שחזור. הורדה חוזרת שוב ושוב של מודל נחוץ מחייבת בחירה אחרת או תכנון קיבולת.

במעבר לכונן חיצוני בדקו שטח, הרשאות ותמיכה בקישורים סמליים. העתיקו קישורים ויעדים, הגדירו כל יישום ובדקו את המודלים לפני הסרת המקור. הכונן חייב להישאר מחובר בעת השימוש.

מה נבדק

בתאריך 2026-09-29 נבדקו מטמונים סינתטיים זמניים ללא רשת עם huggingface_hub 2.0.0: רשימות, מזהים מלאים, אזהרות ו-dry-run. תצוגות מקדימות לא שינו קבצים; מחיקת גרסה ישנה שמרה את הנוכחית ואת הנתונים המשותפים. לא נבדקו הרצת מודלים אמיתית, מטמון משתמשים, ניקוי blob בין מאגרים או העברת כונן. אין הבטחה לרווח קבוע בנפח. בדקו את גרסתכם עם hf cache --help.

מה לבדוק לפני המחיקה

בדקו את המיקום בפועל, מטרת הקבצים ואפשרות השחזור. הטבלה אינה רשימת מחיקה אוטומטית ואינה מבטיחה כמות קבועה של שטח פנוי.

פריטהיכן לבדוקהשלכות ותנאים
מאגר או גרסהhf cache ls --revisionsאמתו היקף מדויק וגישה עתידית להורדה.
נתונים משותפיםblob / snapshotהשאירו הפניות למנהל המטמון; אל תחברו גדלים באופן ישיר.
גרסת detachedhf cache prune --dry-runייתכן שפרויקט עדיין דורש בדיוק את הגרסה הזו.
מערכי נתונים שנוצרוHF_DATASETS_CACHEיצירה מחדש דורשת נתוני מקור וזמן עיבוד.
מודלים ועבודה שלכםcheckpoint / adapterשמרו מקורות ואמתו את התוכן האמיתי בגיבוי.
התיקייה הראשית של Hugging FaceHF_HOMEעשויה להכיל פרטי אימות; אל תמחקו את כולה.

שאלות נפוצות

האם גרסת detached אינה בשימוש?

לא בהכרח. פרויקט יכול לדרוש גרסה מדויקת בלי הפניה בעלת שם במטמון. בדקו תחילה תלויות.

האם hf cache rm יכול למחוק מודל שכיווננתי?

כן, אם הוא נמצא בתוך היעד שנבחר. שמרו אותו מחוץ להיקף המחיקה ואמתו את הגיבוי. השם cache לא הופך את העבודה שלכם למיותרת.

מקורות