أصبحت نماذج اللغات الكبيرة (LLMs) سهلة، حيث يعد EasyLM حلاً شاملاً للتدريب المسبق والضبط الدقيق والتقييم وتقديم LLMs في JAX/Flax. يمكن لـ EasyLM توسيع نطاق تدريب LLM إلى مئات من مسرعات TPU/GPU من خلال الاستفادة من وظيفة pjit الخاصة بـ JAX.
بناءً على محولات ومجموعات بيانات Hugginface، يوفر هذا الريبو قاعدة تعليمات برمجية سهلة الاستخدام وسهلة التخصيص لتدريب نماذج اللغات الكبيرة دون التعقيد في العديد من أطر العمل الأخرى.
تم تصميم EasyLM باستخدام JAX/Flax. من خلال الاستفادة من الأداة المساعدة pjit الخاصة بـ JAX، تستطيع EasyLM تدريب النماذج الكبيرة التي لا تتناسب مع مسرع واحد عن طريق مشاركة أوزان النموذج وبيانات التدريب عبر مسرعات متعددة. حاليًا، تدعم EasyLM تدريبات متعددة لـ TPU/GPU في مضيف واحد بالإضافة إلى تدريب متعدد المضيفين على Google Cloud TPU Pods.
حاليا، يتم دعم النماذج التالية:
نحن ندير مجتمع Discord غير رسمي (غير تابع لشركة Google) للمناقشة المتعلقة بتدريب LLMs في JAX. اتبع هذا الرابط للانضمام إلى خادم Discord. لدينا قنوات مخصصة للعديد من أطر عمل LLM المستندة إلى JAX، بما في ذلك EasyLM وJaxSeq وAlpa وLevanter.
OpenLLaMA هو نسختنا المرخصة بشكل مسموح من LLaMA والتي يمكن استخدامها لأغراض تجارية. قم بالاطلاع على الصفحة الرئيسية للمشروع هنا. يمكن أن يكون OpenLLaMA بمثابة إسقاط بديل لأوزان LLaMA في EasyLM. يرجى الرجوع إلى وثائق LLaMA لمزيد من التفاصيل.
Koala هو برنامج الدردشة الآلي الجديد الخاص بنا والذي تم تحسينه بالإضافة إلى LLaMA. إذا كنت مهتمًا ببرنامج Koala chatbot الخاص بنا، فيمكنك مراجعة المدونة والوثائق لتشغيله محليًا.
تختلف طريقة التثبيت بين مضيفي GPU ومضيفي Cloud TPU. الخطوة الأولى هي السحب من GitHub.
git clone https://github.com/young-geng/EasyLM.git
cd EasyLM
export PYTHONPATH= " ${PWD} : $PYTHONPATH "
يمكن تثبيت بيئة GPU عبر Anaconda.
conda env create -f scripts/gpu_environment.yml
conda activate EasyLM
يأتي VM المضيف TPU مزودًا بـ Python وPIP المثبتين مسبقًا. ما عليك سوى تشغيل البرنامج النصي التالي لإعداد مضيف TPU.
./scripts/tpu_vm_setup.sh
يمكن العثور على وثائق EasyLM في دليل المستندات.
إذا وجدت EasyLM مفيدًا في بحثك أو تطبيقاتك، فيرجى الاستشهاد باستخدام BibTeX التالي:
@software{geng2023easylm,
author = {Geng, Xinyang},
title = {EasyLM: A Simple And Scalable Training Framework for Large Language Models},
month = March,
year = 2023,
url = {https://github.com/young-geng/EasyLM}
}