مهندسی دستور (prompt engineering) چیست؟

مهندسی دستور (Prompt Engineering) چیست؟

مهندسی دستور چیست؟

مهندسی دستور فرآیندی است که در آن شما راهکارهای هوش مصنوعی مولد (Generative AI) را هدایت می‌کنید تا خروجی‌های مورد نظر را تولید کنند. اگرچه هوش مصنوعی مولد تلاش می‌کند رفتار انسان‌ها را تقلید کند، اما برای تولید خروجی‌های باکیفیت و مرتبط نیاز به دستورالعمل‌های دقیق دارد. در مهندسی دستور، شما مناسب‌ترین قالب‌ها، عبارات، کلمات و نمادها را انتخاب می‌کنید تا هوش مصنوعی بتواند به شکلی معنادارتر با کاربران شما تعامل کند. مهندسان دستور با استفاده از خلاقیت و آزمون‌وخطا مجموعه‌ای از متون ورودی را ایجاد می‌کنند تا هوش مصنوعی مولد یک برنامه به‌گونه‌ای که انتظار می‌رود عمل کند.

دستور چیست؟

دستور یک متن به زبان طبیعی است که از هوش مصنوعی مولد درخواست می‌کند وظیفه خاصی را انجام دهد. هوش مصنوعی مولد راهکاری است که محتوای جدیدی مانند داستان‌ها، مکالمات، ویدئوها، تصاویر و موسیقی تولید می‌کند. این فناوری توسط مدل‌های یادگیری ماشینی (ML) بسیار بزرگ که از شبکه‌های عصبی عمیق استفاده می‌کنند و روی حجم عظیمی از داده‌ها از پیش آموزش دیده‌اند، پشتیبانی می‌شود.

مدل‌های زبانی بزرگ (LLMs) بسیار انعطاف‌پذیر هستند و می‌توانند وظایف مختلفی را انجام دهند. برای مثال، آن‌ها می‌توانند اسناد را خلاصه کنند، جملات را کامل کنند، به سؤالات پاسخ دهند و زبان‌ها را ترجمه کنند. برای ورودی‌های خاص کاربر، این مدل‌ها با پیش‌بینی بهترین خروجی بر اساس آموزش‌های قبلی خود عمل می‌کنند.

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

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

چرا مهندسی دستور مهم است؟

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

مهندسی دستور برنامه‌های هوش مصنوعی را کارآمدتر و مؤثرتر می‌کند. توسعه‌دهندگان برنامه معمولاً ورودی‌های باز کاربران را در یک دستور مهندسی‌شده قرار می‌دهند قبل از اینکه آن را به مدل هوش مصنوعی منتقل کنند.

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

در ادامه، برخی از مزایای مهندسی دستور را بررسی می‌کنیم.

کنترل بیشتر توسعه‌دهندگان

مهندسی دستور به توسعه‌دهندگان کنترل بیشتری بر تعاملات کاربران با هوش مصنوعی می‌دهد. دستورات مؤثر نیت را ارائه می‌دهند و زمینه را برای مدل‌های زبانی بزرگ ایجاد می‌کنند. آن‌ها به هوش مصنوعی کمک می‌کنند تا خروجی را پالایش کرده و به‌صورت مختصر در قالب مورد نیاز ارائه دهد.

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

بهبود تجربه کاربری

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

علاوه بر این، تعامل کاربر با هوش مصنوعی را بهبود می‌بخشد تا هوش مصنوعی نیت کاربر را حتی با ورودی کم درک کند. برای مثال، درخواست‌های خلاصه کردن یک سند حقوقی و یک مقاله خبری نتایج متفاوتی با سبک و لحن تنظیم‌شده به دست می‌آورند. این موضوع حتی اگر هر دو کاربر فقط به برنامه بگویند «این سند را خلاصه کن» نیز صادق است.

افزایش انعطاف‌پذیری

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

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

موارد استفاده از مهندسی دستور چیست؟

تکنیک‌های مهندسی دستور در سیستم‌های هوش مصنوعی پیشرفته برای بهبود تجربه کاربری با مدل زبانی یادگیری استفاده می‌شوند. در اینجا چند نمونه آورده شده است.

تخصص موضوعی

مهندسی دستور نقش کلیدی در برنامه‌هایی ایفا می‌کند که نیاز دارند هوش مصنوعی با تخصص موضوعی پاسخ دهد. یک مهندس دستور با تجربه در یک زمینه می‌تواند هوش مصنوعی را هدایت کند تا به منابع درست ارجاع دهد و پاسخ را بر اساس سؤال مطرح‌شده به‌درستی قالب‌بندی کند.

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

تفکر انتقادی

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

برای مثال، در سناریوهای تصمیم‌گیری، می‌توانید مدل را وادار کنید تا همه گزینه‌های ممکن را فهرست کند، هر گزینه را ارزیابی کند و بهترین راه‌حل را پیشنهاد دهد.

خلاقیت

خلاقیت شامل تولید ایده‌ها، مفاهیم یا راه‌حل‌های جدید است. مهندسی دستور می‌تواند برای بهبود توانایی‌های خلاقانه مدل در سناریوهای مختلف استفاده شود.

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

تکنیک‌های مهندسی دستور چیست؟

مهندسی دستور یک حوزه پویا و در حال تحول است. این کار به مهارت‌های زبانی و بیان خلاقانه نیاز دارد تا دستورات را تنظیم کند و پاسخ مورد نظر را از ابزارهای هوش مصنوعی مولد به دست آورد.

در اینجا چند نمونه دیگر از تکنیک‌هایی که مهندسان دستور برای بهبود وظایف پردازش زبان طبیعی (NLP) مدل‌های هوش مصنوعی خود استفاده می‌کنند آورده شده است.

دستور زنجیره‌ای تفکر

دستور زنجیره‌ای تفکر تکنیکی است که یک سؤال پیچیده را به بخش‌های کوچک‌تر و منطقی تقسیم می‌کند که شبیه یک جریان فکری است. این کار به مدل کمک می‌کند تا مشکلات را در یک سری مراحل میانی حل کند به جای اینکه مستقیماً به سؤال پاسخ دهد. این کار توانایی استدلال مدل را بهبود می‌بخشد.

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

برای مثال، اگر سؤال این باشد که «پایتخت فرانسه چیست؟» مدل ممکن است چندین اجرا انجام دهد که به پاسخ‌هایی مانند «پاریس»، «پایتخت فرانسه پاریس است» و «پاریس پایتخت فرانسه است» منجر شود. از آنجا که همه اجراها به یک نتیجه می‌رسند، «پاریس» به‌عنوان پاسخ نهایی انتخاب می‌شود.

دستور درختی تفکر

تکنیک درختی تفکر، دستور زنجیره‌ای تفکر را تعمیم می‌دهد. این تکنیک مدل را وادار می‌کند تا یک یا چند مرحله بعدی ممکن را تولید کند. سپس مدل را روی هر مرحله بعدی ممکن با استفاده از روش جستجوی درختی اجرا می‌کند.

برای مثال، اگر سؤال این باشد که «اثرات تغییرات اقلیمی چیست؟» مدل ممکن است ابتدا مراحل بعدی ممکن مانند «فهرست کردن اثرات زیست‌محیطی» و «فهرست کردن اثرات اجتماعی» را تولید کند. سپس در مراحل بعدی روی هر یک از این موارد توضیح بیشتری ارائه می‌دهد.

دستور مایوتیک

دستور مایوتیک شبیه به دستور درختی تفکر است. مدل وادار می‌شود تا به یک سؤال با یک توضیح پاسخ دهد. سپس مدل وادار می‌شود تا بخش‌هایی از توضیح را توضیح دهد. درخت‌های توضیح ناسازگار حذف یا کنار گذاشته می‌شوند. این کار عملکرد را در استدلال عقل سلیم پیچیده بهبود می‌بخشد.

برای مثال، اگر سؤال این باشد که «چرا آسمان آبی است؟» مدل ممکن است ابتدا پاسخ دهد: «آسمان به دلیل پراکندگی امواج کوتاه نور آبی در همه جهت‌ها توسط گازها و ذرات موجود در جو زمین به چشم انسان آبی به نظر می‌رسد.» سپس ممکن است بخش‌هایی از این توضیح را گسترش دهد، مانند اینکه چرا نور آبی بیشتر از سایر رنگ‌ها پراکنده می‌شود و جو زمین از چه چیزی تشکیل شده است.

دستور مبتنی بر پیچیدگی

این تکنیک مهندسی دستور شامل انجام چندین اجرای زنجیره‌ای تفکر است. این تکنیک اجراهایی با طولانی‌ترین زنجیره‌های تفکر را انتخاب می‌کند و سپس نتیجه‌ای که بیشترین تکرار را دارد انتخاب می‌کند.

برای مثال، اگر سؤال یک مسئله ریاضی پیچیده باشد، مدل ممکن است چندین اجرا انجام دهد که هر کدام شامل چندین مرحله محاسباتی باشند. اجراهایی با طولانی‌ترین زنجیره تفکر، که در این مثال بیشترین مراحل محاسباتی را دارند، در نظر گرفته می‌شوند. اجراهایی که با سایر اجراها به نتیجه مشترکی برسند به‌عنوان پاسخ نهایی انتخاب می‌شوند.

دستور تولید دانش

این تکنیک شامل واداشتن مدل به تولید حقایق مرتبط مورد نیاز برای تکمیل دستور است. سپس مدل به تکمیل دستور ادامه می‌دهد. این کار اغلب به کیفیت بالاتری در تکمیل منجر می‌شود زیرا مدل بر اساس حقایق مرتبط شرطی شده است.

برای مثال، فرض کنید کاربری مدل را وادار کند تا مقاله‌ای درباره اثرات جنگل‌زدایی بنویسد. مدل ممکن است ابتدا حقایقی مانند «جنگل‌زدایی به تغییرات اقلیمی کمک می‌کند» و «جنگل‌زدایی منجر به از دست دادن تنوع زیستی می‌شود» تولید کند. سپس در مقاله روی این نقاط توضیح بیشتری ارائه می‌دهد.

دستور از کم به زیاد

در این تکنیک مهندسی دستور، مدل ابتدا وادار می‌شود تا زیرمسئله‌های یک مسئله را فهرست کند و سپس آن‌ها را به ترتیب حل کند. این رویکرد اطمینان می‌دهد که زیرمسئله‌های بعدی با کمک پاسخ‌های زیرمسئله‌های قبلی حل شوند.

برای مثال، فرض کنید کاربری مدل را با یک مسئله ریاضی مانند «حل x در معادله 2x + 3 = 11» وادار کند. مدل ممکن است ابتدا زیرمسئله‌ها را به‌عنوان «کسر ۳ از هر دو طرف» و «تقسیم بر ۲» فهرست کند. سپس آن‌ها را به ترتیب حل می‌کند تا پاسخ نهایی را به دست آورد.

دستور خودپالایشی

در این تکنیک، مدل وادار می‌شود تا مسئله را حل کند، راه‌حل خود را نقد کند و سپس مسئله را با در نظر گرفتن مسئله، راه‌حل و نقد دوباره حل کند. فرآیند حل مسئله تا زمانی که به یک دلیل از پیش تعیین‌شده برای توقف برسد، تکرار می‌شود. برای مثال، ممکن است توکن‌ها یا زمان تمام شود، یا مدل یک توکن توقف تولید کند.

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

دستور محرک جهت‌دار

این تکنیک مهندسی دستور شامل یک اشاره یا سرنخ، مانند کلمات کلیدی مورد نظر، برای هدایت مدل زبانی به سمت خروجی مورد نظر است.

برای مثال، اگر دستور نوشتن شعری درباره عشق باشد، مهندس دستور ممکن است دستوراتی را طراحی کند که شامل «قلب»، «شور» و «ابدی» باشد. مدل ممکن است وادار شود: «شعری درباره عشق بنویسید که شامل کلمات “قلب”، “شور” و “ابدی” باشد.» این کار مدل را هدایت می‌کند تا شعری با این کلمات کلیدی خلق کند.

بهترین روش‌های مهندسی دستور چیست؟

مهندسی دستور خوب نیازمند ارتباط دستورالعمل‌ها با زمینه، دامنه و پاسخ مورد انتظار است. در ادامه، برخی از بهترین روش‌ها را به اشتراک می‌گذاریم.

دستورات بدون ابهام

پاسخ مورد نظر را در دستور خود به‌وضوح تعریف کنید تا از تفسیر نادرست توسط هوش مصنوعی جلوگیری شود. برای مثال، اگر به دنبال خلاصه یک رمان هستید، به‌وضوح بیان کنید که به دنبال خلاصه هستید، نه تحلیل تفصیلی. این کار به هوش مصنوعی کمک می‌کند تا فقط روی درخواست شما تمرکز کند و پاسخی مطابق با هدف شما ارائه دهد.

زمینه کافی در دستور

زمینه کافی را در دستور ارائه دهید و الزامات خروجی را در ورودی دستور خود وارد کنید و آن را به قالب خاصی محدود کنید. برای مثال، فرض کنید می‌خواهید فهرستی از محبوب‌ترین فیلم‌های دهه ۱۹۹۰ در یک جدول. برای به دست آوردن نتیجه دقیق، باید به‌وضوح تعداد فیلم‌هایی که می‌خواهید فهرست شوند را بیان کنید و درخواست قالب‌بندی جدولی کنید.

تعادل بین اطلاعات هدفمند و خروجی مورد نظر

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

آزمایش و پالایش دستور

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

لنگ‌چین (LangChain) چیست؟

دیدگاهتان را بنویسید

سبد خرید
علاقه‌مندی‌ها
مشاهدات اخیر
دسته بندی ها