timm documentation
مشاركة النماذج وتحميلها من Hugging Face Hub
مشاركة النماذج وتحميلها من Hugging Face Hub
تتميز مكتبة timm بتكامل مدمج مع Hugging Face Hub، مما يسهّل مشاركة النماذج وتحميلها من 🤗 Hub.
في هذا الدليل المختصر، سنرى كيفية:
- مشاركة نموذج
timmعلى Hub - كيفية تحميل ذلك النموذج مرة أخرى من Hub
المصادقة
أولاً، ستحتاج إلى التأكد من تثبيت حزمة huggingface_hub.
pip install huggingface_hub
ثم، ستحتاج إلى المصادقة على هويتك. يمكنك القيام بذلك من خلال تنفيذ الأمر التالي:
hf auth login
أو، إذا كنت تستخدم دفتر ملاحظات، يمكنك استخدام أداة المساعدة notebook_login:
>>> from huggingface_hub import notebook_login
>>> notebook_login()مشاركة نموذج
>>> import timm
>>> model = timm.create_model('resnet18', pretrained=True, num_classes=4)هنا هو المكان الذي كنت ستدرّب فيه النموذج أو تضبطه بدقة عادةً. سنستغني عن ذلك من أجل هذا الشرح التعليمي.
لنفترض أننا قمنا الآن بضبط النموذج. الخطوة التالية ستكون رفعه إلى الـ Hub! يمكننا القيام بذلك باستخدام دالة timm.models.push_to_hf_hub. يصف الإعداد المُصدَّر النموذج كما هو الآن (مثل عدد فئاته، أو حجم المدخلات والقنوات إذا تم تغييرها)، راجع تكييف وتصدير النماذج.
>>> model_cfg = dict(label_names=['a', 'b', 'c', 'd'])
>>> timm.models.push_to_hf_hub(model, 'resnet18-random', model_config=model_cfg)تشغيل الأمر أعلاه سيقوم بدفع النموذج إلى <your-username>/resnet18-random على Hub. يمكنك الآن مشاركة هذا النموذج مع أصدقائك، أو استخدامه في كودك الخاص!
تحميل نموذج
تحميل نموذج من Hub بسيط للغاية، إذ يكفي استدعاء timm.create_model مع اسم مستودع Hub، مسبوقًا بـhf-hub:، وpretrained=True. في هذه الحالة، سنستخدم nateraw/resnet18-random، وهو النموذج الذي رفعناه للتو إلى Hub.
>>> model_reloaded = timm.create_model('hf-hub:nateraw/resnet18-random', pretrained=True)