ذكاء إصطناعي AI

كيف أستخدم شات جي بي تي chat gpt في البرمجة

كيف أستخدم شات جي بي تي chat gpt في البرمجة

إحدى الاكتشافات المثيرة للاهتمام في ChatGPT هي قدرته على كتابة شيفرة برمجية جيدة. قمت باختباره لأول مرة في عام 2023 عندما طلبت منه كتابة مكون إضافي (Plugin) لووردبريس. قام ChatGPT بعمل جيد، لكنه كان مشروعًا بسيطًا.

لكن هل يمكن استخدام ChatGPT لكتابة شيفرة برمجية أكثر تعقيدًا، وكجزء من العمل اليومي؟ إليك ملخص سريع:

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

الآن دعونا نستكشف ChatGPT بشكل أعمق. ما هي أنواع الشيفرة البرمجية التي يستطيع ChatGPT إتقانها؟ هناك حقيقتان مهمتان حول ChatGPT والبرمجة:

  • أولاً، يمكن للذكاء الاصطناعي كتابة شيفرة برمجية مفيدة.
  • ثانيًا، يمكن للذكاء الاصطناعي أن يضل تمامًا ويُنتج شيفرة غير قابلة للاستخدام.

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

تدفق النص والشيفرة البرمجية

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

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

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

أين ينجح ChatGPT – ويقوم بذلك بشكل جيد جدًا

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

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

كيف تستخدم ChatGPT لكتابة الشيفرة البرمجية

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

مع وضع هذا في الاعتبار، دعونا نلقي نظرة على بعض الخطوات المحددة حول كيفية يمكن لـ ChatGPT مساعدتك في كتابة الشيفرة البرمجية.

1. تحسين وتحديد طلبك

الخطوة الأولى هي تحديد ما ستطلبه من ChatGPT – ولكن لا تطلب منه شيئًا بعد.

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

تخيل أنك تدفع لمبرمج بشري للقيام بهذه المهمة. هل تعطيه معلومات كافية للعمل على مشروعك؟ أم أنك غامض جدًا والمبرمج الذي تدفع له من المحتمل أن يُنتج شيئًا ليس له علاقة بما تريد؟

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

  • كمدخل، حددت عنوان URL لصفحة الويب.
  • كإخراج، كتلة نصية تحتوي على ملخص.

2. استخدام ChatGPT لاستكشاف المكتبات والموارد

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

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

تبيع OpenAI (شركة مُصنعة لـ ChatGPT) الوصول إلى واجهة برمجة التطبيقات الخاصة بها لتمكينك من القيام بالضبط بما نريد. لكن في هذا المثال، افترض أننا لا نريد الدفع.

فلنرى كيف نتفاعل مع ChatGPT لفهم كيفية استخدام مثل هذه الأدوات، مجانًا، كجزء من مشروع يعمل في PHP.

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

مثال باستخدام PHP

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

أعطتني هذه الموجهة بالضبط ما أردت، بما في ذلك ذكر عروض OpenAI المدفوعة. لذا قمت بتقليص السؤال: “هل هناك أي منها مجاني؟”

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

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

ملاحظة أن هذه محادثة

لا أحتاج إلى طرح السؤال الأصلي. أنا راضٍ عن التعمق في الموضوع كما لو كان لدي خبير إلى جانبي. في هذه المرة، قدم لي ChatGPT ثمانية مكتبات للاختيار من بينها، لكن لم يتم ذكر لغة PHP التي كنت أخطط لاستخدامها في الشيفرة البرمجية.

إليك السؤال التالي: “من بين هذه المكتبات الثمانية، هل يمكنني استخدام واحدة منها مع PHP؟”

تم عرض ثلاث مكتبات لي، لكن لم أكن متأكدًا من ما تقوم به. لذا طرحت سؤالًا آخر: “ما الفرق بين Sumy و Gensim و NLTK؟”

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

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

وبالتالي كان الوقت قد حان لمعرفة كيفية استخدام Sumy مع PHP. طرحت سؤالي الأخير في هذه المرحلة من المشروع: “هل يمكنك شرح كيفية استخدام Sumy مع PHP؟”

غوص في المحادثة

يمكنك لعب اللعبة على جهاز الكمبيوتر الخاص بك ولصق هذه الأسئلة في ChatGPT. لاحظ أنه في الخطوة 1، اخترت وحدة البرنامج التي كنت بحاجة إلى المساعدة فيها. ثم خضت محادثة مع ChatGPT لتحديد المكتبة التي يجب استخدامها وكيفية دمجها في مشروعي.

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

كنت فضولياً لمعرفة ما إذا كان الذكاء الاصطناعي Gemini من Google يمكنه مساعدتي بنفس الطريقة. بالفعل، قدم Gemini بعض التوجيهات الإضافية فيما يتعلق بجانب التخطيط في البرمجة مقارنةً بإجابات ChatGPT.

لذا، لا تتردد في استخدام العديد من الأدوات لتقاطع إجاباتك.

3. طلب من ChatGPT كتابة شيفرة برمجية نموذجية

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

لذا، في النهاية، لا يمكن لـ ChatGPT صيانة الشيفرة الخاصة بك أو حتى تعديلها.

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

“اكتب دالة PHP تُسمى summerarize_article. كمدخل، ستستقبل summerarize_article عنوان URL لمقال على موقع إخباري مثل ZDNET.com أو Reuters.com.”

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

“في summerarize_article، استرجع محتوى صفحة الويب من العنوان URL المُقدم. باستخدام مكتبة Sumy الخاصة بـ PHP وأي مكتبة أخرى ضرورية، استخرج النص الرئيسي للمقال، مع تجاهل أي إعلانات، وقم بتلخيصه في حوالي 50 كلمة. تأكد من أن الملخص يتكون من جمل كاملة. يمكنك تجاوز 50 كلمة لإتمام الجملة الأخيرة إذا لزم الأمر.”

التحدث إليه مثل موظف

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

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

“بمجرد اكتمال المعالجة، قم بكتابة summerarize_article بحيث تُعيد الملخص كنص عادي.”

الشيفرة الناتجة بسيطة للغاية. استخدم ChatGPT مكتبة أخرى (Goose) لاسترجاع محتوى المقال. ثم يمرر هذا الملخص إلى Sumy مع حد 50 كلمة ويعيد النتيجة. ولكن بمجرد كتابة الأساسيات، يصبح من السهل إضافة تعديلات، وتخصيص ما يتم تمريره إلى كل مكتبة وتقديم النتائج.

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

نقطة مثيرة للاهتمام يجب ملاحظتها

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

https://www.reuters.com/business/retail-consumer/teslas-musk-says-fremont-california-factory-may-be-sold-chip-shortage-bites-2022-03-18/

قمت بالتحقق من هذا الرابط على موقع Reuters وعلى Wayback Machine. وهو لا وجود له. لا تفترض أبدًا دقة ما يقدمه ChatGPT. تأكد دائمًا من كل شيء يعطيك إياه.

4. تصحيح الشيفرة البرمجية وتحسينها

كل المبرمجين يخطئون، حتى الذكاء الاصطناعي.

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

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

أسئلة شائعة حول البرمجة باستخدام ChatGPT

هل يحل ChatGPT محل المبرمجين؟

ليس الآن – أو على الأقل – ليس بعد. يمكن لـ ChatGPT البرمجة على مستوى طالب موهوب في السنة الأولى من البرمجة. لكنه كسول. لذلك قد يقلل الأداة من الحاجة إلى المبرمجين المبتدئين.

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

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

كيف يمكنني الحصول على إجابات حول البرمجة من ChatGPT؟

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

ولكن استخدم الذكاء الاصطناعي كمساعد وموارد. وسيوفر لك الكثير من المعلومات المفيدة.

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

هل الشيفرة التي يولدها ChatGPT خالية من الأخطاء؟

بالطبع لا! ولكنك أيضًا لا يمكنك الوثوق بالشيفرة التي يكتبها المبرمجون البشر من البداية. أنا شخصيًا لا أثق في الشيفرة التي أكتبها. الشيفرة تخرج من عملية إنشاء غير مثالية بشكل لا يُصدق. دائمًا ما تكون هناك أخطاء.

قبل أن تسلم منتجًا، يجب عليك اختباره، اختباره، واختباره مرة أخرى.

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

ماذا يجب أن أفعل إذا كانت الشيفرة التي أتلقاها غير صحيحة؟

أوصي بالنظر إلى روبوت الدردشة كطالب غير متعاون أو موظف مبتدئ. ماذا ستفعل إذا أرسل لك شخص ما شيفرة غير فعالة؟ سترسلها مرة أخرى مع تعليمات لبدء العمل مجددًا والحصول على نتائج جيدة. هذا تقريبًا ما يجب عليك فعله مع ChatGPT (جربت هذا مع ChatGPT 4 و4o). عندما لا تسير الأمور كما هو مخطط لها، أقول: “لم تنجح، من فضلك حاول مرة أخرى.”

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

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

إلى أي مدى يجب أن يكون وصف مشكلة البرمجة مفصلًا عند استخدامي لـ ChatGPT؟

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

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

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

إذا استخدمت ChatGPT لكتابة شيفرتي، فمن يملكها؟

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

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

تظهر أيضًا قضايا المسؤولية بناءً على مصدر الشيفرة التدريبية وكيفية استخدام الشيفرة الناتجة.

ما هي لغات البرمجة التي يعرفها ChatGPT؟

الجواب هو معظم اللغات. لقد اختبرت العديد من اللغات الحديثة الشائعة، مثل PHP و Python و Java و Kotlin و Swift و C# وغيرها. لكنني أيضًا طلبت من الأداة كتابة شيفرة بلغات غامضة من عصور سابقة مثل COBOL و Fortran و Forth و LISP و ALGOL و RPG (مُولد تقارير البرامج، وليس لعبة الأدوار)، وحتى لغة التجميع IBM/360.

والأمر الأكثر إثارة، قدمت له هذا الموجه: “اكتب تسلسلًا يعرض “Hello, world” في ASCII من خلال وميض الأضواء على اللوحة الأمامية لجهاز 8/e PDP.”

كان جهاز PDP 8/e هو أول جهاز كمبيوتر لي. وقد قدم لي ChatGPT تعليمات للتحول إلى برنامج باستخدام المفاتيح. كنت منبهرًا، فرحًا، وخائفًا قليلاً.

GPT ماهو وكيفية إستخدامه – إفهم دوت أون لاين

كيف أستخدم شات جي بي تي ChatGPT مجاناً (دليل المبتدئين) – إفهم دوت أون لاين

مقالات ذات صلة

زر الذهاب إلى الأعلى