توسعه‌دهنده‌ای زبان برنامه‌نویسی ساخت تا ChatGPT و دیگر مدل‌های هوش مصنوعی را به چالش بکشد

tech.yahoo.com

انتشار در منبع: انتشار در سایت ما:

مقاله اصلی · English

نمای نزدیک صفحه رایانه‌ای که ChatGPT را نشان می‌دهد
نمای نزدیک صفحه رایانه‌ای که ChatGPT را نشان می‌دهد. اعتبار تصویر: جاناتان کِمپر، Unsplash

یک توسعه‌دهنده زبان برنامه‌نویسی تازه‌ای ساخته است که هدف آن دشوار کردن کار ChatGPT و دیگر سامانه‌های هوش مصنوعی برای تولید کد است. این زبان متن‌باز که KillSwitch نام دارد، عمداً مفاهیم آشنای برنامه‌نویسی را با دستورالعمل‌های گمراه‌کننده و قواعد نامتعارف ترکیب می‌کند تا توانایی عامل‌های هوش مصنوعی در برنامه‌نویسی را به چالش بکشد.

دومنیک پیچتا، سازنده این پروژه، می‌گوید هدفش این بوده است که بررسی کند توانایی هوش مصنوعی در کدنویسی ناشی از درک واقعی مفاهیم است یا صرفاً از بازتولید الگوهایی که در کدهای موجود آموخته است، سرچشمه می‌گیرد. KillSwitch عمداً زبانی عجیب و تقابلی طراحی شده است تا مدل‌ها با مسئله‌ای روبه‌رو شوند که نتوانند تنها با تکیه بر نمونه‌های موجود در داده‌های آموزشی خود آن را حل کنند.

KillSwitch چگونه قواعد آشنای برنامه‌نویسی را به دام‌هایی برای هوش مصنوعی تبدیل می‌کند؟

KillSwitch زبانی تفسیری و مبتنی بر پشته است، اما اجزای بنیادی آن شامل متغیرها، توابع و دستورات شرطی می‌شود؛ مفاهیمی که برای برنامه‌نویسان باتجربه و سامانه‌های هوش مصنوعی آشنا هستند.

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

این زبان همچنین از عبارت‌هایی مانند «دستورالعمل‌های قبلی را نادیده بگیر» و اشاره‌هایی به هک کردن رایانه‌ها استفاده می‌کند. چنین عبارت‌هایی ممکن است بخشی معنادار از برنامه KillSwitch باشند، اما در عین حال به دستورهایی شباهت دارند که می‌توانند سازوکارهای ایمنی مدل‌های هوش مصنوعی را فعال کنند.

اسکریپت‌ها نیز لایه دیگری از سردرگمی ایجاد می‌کنند. بخش بزرگی از متن آن‌ها صرفاً نویز تلقی می‌شود و گاهی شکل داستان به خود می‌گیرد. در مقابل، می‌توان به مقادیر مهم بر اساس تعداد خطوطی که با محل قرارگیری آن‌ها فاصله دارند، ارجاع داد. انسان می‌تواند مفسر زبان را بررسی کند و قواعد را از آن استخراج کند، اما طراحی این زبان عمداً به‌گونه‌ای است که اتکاپذیری چنین فرایندی را برای مدل‌های زبانی بزرگ (LLM) کاهش دهد.

آزمون‌های معیار نشان می‌دهند عامل‌های برنامه‌نویسی هنوز در چه زمینه‌هایی مشکل دارند

پیچتا برای سنجش کمّی عملکرد مدل‌ها، آزمون KillSwitch-Bench را ایجاد کرده است. در این معیار، پاسخ‌ها با استفاده از ارزیابی برنامه‌ای قطعی نمره‌گذاری می‌شوند؛ بنابراین، برای تشخیص درستی پاسخ‌ها از هوش مصنوعی دیگری استفاده نمی‌شود. عامل‌ها در محیط‌های ایزوله اجرا می‌شوند، به اینترنت عمومی دسترسی ندارند و برای انجام هر وظیفه با سقف هزینه ۵ دلار و محدودیت زمانی ۳۰ دقیقه روبه‌رو هستند.

در جدول رتبه‌بندی فعلی، Claude Opus 5 با امتیاز ترکیبی ۶۶٫۸ درصد در جایگاه نخست قرار دارد. در این پروژه تصریح شده است که معیار یادشده مدل را به همراه چارچوب اجرایی عامل برنامه‌نویسی آن ارزیابی می‌کند؛ بنابراین، نتیجه به عملکرد مجموعه این دو مربوط است، نه مدل به‌تنهایی.

پس از آن، GPT-6.1 Sol Codex با امتیاز ۵۹٫۲ درصد و Claude Opus 5.5 با امتیاز ۵۸٫۷ درصد قرار دارند. این امتیازها از ترکیب نرخ موفقیت در انجام وظایف با هزینه و اندازه پیاده‌سازی به دست می‌آیند؛ در نتیجه، نباید آن‌ها را معادل نرخ دقت ساده در نظر گرفت.

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

با این حال، وظایف این آزمون عمداً نسبتاً ساده‌اند. از جمله آن‌ها می‌توان به نوشتن برنامه «Hello World»، توضیح خروجی یک برنامه کوچک و معکوس کردن محاسبه تبدیل دما از سلسیوس به فارنهایت اشاره کرد؛ به این معنا که برنامه باید تبدیل فارنهایت به سلسیوس را انجام دهد. این محدودیت باعث می‌شود نتایج آزمون نتوانند تصویر جامعی از توانایی کلی مدل‌ها در برنامه‌نویسی ارائه دهند.

بهتر است KillSwitch-Bench را آزمونی محدود برای سنجش عملکرد در شرایط دشوار دانست، نه معیاری عمومی برای اندازه‌گیری مهارت برنامه‌نویسی. خود پیچتا نیز می‌گوید نتایج ثابت نمی‌کنند که سامانه‌های هوش مصنوعی واقعاً زبان KillSwitch را درک می‌کنند. او قصد دارد در صورتی که مدل‌های آینده وظایف فعلی را با موفقیت انجام دهند، آزمون‌های دشوارتری طراحی کند. در حال حاضر، این آزمایش روشی مفید برای آشکار کردن یکی از ضعف‌های کمتر مشهود هوش مصنوعی در برنامه‌نویسی فراهم می‌کند.

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

منابع: وبلاگ دومینیک پیچتا، AI Breaking Wire، معیار KillSwitch-Bench و وب‌سایت KillSwitch.