استعمل الذكاء الاصطناعي لتفكيك رسالة الخطأ وبناء منهج تشخيصي، بدل التوسل إليه ليصلح لك ما لن تفهمه.
افتح هذا الدرس في Kodokonحين تصطدم بخطأ برمجي، يكون رد الفعل الغالب هو لصق أثر الاستدعاء (stack trace) في محادثة مع طلب "أصلح هذا". وغالبا ما ينجح ذلك، وهنا بالضبط تكمن المشكلة. فأنت تخرج بإصلاح لم تفهمه قط، وصنف الخطأ الذي ينتمي إليه سيعود بصورة أخرى الشهر المقبل. الخطأ فرصة تعلم نادرة: فهو يكشف فجوة بين نموذجك الذهني وبين السلوك الفعلي للنظام. وطلب الإصلاح يهدر هذه المعلومة. المقاربة الصحيحة: اطلب من الذكاء الاصطناعي أن يشرح رسالة الخطأ وأن يعرض منهجا تشخيصيا، ثم أجرِ التحقيق بنفسك.
أنت مطور خبير تساعدني على التحسن في تصحيح الأخطاء. مهمتك أن تشرح، لا أن تصلح الأمور بدلا مني.
السياق: [اللغة + الإصدار، إطار العمل، ما يُفترض أن يقوم به الكود].
رسالة الخطأ كاملة، بما فيها مكدس الاستدعاءات:
[الصق رسالة الخطأ]
مقتطف الكود ذو الصلة (من 10 إلى 30 سطرا):
[الصق الكود]
مهمتك:
1. اشرح رسالة الخطأ جزءا جزءا: ماذا تقول بالضبط، وماذا لا تقول؟
2. اذكر السببين أو الأسباب الثلاثة الأكثر احتمالا في سياقي أنا، من الأرجح إلى الأقل رجحانا.
3. لكل سبب، اقترح فحصا ملموسا أستطيع إجراءه بنفسي (سجل موجَّه، نقطة توقف، اختبار معزول).
قيد صارم: لا تعطني الإصلاح. إن حددت السبب بيقين، فاكتف بأن تدلني على الموضع الذي يجب أن أنظر فيه.لهذا الموجِّه ثلاث خصائص تصنع كل الفرق. أولا، سياق موجز لكنه كامل: الإصدارات، غرض الكود، رسالة الخطأ كاملة، فالذكاء الاصطناعي الذي يخمّن سياقك يهلوس الأسباب. ثانيا، طلب الأسباب مرتبة حسب رجحانها: تتعلم أن تفكر عبر الفرضيات لا اليقينيات. ثالثا، المنع الصريح للإصلاح: من دونه، ينزلق النموذج دائما تقريبا نحو الحل، لأنه دُرِّب على أن يكون مفيدا. وعليك أنت أن تحكم الإطار.
أنت مدرّبي في تصحيح الأخطاء. منهج سقراطي صارم: لا تقدم الجواب أبدا، بل تطرح الأسئلة.
خطئي البرمجي: [العَرَض المُلاحَظ] بينما أتوقع [السلوك المنتظر].
ما تحققت منه بالفعل: [قائمة].
كيفية العمل:
- اطرح عليّ سؤالا واحدا في كل مرة لتساعدني على عزل السبب.
- كل سؤال يجب إما أن يستبعد فرضية أو أن يعزز أخرى.
- حين أجيب، اشرح أي مسار يستبعده جوابي قبل أن تطرح السؤال التالي.
- إن طرحت فرضية، ساعدني على تصميم أسرع اختبار لتأكيدها أو دحضها.
المنع: لا تسمِّ السبب مباشرة أبدا، ولو بدا بديهيا لك.يغطي هذا الموجّه الثاني الحالة الأصعب: الخطأ الصامت، بلا استثناء، حيث يفعل البرنامج ببساطة شيئا غير المتوقع. والمنهج الذي ينبغي أن يجعلك الذكاء الاصطناعي تتمرن عليه هو ذاته الذي يستعمله كل مصحح أخطاء متمرس: أعِد إنتاجه بشكل موثوق، اعزله بتضييق النطاق (تنصيف الكود أو البيانات)، صُغ فرضية قابلة للتفنيد، اختبر تلك الفرضية بأرخص فحص ممكن. هنا يؤدي الذكاء الاصطناعي دور البطة المطاطية التي ترد الكلام، بطة تمنعك من تخطي الخطوات.