العودة إلى الرئيسية

شغّل أعباء عمل الذكاء الاصطناعي على أي سحابة، وخزّن على Hugging Face: تخزين بدون رسوم نقل بيانات مع SkyPilot

سكاي بايلوت تمكن فرق الذكاء الاصطناعي من تشغيل المهام عبر أي مزود سحابي مع تخزين البيانات على هاغينغ فيس بدون رسوم نقل بيانات، مما يبسط سير العمل متعدد السحابات ويقلل التكاليف.

القراءة الصوتية غير متاحة في هذا المتصفح
شغّل أعباء عمل الذكاء الاصطناعي على أي سحابة، وخزّن على Hugging Face: تخزين بدون رسوم نقل بيانات مع SkyPilot

الوسوم

ملخص سريع

سكاي بايلوت تمكن فرق الذكاء الاصطناعي من تشغيل المهام عبر أي مزود سحابي مع تخزين البيانات على هاغينغ فيس بدون رسوم نقل بيانات، مما يبسط سير العمل متعدد السحابات ويقلل التكاليف.

تشغيل أعباء عمل الذكاء الاصطناعي على أي سحابة، مع التخزين على Hugging Face: تخزين بدون رسوم نقل مع SkyPilot

طالما شكلت تكاليف نقل البيانات - المعروفة باسم رسوم النقل الصادر - ضريبة خفية على تطوير الذكاء الاصطناعي في السحابة. فنقل تيرابايتات من بيانات التدريب، ونقاط فحص النماذج، ونتائج الاستدلال بين مزودي الخدمات السحابية أو من السحابة إلى الأنظمة المحلية يمكن أن يضخم الميزانيات بسرعة. ولكن ماذا لو كان بإمكانك فصل الحوسبة عن التخزين، وتشغيل أعباء العمل كثيفة الاستخدام لوحدات معالجة الرسوميات على أي سحابة مع الاحتفاظ ببياناتك بأمان وبتكلفة منخفضة على Hugging Face؟ هذا هو بالضبط ما يعد به التخزين بدون رسوم نقل مع SkyPilot.

في هذه المقالة، سنستكشف كيفية الجمع بين تنسيق السحابات المتعددة من SkyPilot وقدرات التخزين في Hugging Face Hub للقضاء على تكاليف النقل الصادر. سننتقل خلال خطوات التثبيت والتكوين والأمثلة العملية حتى تتمكن من البدء في توفير المال وتبسيط بنية الذكاء الاصطناعي الخاصة بك اليوم.

ما هو التخزين بدون رسوم نقل ولماذا هو مهم؟

عند تشغيل أعباء عمل الذكاء الاصطناعي على مزود سحابي مثل AWS أو GCP أو Azure، فإنك عادةً تخزن بياناتك في التخزين الكائني لذلك المزود (S3، GCS، Azure Blob). يؤدي نقل البيانات خارج هذا التخزين إلى سحابة أخرى أو إلى منطقة مختلفة إلى فرض رسوم نقل صادر - غالبًا ما تتراوح بين 0.05 و 0.12 دولار لكل جيجابايت. بالنسبة لمجموعات البيانات التي تبلغ مئات الجيجابايتات أو التيرابايتات، تصبح هذه التكاليف كبيرة.

يعني التخزين بدون رسوم نقل أنك تخزن بياناتك في موقع لا يفرض رسومًا على النقل الصادر عند الوصول إليها من موارد الحوسبة. يقدم Hugging Face Hub، على الرغم من أنه ليس مزود سحابة كامل، نقلًا صادرًا مجانيًا لمجموعات البيانات والنماذج العامة. بالنسبة للمستودعات الخاصة، لا يفرض Hugging Face رسوم نقل صادر أيضًا - فقط رسوم التخزين هي المطبقة. من خلال تخزين بياناتك على Hugging Face وتشغيل الحوسبة على أي سحابة عبر SkyPilot، فإنك تلغي فعليًا تكاليف النقل الصادر.

كيف يمكّن SkyPilot الذكاء الاصطناعي متعدد السحابات

SkyPilot هو إطار عمل مفتوح المصدر يجرد الاختلافات بين مزودي الخدمات السحابية. يمكنك تحديد عبء العمل الخاص بك (مثل مهمة تدريب أو خادم استدلال) في ملف YAML، ويقوم SkyPilot تلقائيًا بتوفير أرخص أو أنسب موارد السحابة عبر AWS و GCP و Azure أو حتى المجموعات المحلية. يتعامل مع الشبكات، وتركيب التخزين، وتنسيق المهام.

الميزات الرئيسية:

  • **دعم متعدد السحابات:** تشغيل نفس ملف YAML على أي سحابة.
  • **التحويل التلقائي عند الفشل:** إذا كانت إحدى السحابات غير متوفرة بالسعة، يحاول SkyPilot سحابة أخرى.
  • **تحسين التكلفة:** اختيار أرخص منطقة أو مثيلات فورية.
  • **تكامل التخزين:** تركيب دلاء السحابة أو مستودعات Hugging Face كوحدات تخزين.

من خلال الجمع بين SkyPilot و Hugging Face Hub، تحصل على مجموعة ذكاء اصطناعي محمولة حقًا: بياناتك تعيش على Hugging Face، وحوسبتك تعمل أينما كانت أرخص أو أكثر توفرًا، ولا تدفع أبدًا رسوم نقل صادر.

المتطلبات

قبل البدء، تأكد من توفر ما يلي:

1. **حساب Hugging Face** (الطبقة المجانية تعمل للمستودعات العامة؛ الطبقة المدفوعة للتخزين الخاص). 2. **بيانات اعتماد مزود السحابة** لواحد على الأقل من AWS أو GCP أو Azure. (سنستخدم AWS في الأمثلة، لكن العملية مماثلة للآخرين). 3. **Python 3.8+** مثبت على جهازك المحلي. 4. **`git` و `git-lfs`** مثبتان (لدفع الملفات الكبيرة إلى Hugging Face). 5. **إلمام أساسي بسطر الأوامر.**

التثبيت خطوة بخطوة

1. تثبيت SkyPilot

يتوفر SkyPilot عبر pip. نوصي بتثبيته في بيئة افتراضية.

python3 -m venv skypilot-env
source skypilot-env/bin/activate
pip install skypilot

تحقق من التثبيت:

sky --version

يجب أن ترى مخرجات مثل `sky 0.6.0` (أو أحدث).

2. تكوين بيانات اعتماد السحابة

يحتاج SkyPilot إلى الوصول إلى حساباتك السحابية. بالنسبة لـ AWS، يمكنك استخدام AWS CLI.

pip install awscli
aws configure

أدخل معرف مفتاح الوصول AWS الخاص بك، ومفتاح الوصول السري، والمنطقة الافتراضية، وتنسيق المخرجات (json). سيكتشف SkyPilot هذه البيانات تلقائيًا.

بالنسبة لـ GCP أو Azure، اتبع إعداد CLI الخاص بكل منهما وتأكد من توفر بيانات اعتمادك في البيئة.

3. تثبيت مكتبات Hugging Face Hub

سنستخدم مكتبة `huggingface_hub` للتفاعل مع Hub.

pip install huggingface_hub

سجل الدخول إلى حساب Hugging Face الخاص بك:

huggingface-cli login

اتبع التعليمات للصق رمز الوصول الخاص بك (أنشئ واحدًا على `huggingface.co/settings/tokens`).

4. إعداد Git LFS للملفات الكبيرة

إذا كانت مجموعات البيانات أو النماذج الخاصة بك أكبر من 10 ميجابايت، فأنت بحاجة إلى Git LFS.

git lfs install

5. إنشاء مستودع Hugging Face لبياناتك

يمكنك إنشاء مستودع عبر واجهة الويب أو CLI. على سبيل المثال، لإنشاء مستودع مجموعة بيانات:

huggingface-cli repo create my-ai-dataset --type dataset

ينشئ هذا مستودعًا عامًا على `https://huggingface.co/datasets/your-username/my-ai-dataset`.

أمثلة الاستخدام

الآن سننتقل خلال سيناريو ملموس: تدريب نموذج تعلم آلي على مجموعة بيانات مخزنة في Hugging Face، باستخدام مثيلات GPU على AWS عبر SkyPilot.

مثال 1: التدريب باستخدام مجموعة بيانات من Hugging Face

افترض أن لديك مجموعة بيانات `my-ai-dataset` على Hugging Face. تريد تدريب نموذج باستخدام مثيل GPU على AWS.

**الخطوة 1: كتابة ملف YAML لـ SkyPilot**

أنشئ ملفًا باسم `train.yaml`:

name: train-on-hf-data

resources:
  accelerators: V100:1

workdir: .

setup: |
  pip install torch torchvision transformers datasets huggingface_hub

run: |
  # تنزيل مجموعة البيانات من Hugging Face إلى القرص المحلي (بدون تكلفة نقل صادر)
  huggingface-cli download your-username/my-ai-dataset --local-dir /tmp/dataset

  # تشغيل برنامج التدريب
  python train.py --data-dir /tmp/dataset --epochs 10

يخبر ملف YAML هذا SkyPilot بما يلي:

  • استخدام وحدة معالجة رسومية V100 واحدة.
  • نسخ دليل العمل الحالي إلى الجهاز الافتراضي البعيد.
  • في الإعداد، تثبيت تبعيات Python.
  • في التشغيل، تنزيل مجموعة البيانات من Hugging Face وتنفيذ `train.py`.

**الخطوة 2: تشغيل المهمة**

sky launch -c my-training-cluster train.yaml

سيقوم SkyPilot بتوفير مثيل AWS، وتشغيل الإعداد، وتنفيذ التدريب. يتم تنزيل مجموعة البيانات مباشرة من Hugging Face إلى القرص المحلي للجهاز الافتراضي - بدون دلو S3، بدون رسوم نقل صادر.

**الخطوة 3: حفظ نقاط فحص النموذج مرة أخرى على Hugging Face**

بعد التدريب، يمكنك رفع النموذج إلى Hugging Face من نفس المهمة:

# داخل train.py أو برنامج ما بعد التدريب
from huggingface_hub import HfApi

api = HfApi()
api.upload_folder(
    folder_path="./output_model",
    repo_id="your-username/my-trained-model",
    repo_type="model"
)

هذا يبقي سير عملك بالكامل داخل نظام بيئي بدون رسوم نقل صادر.

مثال 2: التحويل التلقائي عند الفشل متعدد السحابات مع عدم وجود رسوم نقل صادر

افترض أنك تريد تشغيل الاستدلال على أرخص سحابة متاحة. يمكن لـ SkyPilot تجربة GCP أو Azure أو AWS تلقائيًا.

أنشئ `infer.yaml`:

name: multi-cloud-inference

resources:
  accelerators: T4:1
  use_spot: true

file_mounts:
  /model:
    name: your-username/my-trained-model
    source: huggingface

run: |
  python serve.py --model-path /model

يقوم قسم `file_mounts` بتركيب مستودع نموذج Hugging Face مباشرة في الجهاز الافتراضي. هذا أكثر أناقة: يتم بث النموذج من Hugging Face بدون أي خطوة تنزيل.

قم بالتشغيل مع التحويل التلقائي عند الفشل:

sky launch -c inference-cluster infer.yaml --cloud aws --cloud gcp --cloud azure

إذا كانت المثيلات الفورية لـ AWS غير متوفرة، سيحاول SkyPilot GCP، ثم Azure. تأتي بيانات النموذج دائمًا من Hugging Face، لذا فإن تكاليف النقل الصادر هي صفر بغض النظر عن السحابة التي تفوز.

مثال 3: مشاركة القطع الأثرية عبر الفرق

في إعداد الفريق، يمكنك تخزين مجموعات البيانات أو النماذج المشتركة على Hugging Face كمستودعات خاصة. يمكن لكل عضو في الفريق بعد ذلك تشغيل المهام على السحابة المفضلة لديه دون القلق بشأن النقل الصادر.

# العضو أ في الفريق على AWS
sky launch -c team-train train.yaml

# العضو ب في الفريق على GCP (نفس ملف YAML)
sky launch -c team-train train.yaml --cloud gcp

تصل كلتا المهمتين إلى نفس مستودع Hugging Face. التكلفة الوحيدة هي تخزين Hugging Face (عادةً 0.01 دولار/جيجابايت/شهر للمستودعات الخاصة)، وهو أرخص بكثير من النقل الصادر السحابي.

أفضل الممارسات لسير العمل بدون رسوم نقل صادر

1. **استخدم Hugging Face كبحيرة بيانات رئيسية.** ارفع جميع مجموعات البيانات والنماذج المدربة مسبقًا ونقاط الفحص هناك. 2. **استفد من `file_mounts` في SkyPilot للبث.** عندما يكون ذلك ممكنًا، قم بتركيب مستودعات Hugging Face مباشرة بدلاً من التنزيل على القرص. 3. **حسّن استخدام المثيلات الفورية.** نظرًا لأنك لا تدفع رسوم نقل صادر، تصبح تكلفة الحوسبة هي المتغير الوحيد. استخدم المثيلات الفورية بقوة. 4. **طبق التخزين المؤقت.** إذا كنت تصل إلى نفس البيانات بشكل متكرر، قم بتخزينها مؤقتًا محليًا على الجهاز الافتراضي باستخدام `--local-dir` مع huggingface-cli. 5. **راقب تكاليف التخزين.** تخزين Hugging Face رخيص لكنه ليس مجانيًا. نظف بانتظام إصدارات النماذج القديمة أو مجموعات البيانات.

القيود المحتملة والحلول البديلة

**عرض النطاق الترددي:** قد يكون تنزيل مجموعات البيانات الكبيرة من Hugging Face أبطأ من التخزين الكائني السحابي في نفس المنطقة. لأعباء العمل الحساسة لزمن الوصول، فكر في التخزين المؤقت أو استخدام CDN الخاص بـ Hugging Face.

**المستودعات الخاصة:** بينما لا يفرض Hugging Face رسوم نقل صادر، فإن المستودعات الخاصة لها حدود تخزين على الطبقة المجانية. تزيد الخطط المدفوعة من هذه الحدود.

**تغطية SkyPilot السحابية:** يدعم SkyPilot حاليًا AWS و GCP و Azure و Lambda Labs. إذا كنت بحاجة إلى مزودين آخرين، فقد تحتاج إلى توسيعه.

الخلاصة

يعد التخزين بدون رسوم نقل صادر مع SkyPilot و Hugging Face Hub بتغيير قواعد اللعبة لفرق الذكاء الاصطناعي التي سئمت من الاحتكار السحابي وتكاليف نقل البيانات الخفية. من خلال تخزين بياناتك على Hugging Face واستخدام SkyPilot لتنسيق الحوسبة عبر أي سحابة، تحقق قابلية نقل حقيقية دون عقوبات مالية.

الإعداد بسيط: قم بتثبيت SkyPilot، وتكوين بيانات اعتماد السحابة الخاصة بك، ودفع بياناتك إلى Hugging Face، وتحديد أعباء العمل الخاصة بك في YAML. من هناك، يمكنك تدريب النماذج أو ضبطها بدقة أو تقديمها على أرخص أو أكثر موارد السحابة توفرًا، مع دفع صفر رسوم نقل صادر.

يتماشى هذا النهج مع الاتجاه الصناعي الأوسع نحو بنية ذكاء اصطناعي مفتوحة وقابلة للنقل - حيث تعيش البيانات والنماذج في مستودع محايد، وتكون الحوسبة سلعة قابلة للاستبدال. بينما يستمر مزودو الخدمات السحابية في المنافسة على تسعير وحدات معالجة الرسوميات وتوفرها، فإن القدرة على التبديل بينهم بسلاسة ستصبح ميزة تنافسية. ابدأ في تنفيذ التخزين بدون رسوم نقل صادر اليوم، ودع أعباء عمل الذكاء الاصطناعي الخاصة بك تعمل بحرية.

المصادر

أسئلة شائعة

عن ماذا يتحدث هذا المقال؟

يتناول هذا المقال موضوع "شغّل أعباء عمل الذكاء الاصطناعي على أي سحابة، وخزّن على Hugging Face: تخزين بدون رسوم نقل بيانات مع SkyPilot" ضمن تصنيف أدوات الذكاء الاصطناعي. سكاي بايلوت تمكن فرق الذكاء الاصطناعي من تشغيل المهام عبر أي مزود سحابي مع تخزين البيانات على هاغينغ فيس بدون رسوم نقل بيانات، مما يبسط سير العمل متعدد السحابات ويقلل التكاليف.

لمن يفيد هذا المقال؟

يفيد القراء المهتمين بفهم أدوات وتقنيات الذكاء الاصطناعي بطريقة عملية وواضحة.

ما الخطوة التالية؟

اقرأ المقال كاملاً، راجع المصادر المرفقة، ثم جرّب الأفكار المناسبة لاحتياجك بحذر.