برای آخرین به روزرسانی ها و مطالب اختصاصی در مورد پوشش هوش مصنوعی پیشرو در صنعت ، به خبرنامه های روزانه و هفتگی ما بپیوندید. بیشتر بدانید
خدمات وب آمازون امروز SWE-Polybench را معرفی کرد ، یک معیار جامع چند زبانه که برای ارزیابی دستیاران برنامه نویسی AI در طیف متنوعی از زبان های برنامه نویسی و سناریوهای دنیای واقعی طراحی شده است. این معیار محدودیت های قابل توجهی در چارچوب های ارزیابی موجود را نشان می دهد و به محققان و توسعه دهندگان راه های جدیدی برای ارزیابی چگونگی حرکت مؤثر در مورد عوامل هوش مصنوعی در کد های پیچیده ارائه می دهد.
Anoop Deoras ، مدیر علوم کاربردی برنامه های کاربردی هوش مصنوعی و تجربیات توسعه دهنده در AWS ، در مصاحبه با VentureBeat گفت: “اکنون آنها یک معیار دارند که می توانند در مورد ارزیابی اینکه آیا عوامل برنامه نویسی قادر به حل کارهای پیچیده برنامه نویسی هستند ، ارزیابی کنند.” “دنیای واقعی وظایف پیچیده تری را به شما ارائه می دهد. برای رفع یک اشکال یا ساختمان ویژگی ، باید بر خلاف یک پرونده واحد چندین پرونده را لمس کنید.”
این نسخه در حالی صورت می گیرد که ابزارهای برنامه نویسی دارای هوش مصنوعی در محبوبیت منفجر شده اند و شرکت های بزرگ فناوری آنها را در محیط های توسعه و محصولات مستقل ادغام می کنند. در حالی که این ابزارها قابلیت های چشمگیر را نشان می دهند ، ارزیابی عملکرد آنها همچنان چالش برانگیز است – به ویژه در زبان های مختلف برنامه نویسی و پیچیدگی های مختلف کار.
Swe-Polybench شامل بیش از 2،000 چالش کدگذاری سرنوشت ناشی از موضوعات واقعی GitHub است که چهار زبان را شامل می شود: جاوا (165 وظیفه) ، JavaScript (1،017 وظیفه) ، TypeScript (729 وظیفه) و پایتون (199 کار). این معیار همچنین شامل یک زیر مجموعه طبقه بندی شده از 500 شماره (SWE-Polybench500) است که برای آزمایش سریعتر طراحی شده است.
دئوراس در مورد معیارهای موجود توضیح داد: “تنوع کار و تنوع زبانهای برنامه نویسی از دست رفته است.” “امروز در-نیمکت ، فقط یک زبان برنامه نویسی واحد ، پایتون وجود دارد ، و یک کار واحد وجود دارد: رفع اشکال.
معیار جدید به طور مستقیم محدودیت های موجود در SWE-BENCH را نشان می دهد ، که به عنوان استاندارد de facto برای ارزیابی عامل برنامه نویسی با بیش از 50 ارسال تابلوی رهبری ظاهر شده است. علی رغم نقش پیشگامانه آن ، SWE-BENCH فقط روی مخازن پایتون تمرکز دارد ، عمدتاً دارای وظایف رفع اشکال است و به طور قابل توجهی به سمت یک پایگاه رمزگذاری شده است-مخزن Django بیش از 45 ٪ از کل کارها را به خود اختصاص می دهد.
دئوراس خاطرنشان کرد: “عمداً ، ما تصمیم گرفتیم که برای JavaScript و TypeScript کمی بیشتر از نمایندگی داشته باشیم ، زیرا ما دارای SWE-BENCH هستیم که قبلاً وظایف پایتون را دارد.” “بنابراین به جای نمایندگی در پایتون ، ما اطمینان حاصل کردیم که علاوه بر جاوا ، نمایش های کافی برای JavaScript و TypeScript داریم.”
چرا معیارهای ساده عبور/شکست ، کل داستان را در مورد عملکرد کدگذاری هوش مصنوعی نمی گویند
یک نوآوری کلیدی در Swe-Polybench معرفی معیارهای ارزیابی پیشرفته تر فراتر از “نرخ عبور” سنتی است ، که به سادگی اندازه گیری می کند که آیا یک پچ تولید شده با موفقیت یک مسئله برنامه نویسی را برطرف می کند.
دئوراس گفت: “ارزیابی این عوامل برنامه نویسی در درجه اول از طریق متریک به نام نرخ پاس انجام شده است.” “به طور خلاصه نرخ عبور ، اساساً فقط بخشی از وظایفی است که با استفاده از پچ که مأمورین تولید می کنند با موفقیت انجام می شود. اما این تعداد یک سطح بسیار بالا و آماری است. این به شما جزئیات ریز و درشت را به شما نمی گوید ، و به ویژه ، به شما نمی گوید که چگونه عامل به آن حل رسید.”
معیارهای جدید شامل محلی سازی در سطح پرونده است ، که توانایی یک عامل را برای شناسایی کدام پرونده ها نیاز به اصلاح در یک مخزن ، و بازیابی سطح گره بتونی (CST) ارزیابی می کند ، که ارزیابی می کند که چگونه یک عامل می تواند ساختارهای کد خاصی را که نیاز به تغییرات دارند ، مشخص کند.
دئوراس توضیح داد: “علاوه بر نرخ عبور ، ما دقت و یادآوری را نیز داریم و برای رسیدن به معیار دقیق و یادآوری ، ما به دنبال یک ابزار تجزیه و تحلیل برنامه به نام درخت نحوی بتونی هستیم.” “این به شما می گوید ساختار پرونده اصلی شما چگونه تشکیل شده است ، به طوری که می توانید نگاه کنید که گره کلاس چیست و در آن کلاس ، گره های عملکردی و متغیرها چیست.”
چگونه پایتون غالب می ماند در حالی که کارهای پیچیده محدودیت های هوش مصنوعی را در معرض دید خود قرار می دهد
ارزیابی آمازون از چندین عامل برنامه نویسی منبع باز در SWE-Polybench چندین الگوی را نشان داد. پایتون قوی ترین زبان برای همه عوامل آزمایش شده است ، احتمالاً به دلیل شیوع آن در داده های آموزش و معیارهای موجود. عملکرد با افزایش پیچیدگی کار ، به ویژه هنگامی که اصلاحات در سه یا چند پرونده مورد نیاز است ، تخریب می شود.
عوامل مختلف نقاط قوت مختلف را در دسته های کار نشان می دهند. در حالی که عملکرد در کارهای رفع اشکال نسبتاً سازگار است ، در هنگام رسیدگی به درخواست های ویژگی و اصلاح مجدد کد ، بین نمایندگان تنوع بیشتری وجود دارد.
این معیار همچنین نشان داد که اطلاع رسانی بیانیه های مشکل به میزان قابل توجهی بر میزان موفقیت تأثیر می گذارد ، و نشان می دهد که توضیحات مسئله روشن برای کمک های مؤثر در هوش مصنوعی بسیار مهم است.
معنای Swe-Polybench برای توسعه دهندگان سازمانی که در چندین زبان کار می کنند معنی دارد
Swe-Polybench در توسعه دستیاران برنامه نویسی هوش مصنوعی به یک مقطع بحرانی می رسد. از آنجا که این ابزارها از محیط های آزمایشی به محیط تولید منتقل می شوند ، نیاز به معیارهای سخت ، متنوع و نماینده شدت می یابد.
دئوراس اظهار داشت: “با گذشت زمان ، نه تنها قابلیت های LLM ها تکامل یافته اند ، بلکه در عین حال ، کارها پیچیده تر و پیچیده تر شده اند.” “نیاز به توسعه دهندگان برای حل کارهای بیشتر و پیچیده تر به روش همزمان با استفاده از این عوامل وجود دارد.”
پشتیبانی از زبان گسترده این معیار باعث می شود که آن را برای محیط های سازمانی که در آن توسعه پلی گلوت در آن رایج است ، به ویژه ارزشمند کند. جاوا ، JavaScript ، Typecript و Python به طور مداوم در بین محبوب ترین زبانهای برنامه نویسی در تنظیمات شرکت قرار می گیرند و پوشش Swe-Polybench را برای سناریوهای توسعه در دنیای واقعی بسیار مرتبط می کنند.
آمازون کل چارچوب Swe-Polybench را به صورت عمومی در دسترس قرار داده است. این مجموعه داده در بغل کردن صورت قابل دسترسی است و مهار ارزیابی در GitHub در دسترس است. یک تابلوی اختصاصی برای ردیابی عملکرد عوامل مختلف برنامه نویسی در معیار ایجاد شده است.
دئوراس گفت: “ما خط لوله دستیابی به داده های SWE را برای پشتیبانی از این سه زبان اضافی گسترش دادیم.” “امید این است که ما بتوانیم در آینده این روند را بیشتر بسازیم و فراتر از چهار زبان گسترش دهیم ، فراتر از سه وظیفه ای که من در مورد آنها صحبت کردم گسترش یابد ، تا این معیار حتی جامع تر شود.”
از آنجا که دستیار کدگذاری هوش مصنوعی با ارائه پیشنهادات از هر شرکت اصلی فناوری ، Swe-Polybench یک بررسی واقعیت مهم در مورد قابلیت های واقعی آنها را ارائه می دهد. طراحی این معیار اذعان می کند که توسعه نرم افزار در دنیای واقعی بیش از رفع اشکال ساده در پایتون نیاز دارد-این امر به کار در زبان ها ، درک بندهای پیچیده کد و مقابله با چالش های متنوع مهندسی نیاز دارد.
برای تصمیم گیرندگان سازمانی که ابزارهای برنامه نویسی هوش مصنوعی را ارزیابی می کنند ، SWE-Polybench چیزی ارزشمند ارائه می دهد: راهی برای جدا کردن اعتیاد به بازاریابی از توانایی فنی واقعی. از این گذشته ، آزمایش واقعی یک دستیار کدگذاری هوش مصنوعی این نیست که چقدر به نمایش در نسخه های نمایشی ساده عمل می کند ، اما آیا می تواند پیچیدگی کثیف و چند زبانه پروژه های نرم افزاری واقعی را کنترل کند-توسعه دهندگان مهربان هر روز با آن کشتی می گیرند.
ارسال پاسخ