Home
Login

وقت تشغيل استنتاج التعلم العميق المدرك للتناثر مصمم خصيصًا لوحدات المعالجة المركزية (CPU)

NOASSERTIONPython 3.2kneuralmagicdeepsparse Last Updated: 2025-06-02

DeepSparse - محرك استدلال التعلم العميق المدرك للتخفيف والمصمم لوحدات المعالجة المركزية (CPU)

نظرة عامة على المشروع

DeepSparse هو وقت تشغيل استدلال CPU ثوري تم تطويره بواسطة Neural Magic، وهو مصمم خصيصًا للاستفادة من تخفيف الشبكات العصبية لتسريع عملية استدلال نماذج التعلم العميق. يحقق هذا المشروع أداء استدلال فائقًا على أجهزة CPU من خلال الجمع بين مكتبة تحسين SparseML.

تحديث مهم: في يناير 2025، استحوذت Red Hat على Neural Magic، وسيتم إيقاف صيانة وإلغاء إصدار مجتمع DeepSparse في 2 يونيو 2025. سينتقل الفريق إلى حلول تجارية ومفتوحة المصدر تعتمد على vLLM.

الميزات الأساسية

1. تحسين التخفيف

  • دعم النواة المتفرقة: تحقيق تسريع وتوفير في الذاكرة من خلال الأوزان المتفرقة غير المهيكلة
  • تكميم 8 بت: دعم تكميم 8 بت للأوزان والتنشيطات
  • تحسين ذاكرة التخزين المؤقت: استخدام فعال لأزواج مفاتيح وقيم الانتباه المخزنة مؤقتًا، وتقليل حركة الذاكرة

2. دعم نماذج اللغة الكبيرة (LLM)

يوفر DeepSparse دعمًا أوليًا لاستدلال نماذج اللغة الكبيرة، بما في ذلك:

  • تقنيات الضبط الدقيق المتفرق لنموذج MPT-7B
  • أداء تسريع 7 أضعاف الأساس الكثيف (النماذج المتفرقة الكمية)
  • دعم النماذج التي تصل إلى 60٪ تخفيف دون فقدان الدقة

3. دعم واسع النطاق للنماذج

  • رؤية الكمبيوتر: ResNet، EfficientNet، YOLOv5/8، ViT، إلخ.
  • معالجة اللغة الطبيعية: BERT، متغيرات Transformer، إلخ.
  • نماذج متعددة الوسائط: دعم مختلف بنيات CNN و Transformer

متطلبات النظام

دعم الأجهزة

  • بنية x86: AVX2، AVX-512، AVX-512 VNNI
  • بنية ARM: v8.2+

بيئة البرمجيات

  • نظام التشغيل: Linux
  • إصدار Python: 3.8-3.11
  • دعم ONNX: الإصدارات 1.5.0-1.15.0، مجموعة العمليات الإصدار 11 أو أعلى

ملاحظة: يوصى مستخدمو Mac و Windows باستخدام حاويات Docker Linux

طريقة التثبيت

الإصدار المستقر

pip install deepsparse

إصدارات البناء الليلي (تتضمن أحدث الميزات)

pip install deepsparse-nightly

إصدار دعم LLM

pip install -U deepsparse-nightly[llm]

التثبيت من المصدر

pip install -e path/to/deepsparse

ثلاثة أنواع من واجهات برمجة التطبيقات (API) للنشر

1. Engine API (واجهة برمجة تطبيقات منخفضة المستوى)

أقل مستوى من واجهة برمجة التطبيقات، يقوم بتجميع نماذج ONNX مباشرةً ومعالجة مدخلات ومخرجات الموتر.

from deepsparse import Engine

# تنزيل وتجميع النموذج
zoo_stub = "zoo:nlp/sentiment_analysis/obert-base/pytorch/huggingface/sst2/pruned90_quant-none"
compiled_model = Engine(model=zoo_stub, batch_size=1)

# تشغيل الاستدلال
inputs = compiled_model.generate_random_inputs()
output = compiled_model(inputs)

2. Pipeline API (واجهة برمجة تطبيقات متوسطة المستوى)

تغليف Engine وإضافة وظائف المعالجة المسبقة واللاحقة، ويمكنه معالجة البيانات الأولية مباشرة.

from deepsparse import Pipeline

# إعداد خط الأنابيب
sentiment_analysis_pipeline = Pipeline.create(
    task="sentiment-analysis",
    model_path="zoo:nlp/sentiment_analysis/obert-base/pytorch/huggingface/sst2/pruned90_quant-none"
)

# تشغيل الاستدلال
prediction = sentiment_analysis_pipeline("I love using DeepSparse Pipelines")
print(prediction)
# الإخراج: labels=['positive'] scores=[0.9954759478569031]

3. Server API (واجهة برمجة تطبيقات عالية المستوى)

تغليف Pipeline استنادًا إلى FastAPI، وتوفير خدمة REST API.

# تشغيل الخادم
deepsparse.server \
    --task sentiment-analysis \
    --model_path zoo:nlp/sentiment_analysis/obert-base/pytorch/huggingface/sst2/pruned90_quant-none
# إرسال الطلب
import requests

url = "http://localhost:5543/v2/models/sentiment_analysis/infer"
obj = {"sequences": "Snorlax loves my Tesla!"}
response = requests.post(url, json=obj)
print(response.text)
# الإخراج: {"labels":["positive"],"scores":[0.9965094327926636]}

مثال على نموذج لغة كبير

from deepsparse import TextGeneration

pipeline = TextGeneration(model="zoo:mpt-7b-dolly_mpt_pretrain-pruned50_quantized")
prompt = """
Below is an instruction that describes a task. Write a response that appropriately completes the request.
### Instruction: what is sparsity?
### Response:
"""

result = pipeline(prompt, max_new_tokens=75)
print(result.generations[0].text)

المزايا التقنية

1. تقنية الضبط الدقيق المتفرق

  • تقنية مبتكرة تم تطويرها بالتعاون مع IST Austria
  • تقليم MPT-7B إلى 60٪ تخفيف أثناء عملية الضبط الدقيق
  • تحقيق تسريع كبير دون فقدان الدقة

2. تحسين الأداء

  • تحقيق أداء استدلال على مستوى GPU على وحدة المعالجة المركزية
  • تقليل كبير في استخدام الذاكرة
  • دعم النماذج المتفرقة الكمية المحسنة للغاية

3. تكامل النظام البيئي

  • تكامل سلس مع مكتبة تحسين SparseML
  • توفر مكتبة نماذج SparseZoo نماذج مُحسَّنة مسبقًا
  • دعم سيناريوهات نشر متعددة

حالات الاستخدام

  • الحوسبة الطرفية: نشر نماذج الذكاء الاصطناعي عالية الأداء في بيئات محدودة الموارد
  • الاستدلال السحابي: تقليل تكاليف الحوسبة السحابية وتحسين كفاءة الاستدلال
  • التطبيقات في الوقت الفعلي: تطبيقات الذكاء الاصطناعي في الوقت الفعلي التي تتطلب زمن انتقال منخفض
  • النشر على نطاق واسع: بيئات الإنتاج التي تحتاج إلى معالجة طلبات استدلال متزامنة عالية

الخصوصية والتحليلات

يجمع DeepSparse بيانات القياس عن بعد الأساسية للاستخدام لتحليل استخدام المنتج. يمكن للمستخدمين تعطيل ذلك عن طريق تعيين متغير البيئة:

export NM_DISABLE_ANALYTICS=True

الاقتباسات الأكاديمية

يعتمد هذا المشروع على العديد من الأوراق الأكاديمية الهامة، بما في ذلك:

  • Sparse Fine-Tuning for Inference Acceleration of Large Language Models (2023)
  • The Optimal BERT Surgeon: Scalable and Accurate Second-Order Pruning (2022)
  • Inducing and Exploiting Activation Sparsity for Fast Inference (ICML 2020)

ملخص

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

Star History Chart