مرحباً انا مازن اعمل في شركة scopead.com ساصحبكم اليوم في رحلة تقنية مختصة بتشغيل نماذج الذكاء الاصطناعي مفتوحة المصدر على جهازك الشخصي, هناك العديد من الطرق التي يمكننا من خلالها تشغيل نماذج LLMs مفتوحة المصدر محلياً، ولكني أرغب في التركيز على طريقتي المفضلة باستخدام اطار عمل Ollama. يمكننا استخدام نماذج Ollama المختارة مسبقًا، أو استخدام نماذج مخصصة.
فوائد تشغيل نماذج محليا على جهازك:
- يُعد تشغيل نماذج الذكاء الاصطناعي مفتوحة المصدر خطوة أساسية في استقلالية تكنولوجيا المعلومات وديموقراطية المعرفة. تُمكن هذه النماذج المستخدمين من تخصيص البيانات وتهئية النموذج دون الحاجة إلى الاعتماد على طرف ثالث أو دفع الاشتراكات المكلفة. بالطبع من المزايا الرئيسية هي خصوصية البيانات، حيث تبقى البيانات آمنة داخل جهازك ولا تخرج منه، مما يقلل من المخاطرالأمنية. االسيطرة الكاملة على النماذج مما يعني إمكانية تخصيصه لتلبية الاحتياجات الخاصة بكل مستخدم، وهو ما يقوم بتعزيز الإبداع والابتكار. بالإضافة إلى ذلك، المرونة في التعديل والتحسين المستمر يجعل من هذه النماذج بيئة خصبة للتعلم والتطور، ويشجع على التعاون والتشارك المعرفي بين المطورين حول العالم. إنها ليست مجرد أدوات، بل هي رفاق رحلة في مسار التمكين التكنولوجي والنمو الفكري.
نماذج LLMs مفتوحة المصدر: هل الحجم مهم؟
بعض النماذج المفتوحة المصدر الملحوظة والشائعة هي:
- Llama 2 70b: نموذج عام بسعة 70 مليار معلم من ميتا.
- Phi-2: نموذج صغير بسعة 2.7 مليار معلم من مايكروسوفت، يُعتبر قويًا بالنسبة لحجمه. يُوصى باستخدامه على الأجهزة الضعيفة.
- Phi-3: نموذج صغير بسعة 3.8 مليار معلم وهو الاحدث من مايكروسوفت ويتميز بعمله على الاجهزة الضعيفة بكفاءة تنافس النماذج الاكبر حجما.
- Mistral 7b: نموذج صغير بسعة 7 مليار معلم من Mistral.
- Mixtral 8x7B: نموذج "مزيج الخبراء"، يُعتبر قويًا للغاية. كما يعرب Mistral عنه:
هناك عدد هائل من النماذج المفتوحة المصدر الأخرى، يتم تدريب كل منها على بيانات مختلفة تستخدم تقنيات مختلفة بهدف تمكينها من الأداء بشكل جيد بينما تحتفظ بأصغر حجم ممكن.
مزايا تشغيل Ollama
يحتوي على مجتمع كبير ونشط يمكنك الانضمام إليه عبر Discord.
- يقدم نسخة Docker يمكنك تشغيلها إذا كنت تفضل عدم تثبيتها محليًا.
- سهل الاستخدام.
- يدعم العديد من النماذج التي يمكنك تشغيلها، ويتم إضافة نماذج جديدة باستمرار ويمكنك أيضًا استيراد نماذج مخصصة.
- مدعوم بكثير من واجهات المستخدم مفتوحة المصدر و التي تسهل عملية استخدام النموذج كما انه يدعم النماذج متعددة الوسائط.
يمكنك العثور على المشروع على GitHub.
بالنسبة للواجهة الأمامية، سنستخدم واجهة المستخدم الويب Ollama.
تشغيل Ollama محليًا في 4 خطوات
- إعداد Ollama
أوصي بتشغيله في حاوية Docker. يجعل ذلك من السهل أن يكون التثبيت مستقلاً عن جهازك.
كلا Ollama و Ollama Web-UI لديهما نسخة علىDocker سنستخدمهما.
ملاحظة: جميع الأوامر أدناه التي تعمل بـ ollama، تفترض أنك تستخدم Docker، وإلا قم بتجاهل الجزء "docker exec -it ollama".
متطلبات مسبقة قم بتثبيت محرك Docker على نظامك قرر ما إذا كنت ترغب في تشغيل Ollama مع أو بدون GPU:
تثبيت Ollama بدون GPU
docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
سيقوم هذا بتشغيل حاوية Docker مع Ollama، ويقوم بتعيين مجلد للنماذج التي سنستخدمها وتعيين منفذ (11434) يمكننا الاتصال به من الواجهة الأمامية.
تثبيت Ollama مع GPU إذا كنت ترغب بدلاً من ذلك في استغلال وحدة المعالجة الرسومية الخاصة بك (وهو منطقي إذا كان لديك GPU قوي)، فافعل ما يلي:
قم بتثبيت "أدوات مكتبات NVIDIA". إذا كنت تستخدم Windows، اتبع هذا الدليل. قم بتكوين الوقت التشغيل لأدوات نيفيديا:
sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker # on windows - restart the docker engine from the windows host instead
على ويندوز، تعمل الأوامر في وحدة تحكم WSL2. بدلاً من تشغيل أمر "إعادة تشغيل الدوكر"، قم ببساطة بإعادة تشغيل محرك الدوكر من المضيف في ويندوز.
ابدأ تشغيل المكتبة (مع GPU):
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
عند تشغيل النماذج، يمكنك التحقق من أن هذا يعمل عن طريق التحقق من استخدام وحدة المعالجة الرسومية أثناء عمل النموذج (على سبيل المثال، في ويندوز استخدم مدير المهام).
التحقق من تشغيل Ollama تحقق من أن حاويتك قيد التشغيل عن طريق تشغيل أمر المساعدة في Ollama. لاحظ أن "ollama" الأول هو اسم الحاوية، والثاني هو الأمر cli:
docker exec -it ollama ollama help
2. تشغيل واجهة المستخدم الويب Ollama
docker run -d -p 3000:8080 --add-host=host.docker.internal:host-gateway -v ollama-webui:/app/backend/data --name ollama-webui --restart always ghcr.io/ollama-webui/ollama-webui:main
يمكنك اختباره عن طريق الانتقال إلى http://127.0.0.1:3000/ أنشئ حسابًا (كله محلي) من خلال النقر فوق "التسجيل" وتسجيل الدخول.
- اختيار نموذج للتشغيل
يمكنك التفكير في Hugging Face على أنها GitHub للنماذج LLMs (لكنها أكثر من ذلك بكثير)
سنقوم بتشغيل Mixtral 8x7b الذي يُعتبر صغيرًا ولكن قويًا:
docker exec -it ollama ollama run mixtral
أول مرة تقوم بها بتشغيله، عليه أن يقوم بسحب النموذج، لذا قد يستغرق بعض الوقت اعتمادًا على حجم النموذج الذي تقوم بسحبه.
يمكننا أيضًا القيام بالشيء نفسه من خلال الواجهة الأمامية، عن طريق النقر على زر الترتيب المجاور لاختيار النموذج:
هذا يتيح لك إدارة النماذج:
- استخدام النموذج
لطلب كتابة قطعة مثيرة للاهتمام من Python مازال يستغرق وقتًا طويلاً... ها هو الكود، في حال كنت ترغب في معرفة ما إذا كنت تستطيع العثور على المشكلة بنفسك 😊.
لا داعي للقلق! دعونا نطلب من mixtral إصلاحها لنا:
"هذا الكود يستغرق وقتًا طويلاً للتشغيل، يرجى إصلاحه"
الكود يمكن العثور عليه هنا.
وهذه المرة يعمل. ما أجمله!
استخدام النموذجات متعددة الوسائط
يدعم Ollama حتى النماذج متعددة الوسائط، مثل تلك التي لديها إمكانيات "رؤية".
استنتاج:



تعليقات
إرسال تعليق