Hub Python Library documentation
تنزيل الملفات
تنزيل الملفات
تنزيل ملف واحد
hf_hub_download
huggingface_hub.hf_hub_download
< source >( repo_id: strfilename: strsubfolder: str | None = Nonerepo_type: str | None = Nonerevision: str | None = Nonelibrary_name: str | None = Nonelibrary_version: str | None = Nonecache_dir: str | pathlib.Path | None = Nonelocal_dir: str | pathlib.Path | None = Noneuser_agent: dict | str | None = Noneforce_download: bool = Falseetag_timeout: float = 10token: bool | str | None = Nonelocal_files_only: bool = Falseheaders: dict[str, str] | None = Noneendpoint: str | None = Nonetqdm_class: type[tqdm.std.tqdm] | None = Nonedry_run: bool = False ) → str or DryRunFileInfo
المعاملات
- repo_id (
str) — اسم مستخدم أو منظمة واسم مستودع مفصولان بـ/. - filename (
str) — اسم الملف في المستودع. - subfolder (
str، اختياري) — قيمة اختيارية تتوافق مع مجلد داخل مستودع النموذج. - repo_type (
str، اختياري) — اضبطه على"dataset"أو"space"أو"kernel"إذا كنت تقوم بتنزيل من مستودع مجموعة بيانات أو مساحة أو نواة، أوNoneأو"model"إذا كنت تقوم بتنزيل من نموذج. القيمة الافتراضية هيNone. - revision (
str، اختياري) — معرّف اختيارية لمراجعة Git يمكن أن يكون اسم فرع، أو وسم، أو تجزئة التزام. - library_name (
str، اختياري) — اسم المكتبة التي يتوافق معها الكائن. - library_version (
str، اختياري) — إصدار المكتبة. - cache_dir (
str،Path، اختياري) — المسار إلى المجلد الذي تُخزَّن فيه الملفات المؤقتة. - local_dir (
strأوPath، اختياري) — إذا تم تقديمه، فسيتم وضع الملف المُحمَّل تحت هذا المجلد. - user_agent (
dict،str، اختياري) — معلومات الوكيل المستخدم على شكل قاموس أو نص. - force_download (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان يجب تنزيل الملف حتى لو كان موجودًا مسبقًا في ذاكرة التخزين المؤقت المحلية. - etag_timeout (
float، اختياري، القيمة الافتراضية10) — عند جلب ETag، عدد الثواني التي يجب انتظارها حتى يرسل الخادم البيانات قبل التوقف، وهي القيمة التي تُمرَّر إلىhttpx2.request. - token (
str,bool, اختياري) — رمز يُستخدم للتنزيل.- إذا كان
True، يتم قراءة الرمز من مجلد إعدادات HuggingFace. - إذا كان نصًا، يُستخدم كرمز المصادقة.
- إذا كان
- local_files_only (
bool، اختياري، القيمة الافتراضيةFalse) — إذا كانتTrue، فتجنّب تنزيل الملف وعُدّ مسار الملف المخزّن محليًا إذا كان موجودًا. - headers (
dict، اختياري) — رؤوس إضافية تُرسل مع الطلب. - endpoint (
str، اختياري) — نقطة النهاية في Hub التي تُرسل إليها الطلب. القيمة الافتراضية هي قيمةHF_ENDPOINT. - tqdm_class (
tqdm، اختياري) — إذا تم توفيره، يُغني عن السلوك الافتراضي لشريط التقدم. يجب أن يرث الحُجج المُمرَّرة منtqdm.auto.tqdmأو يحاكي سلوكه على الأقل. الافتراضي هو شريط تقدم HF المخصص، والذي يمكن تعطيله عن طريق تعيين متغير البيئةHF_HUB_DISABLE_PROGRESS_BARS. - dry_run (
bool، اختياري، القيمة الافتراضيةFalse) — إذا كانتTrue، يتم تنفيذ تشغيل تجريبي دون تنزيل الملف فعليًا. تُرجع كائنًا من نوع DryRunFileInfo يحتوي على معلومات حول ما كان سيُتنزَّل.
يعيد
str أو DryRunFileInfo
- إذا كان
dry_run=False: المسار المحلي للملف أو، إذا كانت الشبكة معطلة، آخر نسخة من الملف المخزنة مؤقتًا على القرص. - إذا كان
dry_run=True: كائن DryRunFileInfo يحتوي على معلومات التحميل.
يرفع
RepositoryNotFoundError أو RevisionNotFoundError أو ~utils.RemoteEntryNotFoundError أو LocalEntryNotFoundError أو EnvironmentError أو OSError أو ValueError
- RepositoryNotFoundError —
إذا تعذّر العثور على المستودع الذي سيتم التنزيل منه. قد يكون السبب عدم وجوده،
أو كونه مضبوطًا على
privateولا تملك صلاحية الوصول إليه. - RevisionNotFoundError — إذا تعذّر العثور على المراجعة التي يجب التحميل منها.
~utils.RemoteEntryNotFoundError— إذا تعذر العثور على الملف المطلوب تنزيله.- LocalEntryNotFoundError — إذا كان الاتصال بالشبكة معطلاً أو غير متاح ولم يتم العثور على الملف في ذاكرة التخزين المؤقت.
EnvironmentError— إذا كانtoken=Trueلكن تعذّر العثور على الرمز.OSError— إذا تعذّر تحديد ETag.ValueError— إذا كانت قيمة بعض المعاملات غير صالحة.
تنزيل ملف محدد إذا لم يكن موجودًا مسبقًا في ذاكرة التخزين المؤقت المحلية.
يبدو تخطيط ملف الكاش الجديد على النحو التالي:
- تحتوي مجلد التخزين المؤقت على مجلد فرعي واحد لكل repo_id (مُقسَّم حسب نوع المستودع)
- داخل كل مجلد مستودع:
- refs هو قائمة بأحدث أزواج المراجعة المعروفة => commit_hash
- يحتوي blobs على ملفات blobs الفعلية (المُعرَّفة بـ git-sha أو sha256، اعتمادًا على ما إذا كانت ملفات LFS أم لا)
- تحتوي snapshots على مجلد فرعي واحد لكل commit، ويحتوي كل “commit” على مجموعة فرعية من الملفات التي تم حلّها عند ذلك commit بالتحديد. كل اسم ملف هو رابط رمزي إلى blob عند ذلك commit بالتحديد.
[ 96] .
└── [ 160] models--julien-c--EsperBERTo-small
├── [ 160] blobs
│ ├── [321M] 403450e234d65943a7dcf7e05a771ce3c92faa84dd07db4ac20f592037a1e4bd
│ ├── [ 398] 7cb18dc9bafbfcf74629a4b760af1b160957a83e
│ └── [1.4K] d7edf6bd2a681fb0175f7735299831ee1b22b812
├── [ 96] refs
│ └── [ 40] main
└── [ 128] snapshots
├── [ 128] 2439f60ef33a0d46d85da5001d52aeda5b00ce9f
│ ├── [ 52] README.md -> ../../blobs/d7edf6bd2a681fb0175f7735299831ee1b22b812
│ └── [ 76] pytorch_model.bin -> ../../blobs/403450e234d65943a7dcf7e05a771ce3c92faa84dd07db4ac20f592037a1e4bd
└── [ 128] bbc77c8132af1cc5cf678da3f1ddf2de43606d48
├── [ 52] README.md -> ../../blobs/7cb18dc9bafbfcf74629a4b760af1b160957a83e
└── [ 76] pytorch_model.bin -> ../../blobs/403450e234d65943a7dcf7e05a771ce3c92faa84dd07db4ac20f592037a1e4bdإذا تم توفير local_dir، فسيتم تكرار هيكل الملفات من المستودع في هذا الموقع. عند استخدام هذا الخيار، لن يتم استخدام cache_dir وسيتم إنشاء مجلد .cache/huggingface/ في جذر local_dir لتخزين بعض البيانات الوصفية المتعلقة بالملفات التي تم تنزيلها. على الرغم من أن هذا الآلية ليست قوية مثل نظام التخزين المؤقت الرئيسي، إلا أنها مُحسّنة لسحب أحدث إصدار من المستودع بانتظام.
hf_hub_url
huggingface_hub.hf_hub_url
< source >( repo_id: strfilename: strsubfolder: str | None = Nonerepo_type: str | None = Nonerevision: str | None = Noneendpoint: str | None = None )
المعاملات
- repo_id (
str) — اسم مساحة الاسم (المستخدم أو المنظمة) واسم المستودع مفصولان بـ/. - filename (
str) — اسم الملف في المستودع. - subfolder (
str، اختياري) — قيمة اختيارية تتوافق مع مجلد داخل المستودع. - repo_type (
str، اختياري) — اضبطه على"dataset"أو"space"أو"kernel"إذا كنت تقوم بتنزيل من مستودع مجموعة بيانات أو مساحة أو نواة، أوNoneأو"model"إذا كنت تقوم بتنزيل من نموذج. القيمة الافتراضية هيNone. - revision (
str، اختياري) — معرّف اختيارية لمراجعة Git يمكن أن يكون اسم فرع، أو وسم، أو تجزئة التزام. - endpoint (
str، اختياري) — نقطة النهاية في Hub التي تُرسل إليها الطلب. القيمة الافتراضية هي قيمةHF_ENDPOINT.
قم ببناء عنوان URL لملف من المعلومات المعطاة.
يمكن أن يكون العنوان المُحلَّل رابطًا مستضافًا على huggingface.co، أو رابطًا إلى Cloudfront (شبكة توزيع المحتوى، أو CDN) للملفات الكبيرة التي يتجاوز حجمها بضعة ميغابايت.
مثال:
>>> from huggingface_hub import hf_hub_url
>>> hf_hub_url(
... repo_id="julien-c/EsperBERTo-small", filename="pytorch_model.bin"
... )
'https://huggingface.co/julien-c/EsperBERTo-small/resolve/main/pytorch_model.bin'ملاحظات:
Cloudfront موزّع على مستوى العالم، لذا تكون عمليات التحميل أسرع بكثير للمستخدم النهائي (كما أنها تقلل من تكاليف النطاق الترددي لدينا).
يعمل Cloudfront على تخزين الملفات مؤقتًا بشكل عدواني افتراضيًا (مدة صلاحية افتراضية تبلغ 24 ساعة)، لكن هذا ليس مشكلة هنا لأننا ننفذ نظام إصدارات قائمًا على git على huggingface.co، مما يعني أننا نخزّن الملفات على S3/Cloudfront بطريقة قابلة للعنوان بالمحتوى (أي أن اسم الملف هو تجزئته). استخدام أسماء ملفات قابلة للعنوان بالمحتوى يعني أن التخزين المؤقت لا يمكن أن يصبح قديمًا أبدًا.
من حيث التخزين المؤقت على جانب العميل من هذه المكتبة، نعتمد في التخزين المؤقت على وسم الكيان (
ETag) الخاص بالكائنات، وهو معرّف لإصدار محدد من مورد [1]_. وسم الكيان الخاص بكائن هو: git-sha1 الخاص به إذا كان مخزّناً في git، أو sha256 الخاص به إذا كان مخزّناً في git-lfs.
المراجع:
تنزيل لقطة من المستودع
huggingface_hub.snapshot_download
< source >( repo_id: strrepo_type: str | None = Nonerevision: str | None = Nonecache_dir: str | pathlib.Path | None = Nonelocal_dir: str | pathlib.Path | None = Nonelibrary_name: str | None = Nonelibrary_version: str | None = Noneuser_agent: dict | str | None = Noneetag_timeout: float = 10force_download: bool = Falsetoken: bool | str | None = Nonelocal_files_only: bool = Falseallow_patterns: list[str] | str | None = Noneignore_patterns: list[str] | str | None = Nonemax_workers: int = 8tqdm_class: type[tqdm.asyncio.tqdm_asyncio] | None = Noneheaders: dict[str, str] | None = Noneendpoint: str | None = Nonedry_run: bool = False ) → str or list of DryRunFileInfo
المعاملات
- repo_id (
str) — اسم مستخدم أو منظمة واسم مستودع مفصولان بـ/. - repo_type (
str، اختياري) — اضبطه على"dataset"أو"space"أو"kernel"إذا كنت تقوم بتنزيل من مستودع مجموعة بيانات أو مساحة أو نواة، أوNoneأو"model"إذا كنت تقوم بتنزيل من نموذج. القيمة الافتراضية هيNone. - revision (
str، اختياري) — معرّف اختيارية لنسخة Git، يمكن أن يكون اسم فرع، أو وسم، أو تجزئة التزام. - cache_dir (
str،Path، اختياري) — المسار إلى المجلد الذي تُخزَّن فيه الملفات المؤقتة. - local_dir (
strأوPath، اختياري) — إذا تم تقديمه، فسيتم وضع الملفات المُحمَّلة تحت هذا المجلد. - library_name (
str، اختياري) — اسم المكتبة التي يتوافق معها الكائن. - library_version (
str، اختياري) — إصدار المكتبة. - user_agent (
str،dict، اختياري) — معلومات الوكيل المستخدم على شكل قاموس أو نص. - etag_timeout (
float، اختياري، القيمة الافتراضية10) — عند جلب ETag، عدد الثواني التي يجب انتظارها حتى يرسل الخادم البيانات قبل التوقف، وهي القيمة التي تُمرَّر إلىhttpx2.request. - force_download (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان يجب تنزيل الملف حتى لو كان موجودًا مسبقًا في ذاكرة التخزين المؤقت المحلية. - token (
str,bool, اختياري) — رمز يُستخدم للتنزيل.- إذا كان
True، يتم قراءة الرمز من مجلد إعدادات HuggingFace. - إذا كان نصًا، يُستخدم كرمز المصادقة.
- إذا كان
- headers (
dict، اختياري) — رؤوس إضافية يجب تضمينها في الطلب. تتمتع هذه الرؤوس بأولوية أعلى من الرؤوس الأخرى. - endpoint (
str، اختياري) — نقطة النهاية في Hub التي تُرسل إليها الطلب. القيمة الافتراضية هي قيمةHF_ENDPOINT. - local_files_only (
bool، اختياري، القيمة الافتراضيةFalse) — إذا كانتTrue، فلا تُحمَّل أي ملفات حتى لو لم تكن موجودة فيcache_dirأوlocal_dir. - allow_patterns (
list[str]أوstr، اختياري) — إذا تم تقديمه، يتم تنزيل الملفات التي تطابق نمطًا واحدًا على الأقل فقط. - ignore_patterns (
list[str]أوstr، اختياري) — إذا تم تقديمه، فلن يتم تنزيل الملفات المطابقة لأي من الأنماط. - max_workers (
int، اختياري) — عدد الخيوط المتزامنة لتنزيل الملفات (خيط واحد = تنزيل ملف واحد). القيمة الافتراضية هي 8. - tqdm_class (
tqdm, اختياري) — إذا تم توفيره، يُغني عن السلوك الافتراضي لشريط التقدم. يجب أن يرث الحُجج المُمرَّرة منtqdm.auto.tqdmأو يحاكي سلوكه على الأقل. لاحظ أنtqdm_classلا يُمرَّر إلى كل عملية تنزيل على حدة. الافتراضي هو شريط تقدم مخصص من HF يمكن تعطيله عن طريق تعيين متغير البيئةHF_HUB_DISABLE_PROGRESS_BARS. - dry_run (
bool، اختياري، القيمة الافتراضيةFalse) — إذا كانتTrue، يتم تنفيذ تشغيل تجريبي دون تنزيل الملفات فعليًا. تُرجع قائمة من كائنات DryRunFileInfo تحتوي على معلومات حول ما كان سيُتنزَّل.
يعيد
str أو قائمة من DryRunFileInfo
- إذا كان
dry_run=False: مسار اللقطة المحلية. - إذا كان
dry_run=True: قائمة من كائنات DryRunFileInfo تحتوي على معلومات التحميل.
يرفع
RepositoryNotFoundError أو RevisionNotFoundError أو IncompleteSnapshotError أو EnvironmentError أو OSError أو ValueError
- RepositoryNotFoundError —
إذا تعذّر العثور على المستودع الذي سيتم التنزيل منه. قد يكون السبب عدم وجوده أو كونه مضبوطًا على
privateولا تملك صلاحية الوصول إليه. - RevisionNotFoundError — إذا تعذّر العثور على المراجعة التي يجب التحميل منها.
- IncompleteSnapshotError —
إذا تعذّر الوصول إلى Hub (عدم اتصال، مشكلة في الاتصال، أو
local_files_only=True) وكان لقطة التخزين المؤقت تفتقر إلى بعض الملفات المطلوبة. EnvironmentError— إذا كانtoken=Trueولم يتم العثور على الرمز.OSError— إذا تعذّر تحديد ETag.ValueError— إذا كانت قيمة بعض المعاملات غير صالحة.
تنزيل ملفات المستودع.
تنزيل لقطة كاملة لملفات المستودع عند المراجعة المحددة. يكون هذا مفيدًا عندما تريد جميع ملفات المستودع لأنك لا تعرف مسبقًا أي الملفات ستحتاج إليها. تُضمَّن جميع الملفات في مجلد للحفاظ على مسارها واسم ملفها نسبيًا لذلك المجلد. كما يمكنك تصفية الملفات التي تريد تنزيلها باستخدام allow_patterns وignore_patterns.
إذا تم توفير local_dir، فسيتم تكرار هيكل الملفات من المستودع في هذا الموقع. عند استخدام هذا الخيار، لن يتم استخدام cache_dir، وسيتم إنشاء مجلد .cache/huggingface/ في جذر local_dir لتخزين بعض البيانات الوصفية المتعلقة بالملفات التي تم تنزيلها. على الرغم من أن هذا الآلية ليست قوية مثل نظام التخزين المؤقت الرئيسي، إلا أنها مُحسّنة لسحب أحدث إصدار من المستودع بانتظام.
بديل آخر هو استنساخ المستودع، لكن هذا يتطلب تثبيت git و git-lfs وتكوينهما بشكل صحيح. كما أنه لا يمكن تصفية الملفات المراد تنزيلها عند استنساخ مستودع باستخدام git.
اقرأ شجرة المستودع المخزنة مؤقتًا
huggingface_hub.get_cached_repo_tree
< source >( repo_id: strrepo_type: str | None = Nonerevision: str | None = Nonecache_dir: str | pathlib.Path | None = Nonelocal_dir: str | pathlib.Path | None = None ) → list[RepoFile]
المعاملات
- repo_id (
str) — اسم مستخدم أو منظمة واسم مستودع مفصولان بـ/. - repo_type (
str، اختياري) — اضبطه على"dataset"أو"space"أو"kernel"إذا كنت تدرج من مستودع مجموعة بيانات أو مساحة أو نواة، أوNoneأو"model"إذا كنت تدرج من نموذج. القيمة الافتراضية هيNone. - revision (
str، اختياري) — معرّف اختيارية لنسخة Git، يمكن أن يكون اسم فرع، أو وسم، أو تجزئة التزام. الافتراضي هو الفرع الافتراضي. تُحل أسماء الفروع/الوسوم إلى تجزئة التزام باستخدام ذاكرة التخزين المؤقت المحلية (refs/). - cache_dir (
str،Path، اختياري) — المسار إلى المجلد الذي تُخزَّن فيه الملفات المؤقتة. القيمة الافتراضية هي قيمةHF_HUB_CACHE. - local_dir (
strأوPath، اختياري) — إذا تم تقديمه، اقرأ قائمة الشجرة المخزنة مؤقتًا بواسطة تنزيلlocal_dir(منlocal_dir/.cache/huggingface/) بدلاً من ذاكرة التخزين المؤقت الرئيسية. لا تزال مراجع الفروع/الوسوم تُحل إلى تجزئة التزامن باستخدام ذاكرة التخزين المؤقت الرئيسية (cache_dir).
يعيد
list[RepoFile]
قائمة كائنات RepoFile المخزنة مؤقتًا لهذا المراجعة.
- CachedRepoTreeNotFoundError — إذا لم يكن هناك فهرس شجرة مخزّن مؤقتًا للمراجعة المطلوبة (مثلًا إذا لم يتم تنزيل المستودع أبدًا عند هذه المراجعة).
إرجاع قائمة الشجرة المخزنة مؤقتًا لمستودع عند إصدار معيّن، دون أي استدعاء للشبكة.
قائمة الشجرة هي مجموعة الملفات (مع بيانات التحميل الوصفية الخاصة بها) في مستودع عند نقطة التزامن. يتم إنشاؤها على القرص كنتيجة ثانوية لاستدعاء snapshot_download() (انظر ملفات التخزين المؤقت trees/<commit_hash>.json) وتُستخدم لتجاوز استدعاءات الشبكة في عمليات التحميل اللاحقة. تكشف هذه الوظيفة عن ذلك التخزين المؤقت مباشرةً.
إذا كنت بحاجة إلى قائمة الشجرة الحالية لمستودع على Hub، فاستخدم list_repo_tree() بدلاً من ذلك.
حلّ نسخة
حلّل اسم الفرع/الوسم إلى تجزئة التزامن مرة واحدة، ثم مرّر النتيجة لتثبيت كل عملية تنزيل على نفس التزامن. راجع HfApi.resolve_revision() ودليل نظام التخزين المؤقت.
ResolvedRevision
فئة huggingface_hub.ResolvedRevision
< source >( resolved: strinitial: str | None = Nonerepo_id: str | None = Nonerepo_type: str | None = None )
مراجعة Git تم حلها بالفعل إلى تجزئة commit.
ResolvedRevision هو فئة فرعية من str، لذا يمكن تمريره إلى أي طريقة في huggingface_hub تقبل معامل revision. القيمة النصية له هي المراجعة التي طلبها المستخدم في البداية (مثل "main" أو "refs/pr/4")، مما يحافظ على قابلية قراءة الروابط ورسائل الخطأ، بينما يحتوي .resolved على تجزئة الالتزام التي تشير إليها.
تُبنى الكائنات بواسطة HfApi.resolve_revision()، والذي يخزّن أيضًا تطابق revision -> commit hash في ذاكرة التخزين المؤقت المحلية (مجلد refs/).
لا يعني مُعرّف الالتزام (commit hash) شيئاً إلا بالنسبة إلى المستودع الذي تم التحقق منه ضده، لذا يتذكر كل مثيل ذلك المستودع أيضاً. إعادة التحقق منه لمستودع آخر ليست خطأً: فالتعديل (revision) المطلوب في البداية يتم التحقق منه مرة أخرى (انظر HfApi.resolve_revision()).
مثال:
>>> from huggingface_hub import resolve_revision
>>> revision = resolve_revision("openai-community/gpt2")
>>> revision
ResolvedRevision(initial=None, resolved='607a30d783dfa663caf39e06633721c8d4cfcd7e')
>>> revision == "main" # it's a string
True
>>> revision.resolved
'607a30d783dfa663caf39e06633721c8d4cfcd7e'الحصول على البيانات الوصفية الخاصة بملف
get_hf_file_metadata
huggingface_hub.get_hf_file_metadata
< source >( url: strtoken: bool | str | None = Nonetimeout: float | None = 10library_name: str | None = Nonelibrary_version: str | None = Noneuser_agent: dict | str | None = Noneheaders: dict[str, str] | None = Noneendpoint: str | None = Noneretry_on_errors: bool = False )
المعاملات
- url (
str) — عنوان ملف، مثل ما يُعاد بواسطة hf_hub_url(). - token (
strأوbool, اختياري) — رمز يُستخدم للتنزيل. إذا كان True، يُقرأ الرمز من مجلد إعدادات HuggingFace. إذا كان False أو None، لا يُوفَّر أي رمز. إذا كان نصًا، يُستخدم كرمز مصادقة.- إذا كان
True، يتم قراءة الرمز من مجلد إعدادات HuggingFace. - إذا كانت
FalseأوNone، فلا يُوفَّر أي رمز. - إذا كان نصًا، يُستخدم كرمز المصادقة.
- إذا كان
- timeout (
float، اختياري، القيمة الافتراضية 10) — عدد الثواني التي يجب انتظارها حتى يرسل الخادم البيانات الوصفية قبل التوقف عن المحاولة. - library_name (
str، اختياري) — اسم المكتبة التي يتوافق معها الكائن. - library_version (
str، اختياري) — إصدار المكتبة. - user_agent (
dict،str، اختياري) — معلومات الوكيل المستخدم على شكل قاموس أو نص. - headers (
dict، اختياري) — رؤوس إضافية تُرسل مع الطلب. - endpoint (
str، اختياري) — نقطة النهاية الخاصة بـ Hub. القيمة الافتراضية هي https://huggingface.co. - retry_on_errors (
bool، اختياري، القيمة الافتراضيةFalse) — ما إذا كان يجب إعادة المحاولة عند حدوث أخطاء (429، 5xx، انتهاء المهلة، أخطاء الشبكة). إذا كانت القيمة False، فلن تتم إعادة المحاولة من أجل الرجوع السريع إلى ذاكرة التخزين المؤقت المحلية.
جلب بيانات الوصف (metadata) لملف مُنظَّم بالإصدارات على Hub لعنوان URL معيّن.
HfFileMetadata
فئة huggingface_hub.HfFileMetadata
< source >( commit_hash: str | Noneetag: str | Nonelocation: strsize: int | Nonexet_file_data: huggingface_hub.utils._xet.XetFileData | None )
المعاملات
- commit_hash (
str, اختياري) — قيمة commit_hash المرتبطة بالملف. - etag (
str، اختياري) — Etag للملف على الخادم. - location (
str) — الموقع الذي سيتم تنزيل الملف منه. يمكن أن يكون رابط Hub أو لا (CDN). - size (
size) — حجم الملف. في حالة ملف LFS، يحتوي على حجم ملف LFS الفعلي، وليس المؤشر. - xet_file_data (
XetFileData، اختياري) — معلومات Xet الخاصة بالملف. يتم تعيين هذا فقط إذا كان الملف مخزّنًا باستخدام تخزين Xet.
هيكل بيانات يحتوي على معلومات حول ملف مُدار الإصدارات على Hub.
تُعاد بواسطة get_hf_file_metadata() بناءً على عنوان URL.
التخزين المؤقت
صُمِّمَت الطرق المعروضة أعلاه لتعمل مع نظام تخزين مؤقت يمنع إعادة تنزيل الملفات. تم تحديث نظام التخزين المؤقت في الإصدار v0.8.0 ليصبح نظام التخزين المركزي المشترك عبر المكتبات التي تعتمد على Hub.
اقرأ دليل نظام التخزين المؤقت للحصول على عرض مفصل للتخزين المؤقت في HF.
Update on GitHub