۱ دی ۱۴۰۳

Techboy

اخبار و اطلاعات روز تکنولوژی

آنچه که هوش مصنوعی در برنامه نویسی شما جایگزین نمی شود

هوش مصنوعی مولد در مدیریت خسته کننده و یافتن خطاها عالی است، اما تخصص و شهود برنامه نویسان همیشه ضروری است.

هوش مصنوعی مولد در مدیریت خسته کننده و یافتن خطاها عالی است، اما تخصص و شهود برنامه نویسان همیشه ضروری است.

بنیان‌گذار Datasette سایمون ویلیسون اعلام می‌کند که «هیچ وقت بهتر از این وجود نداشته است زمان یادگیری برنامه‌نویسی است، و دلیلش این نیست که هوش مصنوعی برنامه‌نویسی شما را برای شما انجام می‌دهد. در واقع، دقیقا برعکس است. ویلیسون استدلال می‌کند: «مدل‌های زبان بزرگ، منحنی یادگیری را صاف می‌کنند»، و سرعت پیشرفت را برای توسعه‌دهندگان جوان آسان‌تر می‌کند. اما ما مطلقاً نمی توانیم و نباید نحوه کدنویسی را فراموش کنیم. در عوض، می‌توانیم از هوش مصنوعی مولد برای تقویت تجربه توسعه‌دهندگان، صرف نظر از سطح تجربه، استفاده کنیم.

تجلیل از “اراده برای یادگیری”

من عاشق خواندن افکار ویلیسون در مورد هوش مصنوعی هستم. او یکی از متفکرترین توسعه دهندگان در این زمینه است. یکی دیگر از مطالب فوق‌العاده، مایک لوکیدس از O’Reilly Media است که همیشه موضوعات بزرگ را به اساسی‌ترین جنبه‌های آنها کاهش می‌دهد. در مورد هوش مصنوعی و کدنویسی، لوکیدس به ما یادآوری می‌کند “نوشتن دستورهای واقعا خوب دشوارتر از آن چیزی است که به نظر می رسد.” او استدلال می‌کند، “برای اینکه واقعاً در تلقین خوب باشید، باید تخصص خود را در مورد آنچه درخواست می‌کنید توسعه دهید.”

تعریف راه حل ابری با مهارت هایی که در واقع دارید

به عبارت دیگر، شما باید برنامه نویس خوبی باشید.

لوکیدس پیشنهاد می‌کند: «اگر تسلیم این فکر شوید که هوش مصنوعی مخزن تخصص و خردی است که یک انسان احتمالاً نمی‌تواند به آن دست یابد، هرگز نمی‌توانید از هوش مصنوعی به طور مؤثر استفاده کنید. برای استفاده مؤثر از ابزارهای کدنویسی مانند AWS CodeWhisperer یا Google Codey، واقعاً باید آنها را بر روی خروجی مورد انتظار خود راهنمایی کنید. و برای اینکه گام به گام به هوش مصنوعی بگویید چگونه مشکلات توسعه خود را حل کند، ابتدا به درک عمیقی از مشکل و نحوه تحریک هوش مصنوعی برای پاسخگویی نیاز دارید.

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

هماهنگ سازی داده ها برای خطوط لوله یادگیری ماشین

استفاده از هوش مصنوعی برای یادگیری کدنویسی

برای بسیاری از توسعه دهندگان جدید یا توسعه دهندگان باتجربه که تازه با یک زبان، چارچوب، پایگاه داده و غیره خاص آشنا هستند، منحنی یادگیری می تواند شیب دار باشد. به عنوان مثال، ویلیسون می‌گوید: «آنها [ممکن است] یک نقطه ویرگول را از دست بدهند [که منجر به یک پیام خطای عجیب و غریب شود، و دو ساعت طول می‌کشد تا راه خود را دوباره به بیرون برگردند». جای تعجب نیست، این می تواند آنها را به تسلیم شدن سوق دهد، زیرا فکر می کنند آنقدر باهوش نیستند که برنامه نویسی را یاد بگیرند.

این جایی است که دستیاران هوش مصنوعی می‌توانند وارد عمل شوند. ویلیسون می‌گوید: «برای اینکه کامپیوتر را برای انجام کارهای خسته‌کننده‌ای که باید انجام دهید، نیازی به مدرک علوم کامپیوتر ندارید.» ChatGPT و سایر دستیارهای پشتیبانی شده از LLM می توانند این خستگی را خودکار کنند. مهندس GitHub تنش های جانا دوگان، “مردم بیش از حد بر تولید کد متمرکز هستند و کاملاً نادیده می گیرند که LLM ها برای تجزیه و تحلیل کد مفید هستند.” ما برای انجام همه کارها به هوش مصنوعی نیاز نداریم. با توجه به استدلال ویلیسون، ما فقط به آن نیاز داریم تا کارهای گسسته و خسته کننده ای را خودکار کنیم که برنامه ای را نمی سازند یا خراب نمی کنند، اما می توانند اعتماد توسعه دهندگان را در صورتی که مجبور به یادگیری و انجام تمام جنبه های برنامه نویسی شوند، زمانی که یک دستیار برنامه نویسی می تواند برنامه را حذف کند، از بین ببرد. سطل زباله خسته کننده.

در حال آزمایش Azure Developer CLI

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