StarCoder2؛ گامی تازه در توسعه متن‌باز هوش مصنوعی

دنیای برنامه‌نویسی این روزها با ظهور مدل‌های زبانی بزرگ دستخوش تحول شده است. پروژه StarCoder2 یکی از تازه‌ترین تلاش‌ها در این زمینه است که با هدف رایگان‌سازی و متن‌باز کردن هوش مصنوعی مولد کد، توسط سه غول فناوری یعنی ServiceNow، Hugging Face و NVIDIA شکل گرفته است.

این خانواده مدلی در سه اندازه ۳، ۷ و ۱۵ میلیارد پارامتر ارائه شده تا هر توسعه‌دهنده‌ای بتواند بر اساس منابع سخت‌افزاری خود، گزینه مناسبی را انتخاب کند. مدل ۳ میلیاردی برای کارهای سبک، مدل ۷ میلیاردی برای توازن بین کارایی و مصرف منابع و مدل ۱۵ میلیاردی برای استفاده‌های حرفه‌ای طراحی شده است.

The Stack v2؛ منبع عظیم داده برای آموزش

موفقیت StarCoder2 را باید در کیفیت داده‌های آموزشی آن جستجو کرد. این مدل‌ها از پایگاه‌داده The Stack v2 تغذیه می‌کنند؛ مجموعه‌ای که کدهای متن‌باز گوناگونی از مخازن عمومی را پوشش می‌دهد. مدل پرچمدار این خانواده یعنی نسخه ۱۵ میلیاردی، روی بیش از ۴ تریلیون توکن و ۶۰۰ زبان برنامه‌نویسی آموزش دیده است.

اتکا به چنین حجم داده‌ای باعث می‌شود مدل بتواند الگوهای پیچیده کدنویسی را در زبان‌های مختلف درک کند و خروجی‌هایی تولید کند که به کد طبیعی انسان نزدیک‌تر باشد.

معماری فنی و طراحی نوآورانه

یکی از نکات برجسته StarCoder2 بهره‌گیری از معماری Grouped Query Attention است که به کاهش حافظه مصرفی در هنگام پردازش کمک می‌کند. این مدل‌ها دارای پنجره زمینه ۱۶۳۸۴ توکن و پنجره توجه لغزان ۴۰۹۶ توکن هستند که امکان پردازش قطعه‌های کد طولانی را فراهم می‌کنند.

همچنین، همه نسخه‌های این خانواده با هدف پیش‌بینی توالی‌های میانی (Fill-in-the-Middle) آموزش دیده‌اند. این قابلیت به مدل اجازه می‌دهد تا در تکمیل کدهای ناقص یا ویرایش بخش‌های مشخص، عملکرد دقیق‌تری از خود نشان دهد.

  • مدل ۳ میلیاردی: عملکرد هم‌تراز با StarCoder1-15B
  • مدل ۷ میلیاردی: آموزش‌داده‌شده توسط Hugging Face
  • مدل ۱۵ میلیاردی: هم‌ارز با مدل‌های ۳۳ میلیارد پارامتری

عملکرد چشمگیر در قالب کوچک

شاید مهم‌ترین یافته منتشرشده درباره StarCoder2 آن است که اندازه مدل لزوماً تعیین‌کننده کیفیت نیست. مدل ۱۵ میلیاردی این خانواده در بسیاری از آزمون‌ها با مدل‌های ۳۳ میلیارد پارامتری برابر ظاهر شده است. از طرف دیگر، مدل ۳ میلیاردی نیز توانسته است عملکرد نسخه قبلی یعنی StarCoder1-15B را تکرار کند.

این نتایج، نویدبخش آینده‌ای است که در آن برای رسیدن به هوش مصنوعی قدرتمند، الزاماً به ابرکامپیوترهای عظیم نیاز نیست و بهینه‌سازی معماری می‌تواند شکاف سخت‌افزاری را پر کند.

جمع‌بندی

انتشار StarCoder2 به همراه The Stack v2، گامی مهم در مسیر دموکراتیزه کردن هوش مصنوعی است. این پروژه نه‌تنها ابزارهای قدرتمندی برای برنامه‌نویسان فراهم می‌کند، بلکه الگویی برای توسعه همکاری بین شرکت‌های بزرگ فناوری در قالب نرم‌افزار متن‌باز ارائه می‌دهد. با چنین رویکردی، آینده هوش مصنوعی فراتر از چند شرکت بزرگ، در دسترس همه خواهد بود.

پرسش‌های پرتکرار

StarCoder2 چیست؟

StarCoder2 خانواده‌ای از مدل‌های زبانی بزرگ متن‌باز برای تولید و درک کد برنامه‌نویسی است که در سه اندازه ۳، ۷ و ۱۵ میلیارد پارامتر عرضه شده است.

مدل ۱۵ میلیاردی StarCoder2 چه ویژگی‌هایی دارد؟

این مدل روی بیش از ۴ تریلیون توکن از پایگاه‌داده The Stack v2 و ۶۰۰+ زبان برنامه‌نویسی آموزش دیده و در بسیاری از آزمون‌ها با مدل‌های ۳۳ میلیارد پارامتری رقابت می‌کند.