كيفية استخدام ChatGPT لكتابة التعليمات البرمجية
كيف يمكنك استخدام ChatGPT لكتابة التعليمات البرمجية كجزء من ممارسة الترميز اليومية الخاصة بك؟ هذا ما سنستكشفه هنا.
ما أنواع الترميز التي يمكن أن يقوم بها ChatGPT بشكل جيد؟
هناك حقيقتان مهمتان حول ChatGPT والترميز. الأول هو أنه في الواقع يمكنه كتابة تعليمات برمجية مفيدة. والثاني هو أنه يمكن أن يضيع تمامًا ، ويسقط في حفرة الأرانب ، ويطارد ذيله ، وينتج قمامة غير صالحة للاستعمال على الإطلاق. لقد وجدت هذا بالطريقة الصعبة. بعد أن انتهيت من إضافة WordPress ، قررت أن أرى المدى الذي يمكن أن يصل إليه ChatGPT. لقد كتبت موجهًا دقيقًا للغاية لتطبيق Mac ، بما في ذلك الأوصاف التفصيلية لعناصر واجهة المستخدم والتفاعلات وما سيتم توفيره في الإعدادات وكيفية عملها وما إلى ذلك. ثم أطعمته إلى ChatGPT.
استجاب ChatGPT بفيض من النص والرمز. ثم توقف منتصف الكود. عندما طلبت منه الاستمرار ، تقيأ المزيد من التعليمات البرمجية والنصوص. طلبت المتابعة بعد المتابعة وألغيت المزيد والمزيد من التعليمات البرمجية. لكن … لم يكن أي منها قابلاً للاستخدام. لم تحدد المكان الذي يجب أن تذهب إليه الشفرة ، وكيفية إنشاء المشروع ، وعندما نظرت بعناية في الشفرة المنتجة – فقد تركت العمليات الرئيسية التي طلبتها ، وتركت أوصافًا نصية بسيطة تنص على “منطق البرنامج هنا. “
بعد مجموعة من الاختبارات المتكررة ، أصبح من الواضح لي أنه إذا طلبت من ChatGPT تقديم طلب كامل ، فسوف يفشل. النتيجة الطبيعية لهذه الملاحظة هي أنه إذا كنت لا تعرف شيئًا عن الترميز وتريد أن يبني لك ChatGPT شيئًا ما ، فسوف يفشل. حيث ينجح ChatGPT ، ويقوم به بشكل جيد للغاية ، هو مساعدة شخص يعرف بالفعل كيفية البرمجة لبناء إجراءات محددة وإنجاز مهام محددة. لا تسأل عن تطبيق يعمل على شريط القوائم. ولكن إذا طلبت من ChatGPT وضع قائمة على شريط القائمة ، ثم لصقها في مشروعك ، فسوف تسير الأمور على ما يرام.
ضع في اعتبارك أيضًا أنه بينما يبدو أن ChatGPT لديها قدر هائل من المعرفة الخاصة بالمجال (وغالبًا ما تكون كذلك) فإنها تفتقر إلى الحكمة. على هذا النحو ، قد يكون قادرًا على كتابة التعليمات البرمجية ، لكنه لن يكون قادرًا على كتابة كود يحتوي على الفروق الدقيقة لمشاكل محددة جدًا أو معقدة تتطلب خبرة عميقة لفهمها.
استخدم ChatGPT لعرض التقنيات وكتابة الخوارزميات الصغيرة وكتابة الإجراءات الفرعية. يمكنك حتى الحصول على ChatGPT لمساعدتك في تقسيم مشروع أكبر إلى أجزاء ، وبعد ذلك يمكنك أن تطلب منه مساعدتك في ترميز تلك الأجزاء. لذلك ، مع أخذ ذلك في الاعتبار ، دعنا نلقي نظرة على بعض الخطوات المحددة لكيفية استخدام ChatGPT لكتابة التعليمات البرمجية.
كيف يمكن أن يساعدك ChatGPT في كتابة التعليمات البرمجية
1. تضييق وتحديد طلبك
هذه الخطوة الأولى هي المكان الذي تقرر فيه ما الذي ستطلبه من ChatGPT – لكن لم تطلب منه أي شيء بعد. حدد ما تريد أن تقوم به وظيفتك أو روتينك ، أو ما تريد أن تتعلمه لتضمينه في التعليمات البرمجية الخاصة بك. حدد المعلمات التي ستقوم بتمريرها إلى التعليمات البرمجية الخاصة بك وما تريد الخروج منه. ثم انظر كيف ستصف ذلك.
تخيل أنك تدفع لمبرمج بشري للقيام بذلك. هل تعطي هذا الشخص معلومات كافية ليتمكن من العمل في مهمتك؟ أم أنك غامض للغاية ومن المرجح أن يطرح الشخص الذي تدفعه أسئلة أو يقدم شيئًا لا علاقة له تمامًا بما تريده؟
هنا مثال. لنفترض أنني أريد أن أكون قادرًا على تلخيص أي صفحة ويب. أريد أن أطعمه شيئًا مثل هذا المقال وأعيد ملخصًا قصيرًا مدروسًا ومناسبًا. كإدخالي ، سأحدد عنوان URL لصفحة الويب. كإخراج ، إنه جزء من النص مع ملخص.
2. استخدم ChatGPT لاستكشاف المكتبات والموارد
استمرارًا للمثال أعلاه ، كانت الطريقة القديمة جدًا لاستخراج بيانات صفحة الويب هي العثور على النص بين علامات فقرات HTML. ولكن مع ظهور أدوات الذكاء الاصطناعي ، أصبح من المنطقي أكثر استخدام مكتبة الذكاء الاصطناعي لعمل مقتطف وملخص ذكي. أحد الأماكن التي يتفوق فيها ChatGPT (وهو أيضًا مجال يمكنك التحقق منه بسهولة لتجنب نمط السلوك الموثوق به ولكن الخاطئ) هو العثور على المكتبات والموارد.
تبيع شركة OpenAI (الشركة المصنعة لـ ChatGPT) وصول واجهة برمجة التطبيقات إلى محركات GPT-3 و GPT-4 التي ستفعل ما نريده بالضبط. ولكن في حالة هذا المثال ، لنفترض أننا لا نريد دفع رسوم المعاملات. لذلك دعونا ننظر إلى التفاعل مع ChatGPT لمعرفة كيفية استخدام هذه الأداة مجانًا مع مشروع يعمل بلغة PHP.
لقد بدأت بموجه تم تصميمه لاستنباط معلومات حول المكتبات التي ستوفر الوظيفة التي أريدها. المكتبة (لأولئك الذين يقرؤون منكم ممن ليسوا مبرمجين) هي مجموعة من التعليمات البرمجية التي يمكن للمبرمج الوصول إليها والتي تقوم بالكثير من العبء الثقيل لغرض معين. يتمثل جزء كبير من البرمجة الحديثة في العثور على المكتبات الصحيحة واختيارها. لذا فهذه نقطة انطلاق جيدة.
في هذه الحالة ، أبحث في الكتل البرمجية المكتوبة من قبل أشخاص آخرين والتي ستلخص النص. هذا هو أول موجه لي:
وصف عشر مكتبات مختلفة للذكاء الاصطناعي مفتوحة المصدر (واللغات التي تعمل بها) والتي يمكنني استخدامها لإنشاء ملخص للمحتويات الأساسية الرئيسية لأي صفحة ويب ، مع تجاهل أي إعلانات أو مواد مضمنة.
أعطاني هذا ما أريده بالضبط ، بما في ذلك ذكر عروض OpenAI. أعتقد أن برنامج OpenAI سيكون رائعًا هنا ، ولكن بالنسبة لهذا المشروع الافتراضي ، لا ترغب في وضع ميزانية لرسوم واجهة برمجة التطبيقات. لذلك سأضيق السؤال.
هل أي منها مجاني؟
قام ChatGPT بالتحوط من رهاناته بإجابته. إليك ما قالته: “نعم ، كل مكتبات الذكاء الاصطناعي العشر هذه مفتوحة المصدر ومجانية الاستخدام. ومع ذلك ، قد يكون لبعضها حدود استخدام أو تتطلب الدفع مقابل الوصول إلى ميزات أو موارد إضافية.” وبناءً على ذلك ، أوضحت استفساري.
أي من هذه المكتبات ليس لها حدود استخدام ولا تتطلب أي مدفوعات أو ترخيص إضافي
لاحظ كيف أن هذه محادثة إلى حد كبير. لست مضطرًا لإعادة طرح السؤال الأصلي. أنا فقط أقوم بالتنقيب بنفس الطريقة التي قد أفعلها إذا كان لدي خبير في المتناول وكنت أبحث عن توضيح. في هذه الحالة ، أعطاني ChatGPT ثمانية اختيارات للمكتبة ، لكن لم يذكر أي منها لغة PHP التي كنت أخطط للترميز بها. لذا ، إليك الموجه التالي:
من بين تلك المكتبات الثمانية ، هل يمكنني استخدام أي منها مع PHP؟
لقد أعاد ثلاث مكتبات ، لكنني لم أكن متأكدًا مما فعله كل منها. إذن سؤال آخر:
ما الفرق بين Sumy و Gensim و NLTK؟
ما زلت غير متأكد ، لذلك أوضحت خطة الاستخدام الخاصة بي ثم سألت:
إذا كنت أرغب في إنشاء ملخصات لمقالات أخبار صفحة الويب ، فما هي المكتبة التي ستعمل بشكل أفضل؟
كانت الإجابة التي حصلت عليها واضحة وواعدة: “تم تصميم Sumy خصيصًا لتلخيص النص ، وهي مهمة إنشاء ملخص يلتقط أهم المعلومات من جزء من النص.” لذا ، حان الوقت الآن لمعرفة ما الذي ينطوي عليه استخدامه مع PHP. سألت سؤالي الأخير عن هذا الجزء من المشروع:
هل يمكنك شرح كيفية استخدام Sumy من PHP؟
لا تتردد في اللعب على جهاز الكمبيوتر الخاص بك ولصق هذه المطالبات في مثيل ChatGPT الخاص بك. لاحظ أنه في الخطوة 1 ، قررت وحدة البرنامج التي سأحصل على المساعدة بشأنها. بعد ذلك ، في هذه الخطوة ، أجريت محادثة مع ChatGPT لتحديد المكتبة التي يجب استخدامها وكيفية دمجها في مشروعي.
أيضًا: أفضل روبوتات دردشة AI: ChatGPT وبدائل أخرى مثيرة للاهتمام يمكنك تجربتها
قد لا يبدو هذا كأنه برمجة ، لكنني أؤكد لك أنه كذلك. البرمجة ليست مجرد نسف سطور من التعليمات البرمجية على الصفحة. البرمجة هي معرفة كيفية دمج جميع الموارد والأنظمة المختلفة معًا ، وكيفية التحدث إلى جميع المكونات المختلفة للحل الخاص بك. هنا ، ساعدني ChatGPT في إجراء تحليل التكامل هذا.
بالمناسبة ، كنت أشعر بالفضول فيما إذا كان بإمكان Bard من Google المساعدة بنفس الطريقة. لا تستطيع Bard بالفعل كتابة التعليمات البرمجية ، لكنها أعطت بعض الأفكار الإضافية حول جانب التخطيط في البرمجة على استجابات ChatGPT. لذلك لا تتردد في استخدام أدوات متعددة لتثليث الإجابات التي تريدها. الكودنج هو التالي.
3. اطلب من ChatGPT كتابة كود
حسنًا ، دعنا نتوقف هنا للحظة. هذه المقالة بعنوان “كيفية استخدام ChatGPT لكتابة التعليمات البرمجية.” وسيحدث ذلك ، لكننا نطلب حقًا من ChatGPT كتابة كود. انتظر. ماذا؟
لا يمكن لـ ChatGPT الحفاظ على شفرتك ، أو حتى تعديلها. هذا يعني أن عليك أن تفعل ذلك بنفسك. كما نعلم ، نادرًا ما تكون المسودة الأولى لجزء من التعليمات البرمجية هي الشفرة النهائية. لذا ، حتى إذا كنت تتوقع أن يقوم ChatGPT بإنشاء رمز نهائي ، فستكون حقًا نقطة بداية ، حيث تحتاج إلى إكمالها ، ودمجها في مشروعك الأكبر ، واختبارها ، وتنقيحها ، وتصحيحها ، وما إلى ذلك. .
لكن هذا لا يعني أن الكود لا قيمة له. بعيد عنه. دعنا نلقي نظرة على مطالبة كتبتها بناءً على المشروع الذي وصفته سابقًا. هذا هو الجزء الأول:
افتح دالة PHP تسمى Summarize_article.
كإدخال ، سيتم تمرير عنوان urlize_article إلى مقالة على موقع متعلق بالأخبار مثل RavTeck.com.
أخبر ChatGPT لغة البرمجة التي يجب أن يستخدمها. أنا أخبرها أيضًا بالمدخلات ، لكن أثناء القيام بذلك ، أقدم موقعين كعينات لمساعدة ChatGPT في فهم أسلوب المقالة. بصراحة ، لست متأكدًا من أن ChatGPT لم يتجاهل هذا الجزء من التوجيه. بعد ذلك ، سأخبره عن كيفية القيام بالجزء الأكبر من العمل:
داخل summarize_article ، قم باسترداد محتويات صفحة الويب على عنوان URL المقدم. باستخدام مكتبة Sumy من داخل PHP وأي مكتبات أخرى ضرورية ، قم باستخراج النص الرئيسي للمقالة ، وتجاهل أي إعلانات أو مواد مضمنة ، ولخصها في حوالي 50 كلمة. تأكد من أن الملخص يتكون من جمل كاملة. يمكنك تجاوز الكلمات الخمسين لإنهاء الجملة الأخيرة ، إذا لزم الأمر.
هذا مشابه جدًا لكيفية إرشاد الموظف. أريد أن يعرف هذا الشخص أنه لم يقتصر على Sumy فقط. إذا كانوا بحاجة إلى أداة أخرى ، فأنا أريدهم أن يستخدموها. لقد حددت أيضًا عددًا تقريبيًا من الكلمات لإنشاء حدود لما أريده كملخص. إصدار لاحق من الروتين قد يأخذ هذا الرقم كمعامل. ثم أنهيت حديثي بقول ما أردت نتيجة لذلك:
بمجرد اكتمال المعالجة ، قم بتلخيص التعليمات البرمجية بحيث تُرجع الملخص في نص عادي.
الكود الناتج بسيط جدًا. قام ChatGPT باستدعاء مكتبة أخرى (Goose) لاسترداد محتويات المقالة. ثم مرر ذلك إلى Summy بحد أقصى 50 كلمة ، ثم أعاد النتيجة. هذا كل شيء. ولكن بمجرد كتابة الأساسيات ، فإن الأمر مجرد مسألة برمجة للعودة إليها وإضافة تعديلات ، وتخصيص ما يتم تمريره إلى المكتبتين ، وتقديم النتائج.
أسئلة يكثر طرحها
هل يحل ChatGPT محل المبرمجين؟
ليس الآن ، أو على الأقل ليس بعد. برامج ChatGPT على مستوى طالب برمجة موهوب في السنة الأولى ، لكنها كسولة (مثل طالب السنة الأولى). قد يقلل من الحاجة إلى مبرمجين مبتدئين للغاية ، ولكن في مستواه الحالي ، أعتقد أنه سيجعل الحياة أسهل للمبرمجين المبتدئين (وحتى المبرمجين ذوي الخبرة) لكتابة التعليمات البرمجية والبحث عن المعلومات. إنها بالتأكيد توفر الوقت ، ولكن هناك القليل من مشاريع البرمجة التي يمكنها القيام بها بمفردها – على الأقل الآن. في عام 2030؟ من تعرف.
ما هي لغات البرمجة التي يعرفها ChatGPT؟
أغلبهم. لقد حصلت على تعقبات جانبية كبيرة في محاولة هذا. لقد اختبرت اللغات الحديثة الشائعة ، مثل PHP و Python و Java و Kotlin و Swift و C # والمزيد. ولكن بعد ذلك قمت بكتابة التعليمات البرمجية بلغات غامضة من العصور المظلمة مثل COBOL و Fortran و Forth و LISP و ALGOL و RPG وحتى لغة IBM/360.