آموزش و بهینهسازی یک مدل هوش مصنوعی برای تولید کدهای دموسین و انیمیشنهای جاوا اسکریپت — I post trained a model on Demoscenes
خلاصه
یک توسعهدهنده با استفاده از رویکرد ادامه پیشتدریس، یادگیری برنامهسی و ترجیحات انسانی، مدلی برای تکمیل خودکار کدهای کوتاه و بصری دموسین (Dwitter) توسعه داده است. این پروژه نشان میدهد چگونه میتوان مدلهای زبانی را برای حوزههای بسیار تخصصی و نیش سفارشیسازی کرد.
دنیای «دموسین» (Demoscener) و سایزکدینگ (Sizecoding) همواره یکی از جذابترین بخشهای برنامهنویسی خلاقانه بوده است. در این فضا، توسعهدهندگان تلاش میکنند با کمترین خط ممکن از کد، جلوههای بصری خیرهکنندهای خلق کنند. پلتفرمهایی مانند Dwitter.net که میزبان کدهای ۱۴۰ کاراکتری جاوا اسکریپت (به نام Dweet) هستند، نمونه بارز این تلاشها محسوب میشوند. نویسنده این مقاله پس از بررسی کدهای پیچیده و تلاش برای الهامگرفتن از آنها، تصمیم گرفت یک مدل هوش مصنوعی برای تکمیل خودکار و پیشبینی این اسکریپتهای خاص بسازد.
چالشهای مدلسازی کدهای نامعمول
مدلهای زبانی عمومی معمولاً در درک کدهای دموسین دچار مشکل میشوند؛ زیرا این کدها پر از ترفندهای فشردهسازی، میانبرهای ریاضی و ساختارهای غیرمتعارف هستند. توسعهدهنده ابتدا تلاش کرد با استفاده از Claude کدهای مصنوعی تولید کند، اما کیفیت بصری آنها رضایتبخش نبود. در نتیجه، تصمیم گرفت با استفاده از API سایت Dwitter یک مجموعه داده واقعی شامل ۲۵ هزار دویت برای آموزش و حدود ۱۳۰۰ دویت برای اعتبارسنجی فراهم کند.
ادامه پیشتدریس و برنامه آموزشی (Curriculum Training)
به عنوان نقطه شروع، مدل Qwen2.5-Code-7B انتخاب شد. برای تطبیق مدل با زبان خاص دویوینگ، فرآیند ادامه پیشتدریس (Continued Pretraining یا CPT) روی پیکره دادهها انجام شد. برای سنجش کیفیت، از مفهوم «سورپرایز» (Surprisal) استفاده شد:
- کاهش پریپلکسیتی: میزان پریپلکسیتی مدل از ۲۸.۶۳ به ۸.۵۷ کاهش یافت که نشاندهنده توانایی بهتر مدل در پیشبینی ساختار این کدهای عجیب بود.
- استفاده از امتیاز جذابیت: نویسنده برای بهبود جذابیت بصری خروجیها، ۵ هزار دویت برتر را بر اساس امتیازهای سایت دستهبندی کرد و یک برنامه آموزشی تدریجی (Curriculum) پیادهسازی کرد تا مدل به مرور زمان ترجیح دهد کدهای محبوبتر را الگو قرار دهد.
اعمال سلیقه شخصی با یادگیری تقویتی
برای تزریق سلیقه زیباییشناختی شخصی به مدل، از یادگیری تقویتی مبتنی بر بازخورد انسانی (RLHF) با استفاده از الگوریتم GRPO بهره گرفته شد:
- برای هر کد ناقص، گروهی از ۸ تکمیل مختلف نمونهبرداری و در کنار هم رندر میشدند.
- توسعهدهنده به صورت دستی زیباترین خروجی را انتخاب میکرد.
- در مجموع، حدود ۴۰ هزار انیمیشن توسط انسان بررسی شد تا مدل نهایی (Demoscener-7B) شکل بگیرد.
در نهایت، یک رابط کاربری ساده ساخته شد که به کاربر اجازه میدهد از یک پیشوند مشخص، انیمیشنهای مختلفی تولید کند، آنها را به صورت بصری مقایسه کند و مسیر دلخواه خود را برای توسعه کد ادامه دهد.
واکنشهای جامعه هکرنیوز
این پروژه در Hacker News واکنشهای متفاوتی به همراه داشت. برخی کاربران بر این باورند که روح اصلی دموسین در تواناییهای ریاضی، مهارت حل مسئله و چالشهای انسانی آن نهفته است و استفاده از هوش مصنوعی برای دورزدن این معماها با فلسفه این جنبش در تضاد است. در مقابل، عدهای دیگر آن را ابزاری جالب برای بررسی تاریخچه جلوههای بصری و کشف روشهای جدید ابراز خلاقیت ارزیابی کردند.
این مطلب بهصورت کاملاً خودکار و با هوش مصنوعی از مقالهٔ اصلی و بحث هکرنیوز تهیه شده و ممکن است خطا داشته باشد. حقوق مطلب اصلی متعلق به نویسندهٔ آن است. قوانین و گزارش مشکل