برای آخرین به روزرسانی ها و مطالب اختصاصی در مورد پوشش هوش مصنوعی پیشرو در صنعت ، به خبرنامه های روزانه و هفتگی ما بپیوندید. بیشتر بدانید
برنامه نویسی با کمک مدلهای AI همچنان ادامه دارد محبوبیت کسب کنید ، اما بسیاری برجسته شده اند موضوعاتی که وقتی توسعه دهندگان به دستیاران برنامه نویسی متکی هستند ، بوجود می آیند.
با این حال ، محققان MIT ، دانشگاه مک گیل ، ETH زوریخ ، دانشگاه جان هاپکینز ، ییل و موسسه اطلاعات مصنوعی Mila-Quebec روش جدیدی را برای اطمینان از دقیق تر و مفیدتر بودن کدهای AI ایجاد کرده اند. این روش به زبانهای مختلف برنامه نویسی مربوط می شود و به مدل بزرگ زبان (LLM) دستور می دهد تا به قوانین هر زبان رعایت کند.
این گروه دریافتند که با تطبیق روشهای جدید نمونه گیری ، می توان از مدل های هوش مصنوعی برای پیروی از قوانین زبان برنامه نویسی و حتی تقویت عملکرد مدل های زبان کوچک (SLM) ، که به طور معمول برای تولید کد استفاده می شوند ، هدایت کنند.
در این مقاله ، محققان از مونت کارلو متوالی (SMC) برای “مقابله با تعدادی از مشکلات تجزیه معنایی چالش برانگیز ، هدایت تولید با تجزیه و تحلیل استاتیک و پویا افزایشی استفاده کردند.” مونت کارلو متوالی به خانواده ای از الگوریتم ها اشاره دارد که به کشف راه حل های مشکلات فیلتر کمک می کند.
João Loula ، نویسنده اصلی این مقاله ، در مصاحبه ای با مقاله پردیس MIT گفت: این روش “می تواند دستیاران برنامه نویسی ، تجزیه و تحلیل داده های دارای هوش مصنوعی و ابزارهای کشف علمی را بهبود بخشد.” همچنین می تواند هزینه های محاسباتی را کاهش داده و از روشهای Reranking کارآمدتر باشد.
محققان خاطرنشان كردند كه كد تولید شده توسط AI می تواند قدرتمند باشد ، اما همچنین می تواند منجر به كدی شود كه از قوانین معنایی زبانهای برنامه نویسی بی اعتنایی می كند. روشهای دیگر برای جلوگیری از این امر می تواند مدل ها را تحریف کند یا بسیار وقت گیر باشد.
روش آنها باعث می شود LLM با دور انداختن خروجی های کد که ممکن است در اوایل فرآیند کار نکنند ، به قوانین زبان برنامه نویسی رعایت کنند و “تلاش های خود را به سمت خروجی ها اختصاص دهند که به احتمال زیاد معتبر و دقیق هستند.”
تطبیق SMC با تولید کد
محققان معماری را ایجاد کردند که SMC را برای تولید کد “تحت محدودیت های متنوع نحوی و معنایی” ایجاد می کند.
محققان در این مقاله گفتند: “بر خلاف بسیاری از چارچوب های قبلی برای رمزگشایی محدود ، الگوریتم ما می تواند محدودیت هایی را که نمی توانند به صورت تدریجی در کل واژگان توکن ارزیابی شوند ، و همچنین محدودیت هایی که فقط در فواصل نامنظم در طول تولید ارزیابی می شوند ، ادغام کنند.”
ویژگی های اصلی تطبیق نمونه برداری SMC با تولید مدل شامل توزیع پیشنهادی است که در آن نمونه برداری از توکن توسط محدودیت های ارزان ، وزنهای مهمی که برای تعصبات و مجدداً استفاده می کنند ، تلاش می کنند که تلاش های خود را به سمت نسل های جزئی انجام می دهد.
محققان خاطرنشان كردند كه در حالی كه SMC می تواند مدل ها را به سمت كد صحیح تر و مفید تر راهنمایی كند ، آنها اذعان كردند كه این روش ممكن است برخی از مشكلات را داشته باشد.
آنها گفتند: “در حالی که نمونه برداری از اهمیت به چندین کاستی در رمزگشایی محلی می پردازد ، از ضعف عمده نیز رنج می برد: اصلاح وزن و پتانسیل های گران قیمت یکپارچه نمی شوند تا اینکه پس از ایجاد یک دنباله کامل از این پیشنهاد ایجاد شود.
تست مدل
برای اثبات نظریه خود ، لولا و تیمش آزمایشاتی را انجام دادند تا ببینند آیا استفاده از SMC برای مهندسی کارهای دقیق تر کدها است.
این آزمایشات:
- تولید کد پایتون در کارهای علوم داده ، که از Llama 3 70B برای کد خط به خط و آزمایش نسخه های اولیه استفاده می کند
- نسل متن به SQL با Llama 3 8B- آموزش
- استنباط هدف در برنامه ریزی برای پیش بینی شرایط هدف یک عامل ، و همچنین از Llama 3 8b استفاده کرد
- سنتز مولکولی برای کشف دارو
آنها دریافتند که با استفاده از SMC مدل های زبان کوچک ، دقت و استحکام را بهبود بخشیده و از مدل های بزرگتر بهتر عمل می کنند.
چرا مهم است
مدل های هوش مصنوعی باعث شده است که مهندسین و سایر رمزگذارها سریعتر و کارآمدتر کار کنند. همچنین به یک نوع کاملاً جدید از مهندس نرم افزار تبدیل شده است: رمزگذار Vibe. اما نگرانی هایی در مورد کیفیت کد ، عدم پشتیبانی از برنامه نویسی پیچیده تر و محاسبه هزینه برای تولید کد ساده وجود داشته است.
روشهای جدید ، مانند تطبیق SMC ، ممکن است کدگذاری با هوش مصنوعی مفیدتر باشد و مهندسان را قادر سازد تا به کد تولید شده توسط مدل های بیشتر اعتماد کنند.
شرکت های دیگر روشهای بهبود کد تولید شده توسط AI را بررسی کرده اند. AI و Agentica با هم DeepCoder-14B را منتشر کردند که پارامترهای کمتری را به خود اختصاص می دهد. Google همچنین ویژگی کمک کد خود را برای کمک به افزایش کیفیت کد بهبود بخشید.
ارسال پاسخ