Hub documentation
التقنيات
التقنيات
بدءًا من الإصدار 1.7.0، يرسل حزمة بايثون hf_xet وحاوية رست hf-xet تقريرًا قصيرًا إلى Hub بعد كل عملية رفع وتنزيل. نستخدم هذه التقارير لمعرفة مدى تكرار فشل عمليات النقل ومدى سرعتها عبر إصدارات hf_xet وأنظمة التشغيل والشبكات، حتى نتمكن من تحديد المشكلات وإصلاحها.
لا ترسل Git Xet 0.2.1 والإصدارات الأقدم بيانات القياس عن بُعد.
ما يتم جمعه
يصف كل تقرير عملية نقل واحدة. يُعد رفع عدة ملفات في التزامن الواحد عملية نقل واحدة، وكذلك الأمر عند تنزيل عدة ملفات دفعة واحدة.
| البيانات | تفاصيل |
|---|---|
| نوع النقل والنتيجة | الرفع أو التنزيل، وما إذا نجح أو فشل أو أُلغي. وفي حالة الفشل، فئة خطأ عامة مثل network أو timeout أو server_error. |
| التوقيت | المدة التي استغرقها النقل. وفي حالة عمليات الرفع، تشمل أيضاً الوقت المخصص لتقسيم البيانات ورفعها، والوقت المخصص لإتمام عملية الالتزام (commit). |
| الحجم | عدد الملفات، والحجم الإجمالي للملفات، وعدد البايتات المُرسلة عبر الشبكة. |
| إزالة التكرار | بالنسبة إلى عمليات الرفع، كم من البيانات كانت مخزنة مسبقًا على Hub وتم تجاوزها، وكم منها كان جديدًا، وكم كانت نسبة ضغط البيانات الجديدة. |
| السرعة | متوسط الإنتاجية وأعلى عدد من الطلبات المتوازية المستخدمة. |
| العميل | نسخة hf_xet، ونظام التشغيل، ومعمارية المعالج المركزي، وعدد المعالجات المركزية، وسلسلة الوكيل المستخدم. وهذا هو نفس الوكيل المستخدم الذي ترسله huggingface_hub مع كل طلب إلى Hub، مع اسم المكتبة المستدعية وإصدارها (مثل transformers) وإصدارات huggingface_hub وPython وPyTorch. |
| المعرّفات | معرّف عشوائي للترحيل، ومعرّف عشوائي لجلسة hf_xet، واسم مضيف خادم تخزين Xet الذي تولى معالجة الترحيل. |
لا تتضمن التقارير أسماء الملفات أو مساراتها أو محتواها أو تجزئاتها أو أسماء المستودعات أو اسم المستخدم الخاص بك.
تُرسل التقارير إلى خادم تخزين Xet باستخدام رمز الوصول نفسه المستخدم في النقل. عند تخزين الخادم لتقرير، يضيف عنوان بروتوكول الإنترنت الخاص بك، وحساب Hub الذي ينتمي إليه الرمز (أو "مجهول" إذا لم تكن مسجلاً الدخول)، والمستودع الذي صدر الرمز من أجله، وما إذا كان الرمز يسمح بالوصول للقراءة أو الكتابة.
عند إرسال التقارير
hf_xet يرسل تقريرًا واحدًا عند اكتمال عملية رفع أو تنزيل، سواء نجحت أم لا. كما يرسل تقرير تقدم كل 5 دقائق حتى الانتهاء لأي عملية نقل تستمر لأكثر من 5 دقائق.
تبلغ التقارير حوالي 1 كيلوبايت. تُرسل بالتزامن مع عملية النقل ولا تُبطئها. إذا تعذّر إرسال تقرير، يُهمل ولا يُعاد إرساله. بعد اكتمال النقل، ينتظر hf_xet حتى ثانيتين لإرسال التقرير الأخير، حتى لا يُفقد التقرير إذا خرج برنامجك فورًا.
الانسحاب
تكون خدمة قياس الأداء مفعّلة افتراضيًا. لتعطيلها، اضبط HF_HUB_DISABLE_TELEMETRY=1:
export HF_HUB_DISABLE_TELEMETRY=1هذا هو المتغير نفسه الذي يُعطّل قياس الأداء في huggingface_hub ومكتبات بايثون الأخرى من Hugging Face. راجع HF_HUB_DISABLE_TELEMETRY في توثيقات huggingface_hub.
hf_xet يُعطّل أيضًا قياس الأداء عند ضبط DO_NOT_TRACK أو DISABLE_TELEMETRY أو HF_HUB_OFFLINE أو TRANSFORMERS_OFFLINE على 1 أو true أو yes أو on.
لإيقاف التلميتري (Telemetry) لـhf_xet فقط، اضبط HF_XET_TELEMETRY_ENABLED=0.
| متغير البيئة | افتراضي | الوصف |
|---|---|---|
HF_HUB_DISABLE_TELEMETRY | إلغاء تعيين | اضبطه على 1 لإيقاف قياس الأداء في hf_xet ومكتبات بايثون الأخرى من Hugging Face. |
HF_XET_TELEMETRY_ENABLED | true | اضبطه على 0 لإيقاف قياسات hf_xet فقط. ضبطه على 1 لا يلغي متغيرات الاستبعاد المذكورة أعلاه. |
HF_XET_TELEMETRY_HEARTBEAT_AFTER | 300s | المدة الزمنية التي يستمر فيها النقل قبل أن يبدأ بإرسال تقارير التقدم. 0 يُغلق تقارير التقدم. |
HF_XET_TELEMETRY_HEARTBEAT_INTERVAL | 300s | الوقت بين تقارير التقدم. |
HF_XET_TELEMETRY_FINAL_FLUSH_TIMEOUT | 2s | المدة التي ينتظرها hf_xet للحصول على التقرير الأخير بعد اكتمال النقل. تعني القيمة 0 أنه لا ينتظر. |