احتمالاً ماجرای اشکالزدایی لینوس توروالدز را خواندهاید و نخستین چیزی که به ذهنتان رسیده این بوده است: «حتی لینوس هم حالا از هوش مصنوعی استفاده میکند.» اما شاید همین برداشت باعث شده باشد مهمترین نکتهٔ پیام ثبت تغییرات گیت او را نبینید.
پس از جلسهای طولانی برای اشکالزدایی که طی آن هوش مصنوعی بارها حکم داد رفع اشکال شدنی نیست، آنچه توروالدز را به ادامهٔ کار واداشت، یکی از بزرگترین درسها دربارهٔ استفادهٔ درست از هوش مصنوعی است؛ درسی که پیامدهایش بسیار فراتر از بیشتر راهنماهای پرامپتنویسی هوش مصنوعی است که امسال بررسی کردهام.
اشکالی که در این مقاله به آن اشاره شده، در کامیت 818bebe برطرف شد.
ماجرای توروالدز که همه در یک جمله خلاصهاش کردند
۲۴ وصله، ۱۸ راهاندازی دوباره و یک واژه

لینوس توروالدز تنها پس از ۲۴ وصلهٔ اشکالزدایی و ۱۸ بار راهاندازی هسته توانست اشکالی را در درایور گرافیکی اینتلِ لینوکس پیدا کند. این اشکال در سامانهٔ Battlemage G21 توروالدز باعث میشد مدیر نمایش پیدرپی از کار بیفتد و صفحهای سیاه پیش روی او بماند. وقتی به هستهٔ اصلی راهحل رسید، همهچیز به جایگزینکردن round_up() با round_down() ختم شد. چند هفته زمان برد تا روشن شود بهجای «بالا»، باید «پایین» میبود.
متأسفانه روایت «حتی لینوس توروالدز هم از هوش مصنوعی استفاده میکند» به طعمهای آسان بدل شده و بسیاری از گزارشها را از اصل ماجرا دور کرده است: قهرمان و آفرینندهٔ لینوکس هم مانند دیگران برای یک چتبات مینویسد. شاید این موضوع اندکی بامزه باشد، اما نکتهٔ اصلی بههیچوجه این نیست.
کشف واقعی در روندی نهفته است که به آن ۲۴ وصله انجامید. ماجرا این نبود که هوش مصنوعی بیوقفه کار کند و راهحلی بسازد، درحالیکه توروالدز آسوده بنشیند و منتظر نتیجه بماند. در طول فرایند، هوش مصنوعی بارها کوشید او را به توقف قانع کند و حتی مشکل را «ناممکن و حلناشدنی» خواند. به بیان دیگر، عملاً به او میگفت دست بکشد و گزارش اشکال ثبت کند.
توروالدز پیشنهاد هوش مصنوعی برای دستکشیدن را نادیده گرفت و دقیقاً همین بخش سزاوار توجه است. او اجازه نداد نتیجهگیری هوش مصنوعی نقطهٔ پایان بررسی باشد.
هوش مصنوعی میخواست از حل این اشکال دست بکشد
عبارتی که باید شما را به درنگ وادارد





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

کارهای مشخصی میان او و هوش مصنوعی تقسیم شده بود. هوش مصنوعی بخش بزرگی از کارهای طاقتفرسا و تکراری را انجام میداد؛ کارهایی مانند افزودن خروجی اشکالزدایی، آزمودن تغییرات و راهاندازی پیاپی سامانه که معمولاً ذهن انسان را کرخت میکنند. توروالدز حتی نوشتن پیام نهایی کامیت را نیز به هوش مصنوعی سپرد، زیرا یافتههایش را بسیار خوب توضیح میداد. او در یادداشتهای وصله نیز نام هوش مصنوعی را بهعنوان همکار ذکر کرد.
آنچه همچنان بر عهدهٔ خود او ماند، تشخیص این بود که آیا بررسی واقعاً به پاسخی رسیده است یا نه.
تمام درسی که از این ماجرا گرفتم در یک جمله خلاصه میشود: بگذارید هوش مصنوعی جستوجو کند، اما هرگز تصمیمگیری را به آن نسپارید. برای یافتن این راهحل خاص، ابتدا باید نقش درایور گرافیکی را میشناختید؛ شناختی که با دانستن اینکه درایور در حال حاضر دقیقاً چه خطایی مرتکب میشود، تفاوت بسیاری دارد. توروالدز این درک عمیق را در چند دهه کار روی هسته لینوکس به دست آورده بود و مدلهای هوش مصنوعی از چنین دانشی بیبهرهاند. آنها ممکن است آنچه را رخ میدهد با جزئیات فراوان شرح دهند، بیآنکه لزوماً بدانند دقیقاً کدام بخش از این رفتار نادرست است.
عادتی تازه که ارزش آموختن دارد
حتی بدون دستزدن به کد هسته نیز ممکن است با چنین مشکلی روبهرو شوید. شاید آن را در اسکریپت خودکاری ببینید که فقط تا نیمه پیش میرود، در حالی که مدل هوش مصنوعی شما با اطمینان میگوید رابط برنامهنویسی از کاری که میخواهید انجام دهید پشتیبانی نمیکند. یا شاید هوش مصنوعی، محدودیت یک چارچوب نرمافزاری را مقصر از کار افتادن وبسایت شما بداند.
پیش از پذیرفتن نتیجه، همیشه باید پرسشی ساده از خود بپرسید: آیا اطلاعاتی در اختیار دارید که مدل نمیتواند از شواهد موجود استنباط کند؟ پاسخ ممکن است در دادههایی باشد که از پیش دارید، در منظورتان از انجام کار، یا صرفاً در شناخت شما از رفتار درست سامانه هنگام کارکرد عادی.
گاهی «ناممکن» از زبان هوش مصنوعی واقعاً به معنای ناممکن است. بااینحال، سرانجام این شما هستید که باید درباره درستی این نتیجه تصمیم بگیرید. چنین تصمیمی را نباید به هوش مصنوعی واگذار کرد.
منبع: این مطلب ترجمه و بومیسازی مقالهای از MakeUseOf به قلم Afam Onyimadu است. مشاهده مقاله اصلی