
یک نویسنده در وبسایت XDA Developers تجربه خود از خودکارسازی چند کار قدیمی در ویندوز به کمک هوش مصنوعی را منتشر کرده است. او که برای سرور خانگی خود پشتیبانگیری و بهروزرسانی را جدی میگیرد، سالها انجام این کارها را در رایانه شخصی ویندوزی به تعویق انداخته بود. در این تجربه، هوش مصنوعی نقش نوشتن اسکریپت (Script) و آزمونوخطای آن را بر عهده گرفته است.
سه وظیفهای که قرار شد خودکار شوند
نویسنده ابتدا فهرستی از کارهای روزمره تهیه کرد و در نهایت سه وظیفه را انتخاب کرد: یک پشتیبانگیری (Backup) صبحگاهی که خودش را بررسی کند، یک بررسی سلامت (Health Check) برای رایانه، و یک بهروزرسانی زمانبندیشده (Scheduled Update) همراه با ثبت گزارش. او گزینهای برای «شروع روز» را هم در نظر گرفت، اما چون هر روز با برنامههای یکسانی کار نمیکرد، آن را کنار گذاشت.
محدود کردن دامنه پشتیبانگیری
مهمترین بخش، پشتیبانگیری بود. او در ابتدا قصد داشت پوشه Documents را پشتیبانگیری کند، اما پس از بررسی متوجه شد این پوشه حدود ۷۳۹٬۲۱۴ فایل و نزدیک به ۷۰ گیگابایت حجم دارد و برای نسخه اول مناسب نیست. در ادامه، پوشهای مرتبشده از Downloads را انتخاب کرد که ۲٬۴۱۸ فایل و حدود ۱٫۸۱ گیگابایت داشت و فایلهای مهم او را در بر میگرفت. مقصد پشتیبانگیری نیز فضای ذخیرهسازی شبکه (NAS) بود که همیشه روشن و در دسترس قرار داشت.
چرا Task Scheduler کافی نبود؟
برای زمانبندی، نخستین گزینه زمانبند وظایف (Task Scheduler) بود. اما این ابزار برای پشتیبانگیری هنگام خاموش شدن سیستم مناسب نبود، زیرا وظیفه ممکن بود چند ثانیه پس از شروع خاموشی متوقف شود. نویسنده دو راه داشت: نوشتن اسکریپتی جداگانه که ابتدا پشتیبانگیری و سپس سیستم را خاموش کند، یا استفاده از خطمشی گروهی (Group Policy) برای افزودن اسکریپت خاموشی. او راه دوم را انتخاب کرد تا مجبور نباشد عادت همیشگی خاموش کردن رایانه را تغییر دهد.
بررسی سلامت و بهروزرسانی برنامهها
پس از حل مسئله پشتیبانگیری، دو وظیفه دیگر سادهتر شدند. برای بررسی سلامت، تابعی به نام Get-Health ساخته شد که با استفاده از Get-PSDrive و Get-PhysicalDisk گزارش وضعیت را دریافت میکند. برای بهروزرسانی نیز دو گزینه مطرح شد؛ گزینهای که فقط برنامههای قدیمی را گزارش میداد و گزینهای که برنامههای موجود در فهرست مجاز را بهروزرسانی میکرد و دیگر برنامههای نیازمند بهروزرسانی را فهرست میکرد. نویسنده گزینه دوم را برگزید.
خطاهای واقعی در نخستین اجرا
نخستین اجرای آزمایشی با خطای «The network name cannot be found» شکست خورد؛ دلیل آن، نام اشتراک (Share) نادرست روی NAS بود. پس از اجرای فرمان net view، هفت اشتراک موجود شناسایی شد و نویسنده یکی از آنها را انتخاب کرد. او همچنین تصمیم گرفت پشتیبانگیری را علاوه بر زمان خاموشی، هنگام ورود به سیستم (Logon) هم اجرا کند و اعلانی با ntfy دریافت کند تا از نتیجه مطلع شود.
اجرای دستی حالت بوت با موفقیت انجام شد: اسکریپت ۲٬۳۷۹ فایل را در ۳۳ ثانیه کپی و بررسی کرد، 7-Zip و VLC را بهروزرسانی کرد و خلاصه گزارش را از طریق ntfy فرستاد. اما اجرای حالت خاموشی در اولین تلاش واقعی شکست خورد و خطای «A specified logon session does not exist» ثبت شد. در ادامه چند خطای «Access denied» با کد ۶۷ رخ داد که یکی از دلایل آن، اشتباه در کدگذاری فراخوانی API ویندوز (Windows API) بود. پس از اصلاح، رایانه چند بار راهاندازی مجدد شد و اسکریپت هر بار درست کار کرد.
نتیجه: خودکارسازی کاری که سالها عقب افتاده بود
نویسنده میگوید پیش از این آزمایش تصور میکرد با هوش مصنوعی در چند دقیقه میتواند اسکریپت را بنویسد، اما رسیدن به درخواست (Prompt) مناسب و سپس آزمون و اجرای پایدار آن بیش از انتظار طول کشید. با این حال، هوش مصنوعی به او کمک کرد کاری را خودکار کند که سالها به تعویق افتاده بود. اسکریپت هنوز کاملاً نهایی نشده و قرار است در روزهای بعد بهتر شود؛ در نهایت پوشه Documents هم با فیلتر مناسب به پشتیبانگیری اضافه خواهد شد.