Qt وشبكة عصبية: كيف بنى مطور تطبيقًا على Visual Studio من دون كود مكتوب يدويًا تقريبًا
أجرى مطور تجربة: حاول بناء تطبيق Qt حقيقي بحيث يكتب نموذج معظم الكود، بينما يقتصر دور الإنسان على تحديد المهام والتحقق من النتيجة. توقفت النسخة المجانية عند…
معالج بواسطة الذكاء الاصطناعي من Habr AI؛ بتحرير Hamidun News
أجرى مطور تجربة غير عادية: حاول بناء تطبيق حقيقي بـ C++ و Qt بحيث تكتب الذكاء الاصطناعي معظم الكود. في النهاية، ساعد النموذج في إنشاء برنامج لتسجيل الصوت ثنائي الأذن في حالة عاملة، بينما تولى المطور تحديد المهام والتكامل والترجمة والاختبار.
كيفية تحديد المهمة
اختاروا للاختبار ليس مثالًا مجردًا أو قائمة مهام لعبة، بل مهمة عملية — تطبيق لتسجيل الصوت من رأس ثنائي الأذن. هذا نموذج رأس بشري به ميكروفونات في القنوات السمعية، مما يسمح بالحصول على تسجيل بتأثير الوجود المكاني عند الاستماع عبر سماعات الرأس.
سابقًا، كان هناك بالفعل برنامج هندسي على MFC للجهاز، لكن المؤلف أراد إنشاء تطبيق Windows منفصل بواجهة أكثر سهولة في الاستخدام وحزمة تكنولوجية حديثة.
كانت القيود التقنية معيارية تمامًا: C++ و Qt والترجمة في Visual Studio 2022. بدأت المحاولة الأولى بنسخة مجانية من روبوت دردشة، وسرعان ما اصطدمت بمشكلة أساسية: التبس النموذج بهيكل المشروع ولم يتمكن حتى من إنتاج إطار عمل تطبيق بسيط بشكل صحيح.
وفقًا للمؤلف، اقتربت التجربة من الانتهاء في هذه النقطة. تغيرت الحالة فقط بعد الانتقال إلى نسخة مدفوعة، بدأت في الحفاظ على السياق بشكل أفضل، والتمييز بين الملفات، وتقديم إجابات أكثر تماسكًا.
ما فعلته الذكاء الاصطناعي
بعد الانتقال إلى نموذج أقوى، أصبح العمل مشابهًا للبرمجة الثنائية. أظهر المؤلف الواجهة المطلوبة، ووصف المهمة الصغيرة التالية، وتلقى أجزاء من الكود لنوافذ والمعالجات والمنطق.
أولاً، أنشأت الذكاء الاصطناعي إطار عمل QtWidgets بسيط مع نافذة رئيسية وقائمة، ثم تراكمت ميزات حقيقية تدريجيًا على المشروع. في البداية، تم بناء الواجهة مباشرة في C++ بدون Qt Designer، لكن لاحقًا ظهرت ملفات الواجهة في المشروع.
نتيجة لذلك، تولت الذكاء الاصطناعي جزءًا كبيرًا من التطوير الروتيني:
- إطار عمل التطبيق Qt وهيكل ملفات المصدر
- عناصر الواجهة والقوائم
- الإشارات والفتحات والمعالجات الزرار
- دمج أوضاع التسجيل والتشغيل والمعايرة
- جزء من المنطق الحسابي معالجة الصوت عبر PortAudio
ظلت هيكل الحل بسيطًا جدًا: حل Visual Studio واحد، مشروع PortAudio منفصل، ومشروع كود التطبيق منفصل. أضاف المؤلف بالتسلسل الأجزاء التي اقترحها النموذج وأوصل التجربة إلى واجهة عاملة تسمى BingoHeadSuite.
تصرفت الذكاء الاصطناعي هنا ليس كمزود تلميحات بناء الجملة، بل كمنفذ يكتب بسرعة كود قياسي وشبه قياسي إذا تم صياغة المهمة بدقة كافية.
حيث انهار كل شيء
الخلاصة الأكثر أهمية في التجربة لم تكن أن الذكاء الاصطناعي يمكنه كتابة الكود، بل حيث يقع حد فائدته. قد يعرف النموذج جيدًا توثيق Qt وينتج أجزاء C++ أنيقة، لكنه لا يضغط على تجميع، ولا يرى أخطاء البناء الحمراء، وليس مراقبة سلوك النافذة في برنامج حقيقي.
لذلك، كادت كل خطوة تتطلب فحصًا يدويًا: كان يجب إعادة تسمية شيء ما، وتصحيح توقيع الفتحة في مكان ما، وأحيانًا يجب إعادة صياغة الطلب.
كتبت بشكل جميل، وسأذهب للعثور على أخطاء التجميع.
أثناء العمل، ظهرت قيود نموذجية: كان النموذج يخلط بين أسماء المتغيرات والدوال، ويقترح بشكل متكرر التصحيحات التي تم إجراؤها بالفعل، وأحيانًا يعود إلى البدائل الحل القديمة.
بشكل منفصل، تبين أن تكلفة النموذج مهمة: لم تستطع النسخة المجانية التعامل حتى مع مشروع بسيط، في حين تمكنت النسخة المدفوعة من الحفاظ على هيكل ملفات متعددة وبناء التطبيق تدريجيًا.
ومع ذلك، يلاحظ المؤلف تفصيلاً غير متوقع: كان الوضع المجاني أداء أفضل في توليد الرموز والرسوم البيانية البصرية البسيطة.
ماذا يعني هذا
يوضح هذا الحالة أن الذكاء الاصطناعي قادر بالفعل على تغطية جزء كبير من التطوير التطبيقي، خاصة عندما يتعلق الأمر برمز الواجهة القياسي ومعالجات الأحداث والمنطق القياسي. لكن دور المطور لا يختفي — بل ينتقل إلى كونه معماري مهام ومدمج واختبار. كلما كانت تعريف المهمة أكثر دقة، كلما كان النموذج أكثر فائدة؛ كلما اقتربت العمل من البناء والتصحيح وتعديل العمارة الموجودة، كلما كان الحاجة إلى إنسان أقوى مرة أخرى.
هل تريد التوقف عن قراءة الذكاء الاصطناعي والبدء باستخدامه؟
AI News هو موجز منسق لأخبار الذكاء الاصطناعي. تعلمك Hamidun Academy استخدام الذكاء الاصطناعي في عملك.