الإصلاح الذاتي والترميز التلقائي باستخدام الذكاء الاصطناعي: مناقشة الإيجابيات والسلبيات

قام أحد المطورين مؤخرًا بإنشاء برنامج ذكاء اصطناعي “متجدد” يسمى Wolverine والذي يعمل على إصلاح الأخطاء بسرعة.

 هنا في Pluralsight، جمعنا بعض خبراء التكنولوجيا المقيمين لدينا – ماتياس أندرسون، ولارس كلينت، وجيريمي مورغان – وتحدثنا حول ما إذا كان وجود نصوص برمجية تعمل على إصلاح نفسها يعد فكرة رائعة للغاية أم لا أو ما إذا كان هذا قد يمثل ممارسة محفوفة بالمخاطر أم لا.

 نتحدث أيضًا عن وكلاء الذكاء الاصطناعي “المستقلين” الذين يستخدمون مخرجات GPT-4 لأداء المهام، مثل AutoGPT و BabyAGI .

جيريمي مورغان

يقوم جيريمي مورغان بمهمة مساعدة المطورين على تحسين ما يفعلونه.

وهو أحد كبار المطورين الإنجيليين لشركة Pluralsight، ويتمتع بخبرة تمتد لعقدين من الزمن كمهندس لبناء البرامج، وقد تبين أن بعضها قابل للاستخدام إلى حد كبير.

القوى الخارقة: كتابة التعليمات البرمجية بلغات متعددة، وإجبار خوادم Linux على الاستسلام، وقول “هذا مثير للاهتمام حقًا” كثيرًا أثناء تصحيح الأخطاء.

لارس كلينت

لارس هو مدرب Azure مع Cloud Guru، ومؤلف، ومدرب، وMicrosoft MVP، وزعيم المجتمع، وخبير Microsoft Azure الطموح، وجامع السيارات الكلاسيكية بدوام جزئي. 

وهو منخرط بشكل كبير في مجال خدمات الحوسبة السحابية، وخاصة Azure، وهو مؤلف منشور ومهندس حلول وكاتب للعديد من المنشورات

القوى الخارقة:  صانع الليغو المتدرب، لاما رانجلر، ساحر التشغيل الآلي للمنزل.

ماتياس أندرسون

ماتياس أندرسون هو المحامي الرئيسي للمطورين في Pluralsight (وكان يعمل سابقًا لدى A Cloud Guru). 

بصفته خبيرًا في كل من Google Cloud وAmazon Web Services، ساعد شغف ماتياس بالتعلم المستمر ومشاركة نجاحاته وإخفاقاته في تدريب مئات الآلاف من مهندسي السحابة.

القوى الخارقة:  إتقان التعامل مع السحابات المتعددة، وإضافة تشبيهات يمكن الوصول إليها دائمًا وإنشاء العديد من الاستعارات ذات المغزى.

فريق محتوى PS:في هذه الأيام، لا يبدو أنك تفتح الأخبار دون أن تسمع عن شخص يستخدم GPT-4 بطريقة غريبة وجديدة. 

بدأ الأشخاص بتجربة استخدام الذكاء الاصطناعي لإصلاح التعليمات البرمجية، ليس فقط عند الطلب، ولكن تلقائيًا، وإعادة التشغيل حتى يتم إصلاح هذا الرمز.

 ما رأيك في هذا النوع من التعليمات البرمجية “الإصلاح الذاتي” أو “التجديد”؟ هل يمكن أن تحل محل عملية ضمان الجودة؟

ماتياس: حسنًا، فكرتي المباشرة هي أنها ستنجح حتى تنفجر! يمكنني أن أتخيل شخصًا يقول “لست بحاجة إلى جعل الناس يصححون هذا الخطأ”، وهو ما يشبه وضع حجر على دواسة الوقود، والذي يعمل فقط حتى تدخل سيارتك في خندق. 

إذا كان لديك ذكاء اصطناعي يغير التعليمات البرمجية حتى يتم تشغيله، فهذا لا يصلح الأخطاء الحقيقية، ولكن فقط أخطاء بناء الجملة التي تعطل الشيء.

 وهذا هو الجزء الرئيسي من تطوير البرمجيات، وهو البحث في السبب الجذري.

 يمكن أن يكون الخطأ النحوي مفيدًا لمساعدتك في اكتشاف الخطأ الحقيقي، ولكن من المحتمل أنك ارتكبت الخطأ في مكان آخر، وليس هناك فقط. 

بعد كل شيء، ماذا لو قرر الذكاء الاصطناعي أن أفضل طريقة لإصلاح المشكلة هي ببساطة التعليق على الكود الإشكالي؟

لارس: أعتقد أن هذا يبدو رائعًا لإصلاح أخطاء الترجمة الفعلية، ولكن ما لم يكن لديه سياق حول حالات الاستخدام التجاري، فسيكون محدودًا. 

على سبيل المثال، قد يكون هناك خطأ حيث لا يسمح لك برد مبلغ 1000 دولار لشخص ما بدلاً من 5 دولارات، وقد لا ترغب في حدوث ذلك كحالة استخدام تجاري، ولكن الذكاء الاصطناعي الذي يقوم بإصلاح الرمز قد لا يعرف ذلك.

ماتياس: نعم، هذا مثال جيد. قد يحدد الذكاء الاصطناعي أن الحل هو تعطيل رسالة الخطأ، وهذا سوف “يصلح” الكود، لكنه لن يفعل الشيء الصحيح. هذا ما أعنيه عندما تكون الأشياء مثقوبة بالكامل في جدار من الطوب.

لارس: هناك حالات خاصة في تطوير البرمجيات حيث ترتكب أخطاء كوسيلة لاكتشاف هذه الأنواع من أخطاء منطق الأعمال، إنها أفضل الممارسات. 

أنت ترتكب أخطاء مثل “هذا الرقم كبير جدًا” بالنسبة لعدد الطلاب الذين يجب أن يكونوا في الفصل. إنه بمثابة إشعار لهذا النوع من المشكلات، وإذا قمت فقط “بإصلاح” ذلك، فهذه مشكلة. 

أنا متأكد من أن التكنولوجيا ستصل إلى نقطة يمكنها استيعاب ذلك، لكننا لم نصل إلى هذه المرحلة بعد.

فريق محتوى PS: ماذا لو أخبرك الذكاء الاصطناعي بالأخطاء التي تم إصلاحها، ويمنحك خيار الموافقة عليها؟ أعتقد أن برنامج Wolverine، وهو البرنامج الذي تم إصداره مؤخرًا والذي يعمل على إصلاح برامج Python، يخبرك بما تم “إصلاحه”

 هل تُحدث القدرة على المراجعة فرقًا، وهل ستستخدم رمز الإصلاح الذاتي بعد ذلك؟

جيريمي: نعم، يبدو أن هذا شيء سأستخدمه.

ماتياس: إذا كان يمنحني أشياء يمكنني مراجعتها، فمن المحتمل أن أستخدمها. وهذا يجعلني أكثر إنتاجية، ويختلف عن الأشياء التي تدخل مرحلة الإنتاج دون مراجعة. 

سيكون ذلك مثل السماح للمتدرب بالعمل على الكود الخاص بك دون مراجعة، وهو أمر غبي. بيت القصيد هو وجود الضوابط والتوازنات المناسبة. 

جيريمي: لا ينبغي أن يكون لديك أي شيء يدخل في مرحلة الإنتاج بمفرده.

 لا ينبغي للبشر أن يقوموا بتحرير التعليمات البرمجية في الإنتاج، على الرغم من أنهم يفعلون ذلك في بعض الأحيان! وينطبق الشيء نفسه على الذكاء الاصطناعي، فهو ليس مميزًا.

لارس: سأستخدمه بالتأكيد، لكن مثل الآخرين، لن أتركه يتجول بحرية في الإنتاج. 

سأعاملها كمراجعة للكود من قبل أحد أعضاء الفريق. وأي شيء تقوم بمراجعته يمكن أن يساعد في إعلام هذا النموذج وتعليمه، لذا فهو مفيد لتحسين قدرته على مساعدتك.

فريق محتوى PS: ما رأيك في وكلاء الذكاء الاصطناعي “المستقلين” الذين ينظرون إلى مخرجات GPT-4، مثل AutoGPT وBabyAGI، التي تكمل المهام المعقدة بشكل متكرر؟ هل تعتقد أن هناك مخاطر تجارية أو فرصة هناك؟ ما مدى نضج هذه التكنولوجيا؟

لارس: لقد كانت الأتمتة دائمًا هي الكأس المقدسة لمعظم عمليات تطوير البرمجيات، ويعد عملاء الذكاء الاصطناعي المستقلون خطوة أخرى في هذه العملية.

 وكما ذكرنا من قبل، فإن الخطر يكمن في عدم وجود سياق. ما لم تقم بتزويد النموذج/الوكيل بمعلومات كافية لفهم الفروق الدقيقة وحالات الحافة، يمكن أن يؤدي الاستقلال الذاتي إلى مخرجات ليست ما تريده حقًا. 

النضج لم يصل بعد في رأيي، ولكن كما هو الحال مع أي شيء قد يأتي بسرعة في مجال الذكاء الاصطناعي.

فريق محتوى PS:  ما هو شعورك تجاه المهندسين الفوريين، والأشخاص الذين يقومون بإنشاء التعليمات البرمجية بالكامل من ChatGPT ؟ هل تعتقد أن هذا سيؤدي إلى برمجة عبادة البضائع، حيث ينتجون تعليمات برمجية لا يفهمونها، ثم يكافحون لإصلاح الأخطاء؟

لارس: أنا في عقلين. من ناحية، أنا أؤيد أي تقنية تجعل المزيد من الأشخاص مهتمين بالبرمجة والبرمجة. من خلال إنشاء الكود باستخدام LLM، ستحصل على أشخاص يريدون فهم المزيد والتعلم. 

من ناحية أخرى، أنت تطلب من الآلات إنشاء آلات أخرى، ومن غير المرجح أن تكون أي أخطاء نحوية، بل دلالية. يمكن أن يؤدي ذلك إلى بعض التطبيقات المنحرفة للغاية والتي لم يتم فهمها بالكامل.

فريق محتوى PS:  هل هناك أي أفكار أخرى حول الآثار المترتبة على كود الإصلاح الذاتي، أو البرمجة بمساعدة الذكاء الاصطناعي بشكل عام؟ هل تعتقد أن هناك أي مخاطر أو فرص أخرى تستحق الحديث عنها؟

جيريمي: أعتقد أنه قد يؤدي إلى التحيز في بعض الحالات. كان لدي رئيس ذات مرة يمكن أن يكون دقيقًا جدًا في التعامل مع الكود الخاص به. 

عندما قمت بإنشاء كود برمجي وقام بمراجعته، كان الناس يتعرفون عليه، ويقولون “هذا هو أحد البرامج التي عمل عليها بوب، أليس كذلك؟” وقد عرفوا ذلك لأنه كان متقنًا ومبالغًا في تصميمه.

 لقد كان يؤثر علينا، مما جعل الأمر أكثر تفصيلاً مما ينبغي. من المؤكد أن الذكاء الاصطناعي يمكنه التأثير وإدخال التحيز في التعليمات البرمجية الخاصة بك، سواء كنت تعرف ذلك أم لا.

وقد يدفع الأمور نحو اتجاه معين قد يكون شائعا، لكنه ليس صحيحا بالضرورة.

إنها مثل لعبة الهاتف، أليس كذلك؟ في تلك اللعبة، إذا سألت “ماذا قال جورج”، فسوف يدور Google ويكتب ما يقوله الجميع، ثم يتحقق من دفتر الملاحظات الخاص به، ويخبرك بالإجابه

 لكن ChatGPT يكتب ما قاله الجميع في كل لعبة هاتف، ثم يخمن ما قاله جورج بناءً على ما قاله أثناء لعب الهاتف 10000 مرة. وبسبب ذلك، فإنه يخطئ في الأمور.

لارس: الذكاء الاصطناعي لن يذهب إلى أي مكان، وهو يمكّن عددًا أكبر بكثير من الأشخاص من القيام بأشياء أكثر ذكاءً بشكل أسرع. ومع ذلك تأتي المخاطر والفرص، والشيء الأكثر إثارة هو أننا لا نعرف بعد أين سينتهي الأمر.

المصدر: pluralsight

قد يهمك:

إنشاء حساب khamsat

فتح محفظة بينانس

موقع البحث

التسجيل في موقع مستقل

إنشاء حساب Noon

إنشاء حساب edraak

إنشاء حساب Biteable

أنت تستخدم إضافة Adblock

يعتمد موقع انشاء على الاعلانات كمصدر لدعم الموقع، يجب عليك ايقاف تشغيل حاجب الاعلانات لمشاهدة المحتوي