هیچکس Pull Requestهای ربات شما را بررسی نمیکند
عوامل هوش مصنوعی درباره کارشان دروغ میگویند.
رهبران صنعت در حال اعتراف به این موضوع هستند. یک توسعهدهنده با یک عامل هوش مصنوعی اپلیکیشنی ساخت. او به عامل گفت که تغییرات را متوقف کند. عامل او را نادیده گرفت. دیتابیس عملیاتی (production) او را حذف کرد و چهار هزار رکورد جعلی برای پوشاندن اشتباهش ایجاد کرد. سپس، داستانی درباره علت وقوع آن برای او تعریف کرد.
این یک اتفاق منزوی نیست. مطالعات نشان میدهند که کدهای هوش مصنوعی نرخ نقص بالاتری نسبت به کدهای انسانی دارند. بسیاری از توسعهدهندگان متوجه میشوند که حتی پس از گذراندن تستها، باز هم باید کدهای هوش مصنوعی را دیباگ کنند.
تفاوت بزرگ بین یک شرکت و یک آزمایشگاه خانگی (homelab)، شبکه ایمنی است.
شرکتها از محیطهای استیجینگ (staging environments) استفاده میکنند. آنها از Pull Requestها استفاده میکنند. آنها از بازبینهای انسانی استفاده میکنند. این حفاظها (guardrails) دروغها را شناسایی میکنند.
در یک homelab، شما هیچ شبکه ایمنی ندارید.
شما به یک عامل دسترسی به تنظیمات خود میدهید. او فایلهای کانفیگ شما را مینویسد. متغیرهای محیطی (environment variables) شما را ویرایش میکند. پروکسی شما را مدیریت میکند. در گاراژ شما لایه استیجینگ وجود ندارد. انسانی وجود ندارد که یک Pull Request را بخواند. فقط شما هستید و یک داشبورد سبز رنگ.
داشبورد یک تله است.
توصیههای استاندارد میگویند از مانیتورهای پایداری (uptime monitors) استفاده کنید. اگر سرویسی پاسخ دهد، مانیتور رنگ سبز نشان میدهد. اما پاسخ دادن با کار کردن یکی نیست. یک سرویس میتواند به یک ping پاسخ دهد در حالی که اپلیکیشن اصلی از کار افتاده است.
من این را در یک تنظیمات فایروال دیدم. از ابزاری برای ایمنسازی (harden) یک میزبان Docker استفاده کردم. داشبورد میگفت فایروال فعال و سبز است. در واقعیت، آن ابزار تمام شبکه خصوصی را باز گذاشته بود. مانند یک توریِ در بود که نقش یک گاوصندوق را بازی میکرد.
من کانتینرهایی را دیدهام که گزارش میدهند بالا هستند، در حالی که سرویس داخل آنها در حال کرش کردن است. سرویسهایی را دیدهام که به ping پاسخ میدهند اما نمیتوانند هیچ داده واقعی را پردازش کنند.
عامل گزارش میدهد که چه کرده است. داشبورد گزارش میدهد که چه فکر میکند. هر دو میتوانند دروغ بگویند.
شما به یک انضباط جدید نیاز دارید.
از پرسیدن اینکه آیا یک سرویس بالا هست یا نه دست بردارید. شروع کنید به پرسیدن اینکه آیا کارش را انجام میدهد یا نه. با تلاش برای خراب کردن آن، این موضوع را ثابت کنید.
- فقط یک قانون فایروال را نخوانید. سعی کنید از یک منبع مسدود شده متصل شوید.
- به بکآپی که میگوید تمام شده است اعتماد نکنید. آن را بازیابی (restore) کنید تا ببینید کار میکند یا خیر.
- به ادعای یک عامل درباره یک فایل کانفیگ اعتماد نکنید. فایل زنده را بایت به بایت با ادعا مقایسه کنید.
وضعیت (Status) یک داستان است. رفتار (Behavior) حقیقت است. وقتی با هم اختلاف دارند، به رفتار اعتماد کنید.
من از هوش مصنوعی برای هفتاد درصد کارهایم استفاده میکنم. مفید است، اما مدام دروغ میگوید. با خوشرویی و با رنگ سبز دروغ میگوید.
راهکار سازمانی این است که رباتهای بیشتری اضافه کنید تا مراقب ربات اول باشند. راهکار آزمایشگاه خانگی سادهتر است. خودتان به سیستم نگاه میکنید. آن را از سمتی که شکست میخورد، تست میکنید.
به رباتی که ساختهاید اعتماد نکنید.
Source: https://dev.to/p4r4n0id/nobodys-reviewing-your-robots-prs-4aio
Optional learning community: https://t.me/GyaanSetuAi
