مقارنة
Safetensors أم ONNX: أوزان أم رسوم النموذج
يخزن Safetensors موترات مسماة. ويمثل ONNX نموذجًا يشمل رسمًا حسابيًا ومدخلات ومخرجات وإصدارات العمليات.
أي تنسيق يجب أن تختار؟
فكّر في Safetensors لتحميل الأوزان في نموذج متوافق، أو ONNX لتسليم رسم إلى بيئة تشغيل متوافقة.
مناسب لـ Safetensors
تخزين أوزان موترات التعلم الآلي وتوزيعها · تحميل الأوزان بين أطر العمل المدعومة
- تبادل الموترات والبيانات الوصفية الأساسية بدل كائنات Python العشوائية
- مسارات عمل تفحص موترات محددة وتحملها
مناسب لـ ONNX
تبادل الرسوم الحسابية والأوزان للتعلم الآلي مع بيئات التشغيل المدعومة · نقل النماذج بين أطر التدريب وبيئات الاستدلال
- الاستدلال في بيئة تدعم عمليات النموذج وopset
- تبادل رسم نموذج مع المدخلات والمخرجات والأنواع
المعلومات الأساسية
| البند | Safetensors | ONNX |
|---|---|---|
| الامتداد | .safetensors | .onnx |
| نوع MIME | application/octet-stream | application/octet-stream |
| الاستخدامات الشائعة | تخزين أوزان موترات التعلم الآلي وتوزيعها · تحميل الأوزان بين أطر العمل المدعومة | تبادل الرسوم الحسابية والأوزان للتعلم الآلي مع بيئات التشغيل المدعومة · نقل النماذج بين أطر التدريب وبيئات الاستدلال |
| طريقة الفتح | استخدم مكتبة أو أداة نماذج تدعم Safetensors. يمكن للأدوات المتوافقة عرض أسماء الموترات وأنواعها وأشكالها قبل تحميل كل الأوزان إلى الجهاز. وجود رأس JSON لا يعني أن الملف كله مستند نص JSON. | حمّله باستخدام ONNX checker أو بيئة استدلال متوافقة. قبل النشر تحقق من إصدارات IR/opset والعمليات وأنواع وأشكال المدخلات والمخرجات ودعم بيئة التشغيل؛ وقارن المخرجات بالنموذج الأصلي باستخدام مدخلات ممثلة. |
| التصدير أو التحويل | احفظ أوزان الموترات عبر واجهة برمجية يدعمها إطار النموذج. قد يؤدي التحويل من مدخل قائم على pickle إلى فك تسلسله؛ فلا تحمل مصدرًا غير موثوق دون حذر. بعد التحويل قارن الأسماء والأشكال والأنواع وعدد العناصر ومخرجات النموذج. | صدّر النموذج بأداة ONNX التابعة لإطار المصدر وتحقق من البنية عبر ONNX checker. لا يضمن نجاح التحويل التكافؤ العددي أو التشغيل على الجهاز المستهدف. إذا استخدمت بيانات خارجية فاحتفظ بالنموذج وكل الملفات المشار إليها ضمن وحدة التوزيع نفسها. |
الاختيار حسب الاستخدام
تبادل الموترات والبيانات الوصفية الأساسية بدل كائنات Python العشوائية
تخزين أوزان موترات التعلم الآلي وتوزيعها · تحميل الأوزان بين أطر العمل المدعومة
Safetensorsمسارات عمل تفحص موترات محددة وتحملها
تخزين أوزان موترات التعلم الآلي وتوزيعها · تحميل الأوزان بين أطر العمل المدعومة
Safetensorsالاستدلال في بيئة تدعم عمليات النموذج وopset
تبادل الرسوم الحسابية والأوزان للتعلم الآلي مع بيئات التشغيل المدعومة · نقل النماذج بين أطر التدريب وبيئات الاستدلال
ONNXتبادل رسم نموذج مع المدخلات والمخرجات والأنواع
تبادل الرسوم الحسابية والأوزان للتعلم الآلي مع بيئات التشغيل المدعومة · نقل النماذج بين أطر التدريب وبيئات الاستدلال
ONNXنقطة أساسية 1
لا يحدد Safetensors وحده بنية النموذج أو كود الاستدلال.
مزيد من التفاصيل حول الاختلافاتنقطة أساسية 2
يمكن أن يحتوي ONNX موترات تهيئة وأن يشير إلى بيانات خارجية.
مزيد من التفاصيل حول الاختلافاتمزيد من التفاصيل حول الاختلافات
ليسا بديلين مباشرين. إنشاء ONNX من الأوزان يحتاج إلى تعريف النموذج وعملية تصدير مدعومة. تغيير الامتداد لا ينشئ رسمًا حسابيًا.
- يسجل رأس ملف Safetensors أسماء الموترات وdtype وshape ونطاقات البيانات. تحقق منفصلًا من فهارس الأجزاء والإعدادات ومجزّئ النص إلى رموز والمتطلبات الأخرى.
- طابق IR/opset والعمليات والأنواع في ONNX مع بيئة التشغيل، واحتفظ بمراجع الأوزان الخارجية. قارن المخرجات بالمعالجة المسبقة نفسها ومدخلات ممثلة؛ فحص البنية لا يضمن الدقة أو السرعة.
الأسئلة الشائعة
هل يمكن الوثوق بـSafetensors بغض النظر عن مصدره؟
لا. يتجنب إعادة بناء كائنات اعتباطية باستخدام pickle، لكنه لا يضمن أمان المصدر أو أداة التحميل أو الكود المعتمد عليه أو النموذج.