نوشتن پرامپتهای بهتر را متوقف کردم. طراحی مهارتهای بهتر برای هوش مصنوعی را شروع کردم.
مردم دو سال را با وسواس زیاد صرف مهندسی پرامپت کردند. آنها میخواستند از طریق پرامپتهای بهتر، پاسخهای بهتری دریافت کنند.
من پس از کار با عوامل کدنویسی هوش مصنوعی (AI coding agents)، به چیز متفاوتی پی بردم. آینده، پرامپتهای بهتر نیست؛ آینده، طراحی قابلیتهای قابل استفاده مجدد در هوش مصنوعی است.
Claude Skills نشاندهنده این تغییر رویکرد است.
ما اغلب پرامپتهای طولانی مینویسیم. به هوش مصنوعی میگویید مانند یک معمار عمل کند. میگویید از TypeScript استفاده کند. میگویید تستها را بنویسد. این روش یک بار خوب کار میکند، اما فردا دوباره باید همان متن حجیم را کپی و پیست کنید. در نهایت، پرامپت شما به یک سند ۷۰۰ خطی تبدیل میشود. هیچکس نمیخواهد چنین چیزی را نگهداری و مدیریت کند.
از اینکه هر بار به هوش مصنوعی بگویید چگونه کار کند، دست بردارید. آن دانش را یکبار بستهبندی (Package) کنید.
یک پرامپت برای یک گفتگو کار میکند، اما یک مهارت برای گفتگوهای نامحدود.
بهترین مهارتها از اصول مهندسی نرمافزار پیروی میکنند.
- مهارت بد: در توسعه کمک میکند.
- مهارت خوب: دادههای ساختاریافته را از فرمهای PDF استخراج میکند.
یک مهارت خوب، یک کار را به خوبی انجام میدهد.
برای همه کارها از یک فایل حجیم استفاده نکنید. مسئولیتها را تقسیم کنید. از فایلهای مرجع و اسکریپتها استفاده کنید. این کار مانند lazy loading در نرمافزار است؛ هوش مصنوعی فقط زمانی که نیاز دارد، زمینه (context) را بارگذاری میکند.
از اینکه از هوش مصنوعی بخواهید کارهایی را انجام دهد که کدنویسی بهتر از آن انجام میدهد، دست بردارید.
- هوش مصنوعی باید استدلال کند.
- کد باید محاسبات را انجام دهد.
از هوش مصنوعی نخواهید که یک PDF را تجزیه (parse) کند؛ از یک parser استفاده کنید. از هوش مصنوعی نخواهید مقادیر را محاسبه کند؛ کد Python را اجرا کنید. از هوش مصنوعی نخواهید دادهها را مرتب کند؛ یک اسکریپت را اجرا کنید.
از روش "افشای تدریجی" (progressive disclosure) استفاده کنید. در روز اول، یک دفترچه راهنمای ۵۰۰ صفحهای به کارآموز ندهید. فقط یک صفحه به او بدهید. فقط زمانی که نیاز داشت، اطلاعات بیشتری در اختیارش بگذارید.
این منجر به موارد زیر میشود:
- پاسخهای سریعتر
- مصرف توکن کمتر
- تمرکز بهتر
- توهم (hallucination) کمتر
بسیاری از توسعهدهندگان سعی میکنند یک "سوپر پرامپت" بسازند. آنها میخواهند یک پرامپت هم وبسایت بسازد، هم بکاند (backend) بنویسد و هم باگها را رفع کند. این یک طراحی بد است؛ درست مثل نوشتن یک کلاس که همه کارها را انجام میدهد.
مهارتهای کوچکتر و متمرکز بهتر عمل میکنند.
اگر نمیتوانید هدف یک مهارت را در یک جمله توضیح دهید، یعنی آن مهارت کارهای بیش از حد زیادی انجام میدهد.
ما در حال حرکت از ساخت نرمافزار به سمت طراحی رفتار هستیم. پشته (stack) جدید ما به این شکل است:
- Frontend
- Backend
- AI Agent
- Skills
- Tools
مهارتها باعث خودگردان (autonomous) شدن هوش مصنوعی نمیشوند، بلکه تخصص را در خود جای میدهند. شما همچنان درباره معماری، امنیت و کیفیت تصمیم میگیرید. مهارتها آن تصمیمات را بستهبندی میکنند.
مهندسی پرامپت به ما آموخت که چگونه سوال بپرسیم. مهندسی مهارت (Skill engineering) به هوش مصنوعی میآموزد که چگونه مسائل را حل کند.
برندگان در حوزه هوش مصنوعی فقط مدلهای هوشمندتر نخواهند داشت، بلکه بهترین مجموعه از دانش قابل استفاده مجدد را در اختیار خواهند داشت.
Optional learning community: https://t.me/GyaanSetuAi
