كتابة الكود ليست سوى الخطوة الأولى في إنشاء شيء ما. إن التمشيط عبر التعليمات البرمجية الخاصة بك بحثًا عن الأخطاء وإصلاحها يستغرق وقتًا طويلاً وغالبًا ما يستغرق وقتًا أطول مما كان متوقعًا ، ولكنه يعد خطوة أساسية مع ذلك.
إذا كان هناك فقط طريقة لإصلاح الأخطاء تلقائيًا والتي تتجاوز أخطاء بناء الجملة وتتفهم حقًا النوايا الكامنة وراء التعليمات البرمجية الخاصة بك.
طورت Microsoft مؤخرًا ذكاءً اصطناعيًا قادرًا على اكتشاف الأخطاء وإصلاحها في التعليمات البرمجية باستخدام التعلم العميق. ولكن كيف ظهرت هذه القطعة من التكنولوجيا الثورية وكيف تعمل؟
ما هو BugLab وكيف يعمل؟
BugLab هو تطبيق Python للذكاء الاصطناعي الذي يبحث عن الأخطاء الموجودة في الكود ويصلحها. تم تطويره بواسطة Miltos Alamanis و Marc Brockschmidt ، وهما باحثان في Microsoft Research. تمكنوا من التغلب على نقص البيانات المصنفة التي غالبًا ما تستخدم في التعلم الالي من خلال اللجوء إلى التعلم تحت الإشراف الذاتي والسماح لـ BugLab بتدريب نفسها من خلال لعبة "الغميضة" مع سطور من التعليمات البرمجية.
تم تدريب BugLab باستخدام نموذجين للحوسبة ؛ واحد يخفي الخلل داخل المقتطفات الصحيحة من التعليمات البرمجية ، والآخر يبحث عن الأخطاء ويصححها. كلا النموذجين يتعلمان باستمرار من بعضهما البعض. بمرور الوقت ، يصبح محدد الأخطاء أفضل في إخفاء الأخطاء في الكود ، ويصبح الكاشف أفضل في التقاطها وإصلاحها.
فهم الكود مع BugLab
غالبية الأخطاء التي تم تدريب BugLab AI على اكتشافها وإصلاحها لا ينتج عنها أخطاء منطقية ولكنها خاطئة فقط كنتيجة للسياق العام للكود. يعد فهم نية المطور أمرًا ضروريًا للعثور على هذه الأخطاء.
تؤدي معالجة أجزاء التعليمات البرمجية بنفس طريقة معالجة اللغات الطبيعية إلى نتائج دون المستوى الأمثل. لا يزال من الصعب على الذكاء الاصطناعي فهم العلاقة بين العبارات المختلفة عند تقسيمها إلى رموز فردية.
بدلاً من ذلك ، ينظر BugLab إلى الكود ككل. بهذه الطريقة ، يتم تمثيل كل بناء جملة وتعبير ورمز ومعرف كنقاط في الرسم البياني ، مما يسمح للذكاء الاصطناعي "بفهم" الاتصال والعلاقة بين العقد المختلفة.
معماريات الشبكة العصبية ثم تُستخدم لتدريب الذكاء الاصطناعي على تصحيح الأخطاء. إنهم قادرون على جمع الأفكار من البنية الغنية للرسم البياني للشفرة وتقديم أسباب لعلاقة كل عقدة مع الآخرين.
هل يعمل BugLab على رمز الحياة الواقعية؟
من المهم ملاحظة أن BugLab ليس بديلاً عن مبرمج ماهر. ذلك لأن الأخطاء المعقدة لا تزال غير في متناول اليد.
تهدف Microsoft باستخدام الذكاء الاصطناعي إلى اكتشاف وإصلاح الأخطاء الشائعة مثل عوامل التشغيل المنطقية غير الصحيحة ، مثل استخدام "أو" بدلاً من "و" والعكس صحيح ، بالإضافة إلى مقارنات القيمة المعكوسة والمتغير سوء الاستعمال.
وفق مايكروسوفت، النتائج واعدة ، حيث أن BugLab قادر على اكتشاف وإصلاح حوالي 26 بالمائة من الأخطاء في جزء من التعليمات البرمجية. ومع ذلك ، لا تزال نسبة كبيرة من الدقة مفقودة بسبب الإيجابيات الخاطئة والأخطاء الفائتة.
التطبيقات المستقبلية لـ Microsoft BugLab
هدف Microsoft مع BugLab هو توفير الوقت لمطوري البرامج ، وغالبًا ما يقضون في مراجعة التعليمات البرمجية الخاصة بهم بحثًا عن أصغر الأخطاء.
بينما لا يزال نموذج تصحيح أخطاء الذكاء الاصطناعي قيد التنفيذ ، فإن لديه فرصة إيجاد وإصلاح الخلل التي تتراوح في أي مكان من غير الملائم إلى الكارثي. ولكن في غضون سنوات قليلة ، يمكنك أن تتوقع أن يصبح BugLab أمرًا ضروريًا في مجموعة أدوات كل مطور ، حتى لو لم تكن مثالية.
التطور الأسي للتعليم الذاتي للذكاء الاصطناعي
كلما زاد الوقت الذي يجب أن تتدرب فيه نماذج الذكاء الاصطناعي مثل BugLab على أمثلة من الحياة الواقعية ، كانت النتائج الأفضل والأكثر دقة التي ستسفر عنها.
كانت إحدى أكبر العقبات التي واجهها باحثو Microsoft أثناء تطوير BugLab هي استخدام الفهم البشري للكود والنية في الأداة. ولكن الآن بعد أن تم حل هذه المشكلة إلى حد كبير ، يمكنك توقع تحسن BugLab بمرور الوقت.
هل تحاول معرفة الفرق بين الذكاء الاصطناعي والتعلم الآلي والتعلم العميق؟ إليكم ما يقصدونه جميعًا.
اقرأ التالي
- برمجة
- مايكروسوفت
- نصائح الترميز
- الذكاء الاصطناعي

أنينا كاتبة مستقلة في مجال التكنولوجيا وأمن الإنترنت في MakeUseOf. بدأت الكتابة في مجال الأمن السيبراني منذ 3 سنوات على أمل جعله في متناول الأشخاص العاديين. حريص على تعلم أشياء جديدة ومهوس في علم الفلك ضخم.
اشترك في نشرتنا الإخبارية
انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!
انقر هنا للاشتراك