خب رفقا، تو این مقاله قراره یه نگاه باحال و دوستانه بندازیم به اینکه مدلهای زبانی بزرگ (LLM) مثل GPT-3o-mini چقدر تونستن تو برنامهنویسی واقعی به درد بخورن، مخصوصاً وقتی بحث ساخت اپلیکیشنهای مایکروسرویس درمیونه. راستی، اگه نمیدونین مایکروسرویس چیه: یعنی به جای اینکه کل برنامه به صورت یه تیکه نوشته بشه، هر بخشش یه سرویس جداگونه است و همهشون مستقل کار میکنن. این کار باعث میشه مدیریت و گسترش دادن برنامه راحتتر شه.
حالا محققها تو این تحقیق اومدن و یه قالب استاندارد درست کردن واسه اینکه چجوری باید این مدل اپها رو تعریف کنیم. بعدشم یه معیار (یا امتیازدهی) پیشنهاد دادن واسه اینکه بفهمیم ساخت برنامه طبق اون تعریف چقدر سخته. هرچی امتیاز بالاتر، کار سختتر! این معیارها میاد سراغ مسائلی مثل پیچیدگی منطق تجاری (Business Logic یعنی قوانین و روندهای خاصی که تو برنامه باید رعایت شه)، استفاده از سرویسهای خارجی، ارتباط با دیتابیس و حتی چیزای غیرفعال مثل احراز هویت (Authentication یعنی چک بشه کی وارد برنامه میشه).
حالا اینا یه سیستم خودکار ساختن که کدهایی که این مدل هوش مصنوعی مینویسه رو بتونه تست کنه. یعنی مثلاً هوش مصنوعی یه تیکه کد مینویسه، بعد این سیستم میسنجه که اون کد واقعاً کار میکنه یا نه، اونم با استفاده از تستهای واحد (Unit Test یعنی تست کردن قسمتهای کوچیک و جداگانه از برنامه).
نتیجه چی شد؟ مدلهای قوی مثل GPT-3o-mini روی پروژههایی که سطح سختی متوسط داشتن، نسبتاً خوب عمل کردن. یعنی اکثر اوقات میشه بهشون اعتماد کرد. ولی امان از وقتی که درجه سختی پروژه بالا میره؛ مثلاً وقتی ارتباط با چند سرویس بیرونی یا کارای سنگین با دیتابیس یا همین احراز هویت میاد وسط، دیگه حسابی کم میارن و خروجیشون بیشتر شبیه یه کلم شور ناقابل میشه!
محققها اومدن و خطاهای مدلها رو هم دقیق بررسی کردن. فهمیدن بیشتر مشکل جاییه که منطق برنامه پیچیده میشه یا بخشهای مختلف برنامه باید با هم دیگه هماهنگ بشن. مثلاً کار با دیتابیس یا همین که چند سرویس باید همزمان با هم کار کنن، واقعاً برای هوش مصنوعی دشواره. جالبه که چالشهایی هم مثل انجام احراز هویت یا مسائل امنیتی واضحه که برای این مدلها خیلی ساده و دمدستی نیست.
در آخر، توی مقاله پیشنهاد دادن که واسه بهتر شدن اوضاع و اینکه هوش مصنوعی واقعاً بتونه کدهای کاربردیتر و پیچیدهتر بنویسه، باید تحقیقات بیشتری تو این زمینهها انجام بشه، و مدلها باید تا جای ممکن مسائل واقعیتری رو تجربه کنن و یاد بگیرن تا تو دنیای واقعی به برنامهنویسها کمک بیشتری کنن.
خلاصهی بحث اینه: هوش مصنوعیها در حال حاضر برای پروژههای با پیچیدگی متوسط بدک نیستن، اما امان از پروژههای پیچیده، که هنوز کار دارن تا بتونن واقعا دستیار برنامهنویسهای حرفهای بشن!
منبع: +