Ivy هو مشروع مفتوح المصدر يهدف إلى تبسيط عملية تحويل شفرات تعلم الآلة (ML) بين أطر العمل المختلفة مع الحفاظ على الوظائف الكاملة. يتيح للمستخدمين إنشاء نماذج ووظائف مُحسَّنة بالاعتماد على الرسوم البيانية (graph-based) في أطر العمل الأصلية مثل PyTorch وTensorFlow.
ivy.trace_graph
، يمكن إنشاء نماذج ووظائف مُحسَّنة في أي إطار عمل أصلي.pip
:pip install ivy
git clone https://github.com/ivy-llc/ivy.git
cd ivy
pip install --user -e .
(ملاحظة: قد لا تضمن هذه الطريقة استقرار جميع الوظائف).يدعم Ivy التحويل من/إلى الأطر التالية:
يعمل كمُترجم برمجي (transpiler) يسمح باستخدام شفرة من أطر عمل أخرى بإضافة سطر واحد. يُنفِّذ التحويل بطرق مختلفة حسب نوع المُدخلات (كلاس/دالة vs. مكتبة):
# مثال: تحويل دالة PyTorch إلى TensorFlow
import ivy
torch_fn = ivy.transpile(torch_fn, source="torch", to="tensorflow")
يرجى تضمين الورقة البحثية المصاحبة (companion paper) عند استخدام Ivy في الأبحاث أو المشاريع:
@article{ivy2023,
title={Ivy: Unified Machine Learning for Inter-Framework Portability},
author={Lenton, Daniel et al.},
journal={arXiv preprint arXiv:2212.07091},
year={2023}
}