شريحة بقيمة 10 دولارات تشغل نموذج ذكاء اصطناعي بـ 45 مليون معامل (Needle 2)
BBetter Stack
컴퓨터/소프트웨어가전제품/카메라
스크립트
00:00:00هذا هو Needle 2. إنه نموذج لغة كبير من Argentic بحجم 14 ميجابايت. اسمحوا لي أن أكرر ذلك في حال فاتكم.
00:00:07يبلغ حجمه 14 ميجابايت ويدتلك 45 مليون معامل. أساساً، هذا النموذج صغير لدرجة أنه يمكنه التشغيل فعلياً
00:00:14على أي جهاز طرفي وصولاً إلى لوحة ESP32 S3 الأساسية. تم تطويره بواسطة Cactus Compute الذين قاموا الآن
00:00:21بإتاحة هذا النموذج مصدر مفتوح بموجب ترخيص Apache 2.0 وقد اختبرته بنفسي وهو في الواقع
00:00:28يعمل. لذا في هذا الفيديو سنلقي نظرة على Needle 2، ونرى كيف يعمل ثم سنقوم
00:00:34بإجراء بعض اختبارات الاستدلال الممتعة على متحكم دقيق فعلي لنرى كيف يؤدي. سيكون
00:00:40الأمر ممتعاً للغاية لذا دعونا نغوص فيه. قبل بضع أسابيع قمت بفيديو آخر حيث
00:00:49قمت بنشر نموذج بـ 29 مليون معامل على ESP32 S3 ولكن كان ذلك مجرد حيلة وليس
00:00:56نموذج لغة حقيقي لأنه كان بسيطاً للغاية وتم تدريبه على قصص الأطفال وهذا كل ما
00:01:03يمكنه إخراجه. ومع ذلك، فإن نموذج اللغة هذا هو نموذج حقيقي يفهم سياقك، ولكن قبل أن
00:01:10تحتاروا كثيراً، هناك تحذير بشأن ذلك. لن يكون هذا نموذج محادثة عادي.
00:01:16بدلاً من ذلك، تم تصميم هذا النموذج خصيصاً ليعمل بمثابة موجه لاستدعاء الأدوات. لذا فالطريقة التي يعمل بها هي أنك
00:01:22تقوم مسبقاً بتحديد مجموعة من استدعاءات الأدوات، ويمكن أن يكون ذلك أي شيء بدءاً من تدوير محرك مؤازر إلى أي عملية ميكانيكية
00:01:29أو قابلة للتنفيذ يمكنك التفكير فيها. وبعد ذلك يمكنك توجيه النموذج بلغة طبيعية
00:01:35وسيكون ذكياً بما يكفي لفهم بناءً على أمرك أي استدعاء أداة يجب تنفيذه. وهذا هو
00:01:40باختصار جوهر الأمر. الآن هذا أمر رائع حقاً لأنه على لوحة مثل Raspberry Pi 5 يمكنه تحقيق
00:01:47ما يصل إلى 500 رمز في الثانية، لذا يمكن أن يكون محركاً فعالاً للغاية لمشاريع الروبوتات مثلاً. ولكن على الأجهزة الأكبر والأكثر
00:01:55أداءً، هل يمكن لـ Needle 2 العمل حقاً كروبوت محادثة؟ حسناً، الجواب لا لأنه ليس حقاً سؤال سرعة
00:02:04لأن Needle لم يتم تدريبه على المعرفة العامة أو المحادثة على الإطلاق. بيانات تدريبه بالكامل هي
00:02:10أوامر أجهزة المنزل الذكي، إجراءات الهاتف المحمول، إجراءات الأجهزة القابلة للارتداء، وما شابه. لذا
00:02:17حتى على جهاز قوي، إذا سألته ما هي عاصمة فرنسا فلن يكون قادرًا على الإجابة. سيكون
00:02:23جيداً حقاً في اختيار الوظيفة الصحيحة وملء الوسائط الصحيحة ولكن هذا كل شيء. وهذا هو
00:02:28التنازل الذي كان عليهم القيام به لجعله بهذا الصغر. ولكن دعونا نتحدث في الواقع عن كيف نجحوا في تنفيذ
00:02:3345 مليون معامل تكون منافسة حقاً لنماذج أكبر بخمس أو سبع مرات. لأنه
00:02:40عادة عندما تقوم بتقليص حجم نموذج بهذا القدر فإنه يصبح غبياً ببساطة. ولكن Cactus لم تكن تريد ذلك، لذلك أعادوا بناء
00:02:47بعض أجزاء البنية من الصفر. لذا فإن التغيير الكبير هو شيء يطلقون عليه اسم engram.
00:02:53عادةً ما تعيش كل معرفة النموذج في أوزانه ويجب تشغيل كل واحد من تلك الأوزان
00:02:59عبر ضرب مصفوفي لكل رمز وهذا مكلف. ولكن نقلت Cactus جزءاً من تلك
00:03:06المعرفة إلى جداول بحث مجزأة بدلاً من ذلك. لذا يمكن للنموذج فقط جلب صف من الذاكرة بدلاً من
00:03:12إجراء عمليات رياضية عليها. وقاموا أيضاً بتغيير طبقات MLP العادية بشيء مبني على تحويل هادامارد،
00:03:19وهي عملية رياضية ثابتة مع وجود معاملات قابلة للتعلم تكاد تكون معدومة ملحقة بها. وعادةً ما يتم
00:03:25إجراء خطوة الخلط هذه بواسطة مصفوفات ضخمة يجب على النموذج تعلمها من الصفر. وهذا يلتهم معظم
00:03:32ميزانية معاملات النموذج الصغير. ولكن تحويل هادامارد يتخطى كل هذا التعلم لأنه عبارة عن
00:03:38صيغة ثابتة تقوم بكل عمليات الخلط مجاناً. لذا تحظى Cactus بهذا الفائدة دون إنفاق أي من
00:03:44معاملاتها الـ 45 مليون عليها. وهناك أيضاً التكميم، وهو بصراحة الجزء الذي يجعل
00:03:50كل هذا قابلاً للنشر على الإطلاق. يعمل Needle 2 على بتين لكل وزن وقد تم تدريبه فعلياً على بتين،
00:03:57وليس مقلصاً بعد الحقيقة. المشكلة هي أن العديد من النماذج الصغيرة تنهار عندما
00:04:03تقوم بضغطها بعد التدريب لأنها لم تُبنى أبداً لتحمل هذا الضغط. ولكن تم تدريب Needle
00:04:09ضد ضغطه الخاص منذ البداية، لذا فإن نسخته الافتراضية مُحسّنة مسبقاً. فهل أي من هذا
00:04:16يصمد حقاً؟ حسناً، وفقاً لمعايير Cactus الخاصة، فإن Needle 2 ينافس حقاً نموذجاً
00:04:23يخمس أضعاف حجمه. وفي عدد قليل من اختبارات استدعاء الأدوات الأصعب، فإنه يتفوق عليها صراحةً،
00:04:30على الرغم من تشغيله بدقة بتين مقابل الدقة الكاملة 16 بت لـ LFM. وفي معيار إجراءات الأجهزة المحمولة
00:04:38يختار Needle اسم الوظيفة الصحيح بنسبة 98.3% من الوقت، وهو أعلى من كل نموذج
00:04:45تمت مقارنته ضده. لذا فهو ليس مثالياً في كل شيء، ولكن الوظيفة التي تم بناؤه من أجلها،
00:04:51فهو بارع فيها حقاً حقاً. لذا دعونا نختبره لنرى كيف يعمل بالفعل. لذا لهذا الغرض، قمت ببناء
00:04:57محرك الاستدلال الخاص بي والذي يعمل بالفعل على هذه اللوحة بالذات، ESP32-S3. وسأترك رابطاً لمستودع GitHub
00:05:05في الوصف أدناه إذا كنت تريد تجربته بنفسك. لذا هنا في الطرفية،
00:05:10يمكننا أن نرى أن لدينا تطبيق واجهة مستخدم نصية صغيرة. لذا الآن يمكنني فقط توجيهه بطلب لغة طبيعية
00:05:17ونرى كيف يعمل. أولاً دعونا نوجهه بشيء بسيط. لنقل وميض ضوء أحمر
00:05:25لمدة ثلاث ثوانٍ. وما إن أطلق هذا، يمكنك أن ترى أنه يقوم بتعيين النموذج مباشرة من
00:05:32رقاقة الفلاش وإعداد ذاكرته العاملة. وبمجرد قيامه بذلك، يمر عبر مرحلة الاستدلال.
00:05:39ويمكننا أن نرى أنه حدد أن اللون أحمر، والوضع هو الوميض، وقد حدد أيضاً
00:05:48أننا بحاجة للقيام بذلك لمدة ثلاث ثوانٍ. لذا بمجرد الانتهاء من مرحلة الاستدلال،
00:05:53سيسرع لكتابة استدعاء الأداة الفعلي. وهذا يستغرق بعض الوقت لأنه بطيء
00:06:00على ESP32. ولكن مع ذلك، هذا رائع جداً. وانظر إلى ذلك، لدينا الآن ضوء أحمر وميض لمدة
00:06:08ثلاث ثوانٍ. ويمكننا أيضاً أن نرى أن لديه درجة ثقة تخبرنا بمدى ثقته
00:06:15بخصوص استدعاء الأداة هذا. وهذا مدمج في needle 2. وهذا أمر رائع جداً لأنه بناءً على
00:06:21درجة الثقة هذه، يمكننا برمجة الشريحة بناءً على سيناريوهات مختلفة. كما ترون، استغرق هذا حوالي
00:06:2739 ثانية ليكتمل، وهو ما قد يبدو بطيئاً. ولكن تذكر أن هذا نموذج بـ 45 مليون معامل
00:06:35يعمل على متحكم دقيق بـ 8 ميجابايت بدون وحدة معالجة رسوميات. الآن، لنر ما يحدث إذا سألته
00:06:41شيئاً خارج السياق تماماً. لذا دعوني أسأله، ما هي عاصمة فرنسا؟
00:06:48وكما ترون هنا، فهو يقرأ طلبنا مرة أخرى. والآن في مرحلة الاستدلال،
00:06:54يقول إنه لا توجد أداة متاح لحقائق البلدان. لذا سيكون استدعاء الأداة فارغاً. و
00:07:00انظر إلى ذلك، لقد كان واثقاً جداً من عدم وجود أدوات يمكن تنفيذها بثقة بناءً
00:07:07على هذا المطالبة. لذا أود أن اقول إن هذه لا تزال إجابة ذكية جداً. هذه المرة، دعونا نطلبه أن
00:07:14يشع ضوءاً أرجوانياً لمدة سبع ثوانٍ. ولنر ما إذا كان يفهم ذلك. وهو يحدد أن
00:07:21اللون هو بالفعل أرجواني. وهو يفهم أن الإشعاع يعني أن الوضع يجب أن يكون ثابتاً وليس وامضاً.
00:07:29وهو يفهم أيضاً أنه يجب أن يكون لمدة سبع ثوانٍ. لذا ثم يشرع في كتابة أداة الاتصال الفعلي
00:07:36استدعاء. وبمجرد القيام بذلك، انظر إلى ذلك. إنه يشع الآن ضوءاً أرجوانياً. يجب أن يكون سبع ثوانٍ.
00:07:46ها هو ذا. ما مدى روعة ذلك؟ والمثير للدهشة أنه لم يكن واثقاً جداً هذه المرة.
00:07:52لذا كانت درجة الثقة 0.57، لكنه مع ذلك تمكن من الاستدلال عبر المهمة وفقاً لذلك وتحديد
00:08:00تنفيذ ما طلبناه بالضبط. وهناك شيء آخر أود أن أريكم إياه. لقد بنيت هذا المشروع
00:08:06خصيصاً ليكون قابلاً لإعادة الاستخدام. لذا يمكنك استبدال أوامر الضوء الوميضي بشيء آخر. مثل،
00:08:12على سبيل المثال، إذا كان لديك مشروع روبوتات يستخدم محركات مؤازرة، يمكنك أساساً استبدال هذه
00:08:17الأوامر بأوامرك الخاصة. وقد وثقت عملية من ثلاث خطوات لكيفية القيام بذلك في ملف التمهيدي للمشروع
00:08:24ملف. لذا إذا كنت تريد إعادة استخدامه لمشاريعك الخاصة، ما عليك سوى اتباع هذه الخطوات الثلاث وستكون
00:08:29جاهزاً. لنحاول تنوعاً آخر. اعرض ضوءاً أصفر لمدة خمس ثوانٍ. وها أنت ذا.
00:08:36إنه يومض بضوء أصفر لمدة خمس ثوانٍ. وكان هذا أقل درجة ثقة في النموذج،
00:08:420.46. ووجدت أنه من المثير للاهتمام أنه اعتقد أن العرض يعني وميض الضوء وليس عرضه
00:08:50لفترة زمنية ممتدة. إذن ها أنت ذا. هذا يظهر أن النموذج ليس مثالياً. قد لا يزال
00:08:56يسيء فهم نواياك، ولكن مع ذلك، حصلنا على ضوء أصفر وحصلنا عليه لمدة خمس ثوانٍ. و
00:09:03معظم استدعاءات الأدوات هذه تستغرق حوالي 40 ثانية للمعالجة بمعدل 1.86 رمز في الثانية في المتوسط. لذا
00:09:10هذه نتيجة رائعة للغاية في رأيي. إذن ها هو ذا يا أصدقاء. هذا هو needle 2 باختصار،
00:09:16نموذج بـ 45 مليون معامل، 14 ميجابايت يعمل بالكامل بدون اتصال بالإنترنت على شريحة تكلفتها حوالي 10 دولارات.
00:09:24وأيها الأصدقاء، إذا كنتم تحبون هذه الأنواع من التحليلات التقنية، فيرجى إعلامي بذلك عبر تحطيم زر
00:09:28الإعجاب أسفل الفيديو. وأيضاً لا تنسوا الاشتراك في قناتنا.
00:09:33كان معكم أندروس من BetterStack وسأراكم في الفيديوهات القادمة.
커뮤니티 글
아직 글이 없습니다. 이 영상에 대한 첫 번째 글을 작성해 보세요!
이 영상에 대해 글쓰기