مهندسی پرامپت (Prompt Engineering) رشته ای است که در آن چگونگی تعامل انسان با سیستم های هوش مصنوعی با هدف تولید نتایج بهینه بررسی میشود. مهندس پرامپ شخصی است که توانایی پرسیدن سوالات یا نوشتن دستورات صحیح در سیستم های هوش مصنوعی را دارد.
پرامپت چیست؟
ابزارهای هوش مصنوعی مولد (Generative AI) مانند چت جی بی تی، Bard ،Midjourney ،Dall-E نیاز دارند تا کاربر با زبان و ادبیات خودشان با آنها ارتباط برقرار کند. ممکن است این زبان ها طبیعی و مانند انگلیسی به نظر برسند اما تفاوت هایی با زبان طبیعی روزمره انسان ها دارند.
به متنی که با هدف انجام کاری به سیستم های هوش مصنوعی وارد میشود پرامپت گفته میشود.
تمام هدف پرامپت بهره گیری از پردازش زبان طبیعی به منظور تعامل با هوش مصنوعی با استفاده از کلمات و دستور زبان رایج میان انسان ها مثل زیان انگلیسی است و هیچ زبان برنامه نویسی در این فرآیند دخیل نمی باشد.
هنگامی که هوش مصنوعی مولد می خواهید کاری را انجام دهد اینگونه نیست که به راحتی پاسخ هوشمندانه ای تولید کند. این ابزار ها آنچنان هم هوشمند نیستند و مانند انسان نمی تواند منظور طرف مقابل را درک کنند، بلکه باید با ادبیات خاصی درخواست خود را از این سیستم ها مطرح نمایید. کاربران درخواست خود را در قالب یک رشته یا نوشته مطرح کرده و از سیستم میخواهند تا کاری را انجام دهد به این نوشته پرامپت گفته میشود.
هرچه درخواست فرد عمومی تر باشد پاسخ هوش مصنوعی نیز به طبع آن عمومی تر خواهد بود. اگر از هوش مصنوعی بخواهید تا یک جک برای شما تعریف کند ممکن است با جواب های غیر عادی مواجه شوید اما اگر از او بخواهید یک جک درباره باب اسفنجی با ادبیات هزار سال پیش تعریف کند احتمالا جواب های بهتری دریافت خواهید کرد.
نحوه تعامل با پرامپت سیستم های هوش مصنوعی بیش از این که یک علم باشد یک هنر است. اما هنری که نیاز به تمرین زیاد دارد. در مصاحبه ای که مدیر عامل غول اینترنتی چین به نام Baidu با مجله فوربس انجام داد ادعا کرد “تا ده ساله آینده مهندسی پرامپت جایگزین نیمی از مشاغل دنیا خواهد شد”
اما برخی دیگری معتقدند مهندسی پرامپت به دلیل ضعف ها و محدودیت هایی که سیستم ها در حال حاضر دارند، رواج یافته است و در آینده با بهبود این سامانه های هوش مصنوعی مهندسی پرامپت به رویه معمولی در مسیر یادگیری افراد در استفاده از ابزار ها تکنولوژی تبدیل خواهد شد.
مهندسی پرامپ چیست؟
مهندسی پرامپت یا مهندسی پرسش رشته و مجموعه ای از مهارت ها و روش ها است که در آن استفاده بهینه و اصولی از هوش مصنوعی مولد مورد مطالعه قرار میگیرد. در این رشته نحوه تعامل با تکنولوژیهای مختلف هوش مصنوعی و چگونگی ورود فرامین و درخواست ها به مدل های هوش مصنوعی بررسی میگردد. هدف کلی از این رشته ارائه سرویسهای بهتر بر پایه هوش مصنوعی و گرفتن نتیجه بهتر از ابزار های موجود است.
تاریخچه مهندسی پرامپت
در سال ۲۰۲۱ محققین یک مدل از قبل تربیت شده عمومی را به گونه ای تغییر دادند که صرفا به گونه ای نباشد که یک وظیفه خاص را انجام دهد بلکه بتوان با استفاده از ورودی های متفاوت کارهای متفاوتی انجام دهد. در سال ۲۰۲۲ مفهوم پرامپت های متوالی (chain-of-thought) توسط محققین گوگل مطرح گردید. در سال ۲۰۲۳ تعداد زیادی سیستم های هوش مصنوعی که از پرامپت های متن به متن و متن به تصویر استفاده می کردند معرفی شدند.
مهندس پرامپت کیست و چه کاری انجام میدهد؟
مهندس پرامپت با کمک دانش هوش مصنوعی و درکی که از مدل های زبانی دارد پرامپت های موثر تری را ایجاد کرده و به هوش مصنوعی در جهت پاسخ بهتر به موارد خواسته شده کمک میکند و آن را در جهت درست هدایت می نماید. پرامپت ها باید به طور دائم بازنویسی شوند تا به نتایج بی نقص دست پیدا کنیم.
مهندس پرامپت با هدف گرفتن خروجی های با کیفیت، پرامپت های با کیفیت تولید میکند.
اجازه دهید به بررسی چند مورد از کارهایی که مهندس پرامپت میتواند انجام دهد بپردازیم
طراحی چت بات پشتیبانی از مشتری
فرض کنید شرکتی قصد دارد تا چت باتی با هدف مدیریت درخواست ها و سوالات مشتریان ایجاد نماید. در اینجا وظیفه مهندس پرامپت این است که پرامپت هایی را ایجاد کند تا با استفاده از آن اطلاعاتی که برای کمک به مشتری نیاز است از او گرفته شود.
به عنوان مثال اگر کاربری گفت نمی تواند لاگین کند مهندس پرامپت ممکن است سیستم را طوری طراحی کنید تا پاسخ دهد “متاسفم که این مشکل پیش آمده آیا پیغام خطایی مشاهده می کنید؟” در اینجا پرامپت طوری طراح میشود تا از کاربر اطلاعات بیشتری دریافت کنیم و بهتر بتوانیم به او کمک نماییم.
تولید محتوا با کمک هوش مصنوعی
فرض کنید تصمیم دارید با استفاده از سیستم های هوش مصنوعی مطلبی بنویسید احتمالا اگر در پرامپت آن یک کلمه کلی مانند “ایده” بنویسید با مطالب بی ربط و کلی زیادی مواجه خواهید شد اما یک مهندس پرامپت می نویسد “پنج ایده برای عنوان مقاله در رابطه با ترند های مد پایدار تولید کن” این نوشته یا پرامپت به احتمال خیلی بیشتری نتایج مورد نظر نویسنده را تولید خواهد کرد.
هوش مصنوعی در تحقیقات علمی
فرض کنید محققی با استفاده از هوش مصنوعی در حال آنالیز حجم زیادی از داده ها میباشد آنها ممکن است به هوش مصنوعی بگویند “داده ها را آنالیز کن” اما این پرامپت نامفهوم ممکن است باعث تولید نتایج غیر دلخواه شود.
اما یک مهندس پرامپت به آنها کمک میکند تا درخواست خود را بهتر مطرح نمایند مثلا از هوش مصنوعی بخواهند: “داده ها را با هدف یافتن همبستگی بین متغیر الف و ب تحلیل کن”
در نهایت مهندس پرامپت دانش تکنیکی خود را با مهارت های زبانی به منظور بهینه سازی ارتباط ما با هوش مصنوعی ادغام میکند.
در نتیجه در همه ی تیم هایی که از هوش مصنوعی برای پیشبرد اهداف خود استفاده میکنند حضور یک مهندس پرامپت میتواند بسیار کمک کننده باشد.
مهندس پرامپت به چه مهارت هایی نیاز دارد؟
برای موفقیت در این رشته نیاز است که کلمات و واژه های را به خوبی بشناسید و نویسنده خوبی باشید. رمز اصلی این کار در صریح بودن و بکارگیری جزئیات است اینکه درخواست های دارای ابهام از سیستم داشته باشید منجر به نتایج غیر دلخواه خواهد شد اگر چه که ممکن است نتایجی فوق العاده و به دور از انتظار نیز بدست آید!
این که بعضی از هوش مصنوعی ها به صورت مکالمه و گفت و گو پیوسته عمل میکند و با کاربر تعامل دارند ممکن است نیاز به صریح و رک بودن را کاهش دهد. در سیستم های جدید که با چت کردن و به یاد آوری تاریخچه قبلی مکالمه و یادگیری علایق و اولویت های فرد مقابل در آینده عرضه خواهند شد این نیاز به صریح بودن کاهش پیدا خواهد کرد.
یک مهندس پرامپت خبره با یادگیری فوت و فن ها و میانبر های هوش مصنوعی این توانایی را بدست آورده تا به بهترین نتایج در کوتاه ترین زمان ممکن دست پیدا کند به عنوان مثال ممکن است با توصیف ایده ای که در ذهن دارد و تایپ آن در prompt از Midjourney بخواهد اثر هنری و گرافیکی را برای او تولید کند، اما این قابلیت در این سیستم هوش مصنوعی وجود دارد که میتوان با استفاده از دستورات و کد های خاصی نتایج مورد انتظار خود را به نحوی که تمایل دارید شخصی سازی کنید مثلا به آن فرمان دهید تا تصویری با ابعادی خاص یا اندازه و رنگ فونت به خصوصی نمایش دهد.
این امکانات اضافه تقریبا در همه ی سیستم های هوش مصنوعی های مولد موجود می باشد و وظیفه یک مهندس پرامپت است تا طرز کار این قابلیت های ویژه و اضافه را بلد باشد.
چطور می توانم مهندسی پرامپت را یاد بگیرم؟
مهندسی پرامپت یک رشته جدید است اما خوشبختانه هیاهو اطراف آن زیاد می باشد و در یوتیوب می توانید هزاران ساعت ویدئو آموزشی در این خصوص پیدا کنید. همچنین کورس های رایگان و پولی آنلاین بسیار با کیفیتی در پلتفرم های معتبر مانند udemy، Coursera موجود است که میتوانید از آنها بهره ببرید.
شرکت OpenAI سازنده هوش مصنوعی ChatGPT یک دوره آموزشی رایگان یادگیری ماشین برای مبتدیان منتشر کرده که شما را با اصول اولیه مهندسی پرامپت این شرکت آشنا میکند.
اگر به روش یادگیری با مثال علاقه دارید سایت PromptHero جای بسیار مناسبی است که میتواند در آن پرامپت های از قبل نوشته شده تکنولوژیهای معروف مانند Midjourney، Stable Diffusion، Openjouney و نتایج خروجی آنها را مشاهده کرده و نحوه نگارش پرامپت ها را فرا بگیرید. در این سایت پرامپ ها و نتایج خروجی ChatGPT نیز موجود است همچنین آنها توسط دیگران کاربران رتبه بندی شده اند و که باعصث میشود بتوانید نمونه پرامپت های اصولی و صحیح را بررسی کنید.
در وب سایت FlowGPT میتوانید سوالات پرسیده شده از ChatGPT و خروجی آن را ببینید و با طرز کار و نحوه نوشتن پرامپ آن آشنا شوید.
ابزاری مانند Pic2Prompt جایی است که میتواند عکسی را به عنوان ورودی به آن داده و پرامپت متناظرش را مشاهده کنید.
در سایت prompts.chat لیست بسیار زیادی از پرامپت های ChatGPT میتوانید پیدا کنید.
در زیر قدم ها و مراحلی که میتوانید برای تبدیل شدن به یک مهندس پرامپت طی کنید آورده شده است.
خود را با هوش مصنوعی و یادگیری ماشین آشنا کنید: درک اصول پایه هوش مصنوعی و یادگیری ماشین برای هرکسی که میخواهد مهندس پرامپ شود لازم و ضروری است. هزاران مطلب آموزشی و دوره آنلاین وجود دارد که با استفاده از آنها می توانید دانش خود را در این زمینه بالا ببرید.
درباره مدل های زبانی مطالعه کنید: از آنجایی که اصولا مهندسی پرامپت درباره تعامل با مدل های زبانی است، داشتن دانش عمیق درباره آنها امری مهم و حیاتی می باشد. درباره سیستم های هوش مصنوعی مختلف مانند BERT, GPT-3, GPT-4 و غیره مطالعه کرده و دانش خود را بالا ببرید و یاد بگیرید که آنها چگونه تربیت شده و خروجی تولید میکنند.
مدل های بزرگ زبانی را امتحان کنید: اگر به شغل مهندسی پرامپت علاقه دارید تجربه عملی یکی از بهترین راه های فراگیری این رشته میباشد. بسیاری از شرکت های هوش مصنوعی مانند OpenAi زیرساخت هایی (API) را برای ارتباط با مدل های زبانی خود فراهم آورده اند. سعی کنید با استفاده از آنها پرامپت های مختلفی بسازید و با سعی و خطا خروجی این مدل های زبانی بزرگ را تجزیه و تحلیل کرده و مورد بررسی قرار دهید
تکنیک های مختلف پرامپت را درک کنید: هنگام امتحان سیستم ها و مدل های مختلف یادگیری ماشین متوجه الگوهایی در پاسخ های تولیدی آنها خواهید شد و رفته رفته متوجه می شوید که چطور باید با آنها تعامل کنید، این روند امتحان و آزمایش آنها را ادامه داده تا به تکنیک های مختلف کار کرد آنها مسلط شوید.
مهارت های زبانی قدرتمندی در خود ایجاد کنید: یک مهندس پرامپت خوب، باید فرامین قدرتمند مدل های مختلف را به خوبی بشناسد و تفکری خلاقانه و تحلیلی از نحوه کار با سیستم های مختلف هوش مصنوعی داشته باشد.
کد نویسی را یاد بگیرید (اختیاری اما پیشنهادی): اگرچه بلد بودن کد نویسی لازمه این کار نیست اما این مهارت میتواند قابلیت های شما به عنوان یک مهندس پرامپت را بسیار بالا ببرد. یادگیری زبان برنامه نویسی پایتون که استفاده از آن در هوش مصنوعی و یادگیری ماشین بسیار رایج است می تواند کمک زیادی به ارتقا سطح مهارت شما بکند.
به روز بمانید: رشته هوش مصنوعی به سرعت در حال ارتقا و بزرگ شدن است و مدل ها و تکنیک های جدید دائما در حال ارائه و عرضه به بازار هستند. سعی کنید برای اینکه دانشتان همیشه موثر و کاربردی باشد خود را به روز نگه دارید.
تجربه کسب کنید: در نهایت بهترین راه برای اینکه در مهندسی ترامپ خبره شوید این است که تجربه کسب کرده و مدام در حال تمرین و یادگیری باشید.
تبدیل شدن به یک مهندس پرامپت بیش از اینکه یک هدف باشد بک مسیر است که باید آن را طی کنید این مسیر شامل یادگیری و تمرین پیوسته و همیشگی است. اما برای کسانی که به هوش مصنوعی و کارهای خلاقانه و تکنولوژی علاقه مند است میتواند مسیری سودمند و راهی پرمنفعت باشد.
آیا مهندسی پرامپت نیاز به کد نویسی دارد؟
سوال متداولی که درباره این رشته پرسیده میشود این است که آیا مهندسی پرامپت نیاز به کدنویسی دارد؟ جواب کوتاه این است که نه لزوما ولی میتواند مفید باشد. در اصل مهندس پرامپت باید بداند که مدل هوش مصنوعی چگونه کار میکند و بتواند طوری پرامپت را بنویسد که خروجی مد نظر به راحتی تولید شود. اگرچه نیاز به داشتن مدرک تحصیلی کامپیوتر یا یادگیری ماشین ندارید اما این شغل نیاز به داشتن دانشی کامل از دستور زبان و توانایی تفکر تحلیلی و خلاقانه دارد. همچنین مهندس پرامپت باید درک صحیحی از مدل های هوش مصنوعی که میخواهد با آنها کار کند داشته باشد. آشنایی با زبان های برنامه نویسی در این رشته می تواند مفید باشد مخصوصا در انجام کارهایی تخصصی و پیشرفته کمک شایانی به مهندس پرامپت خواهد کرد. به طور مثال هنگامی که با مدل های زبانی مانند GPT-4 کار میکنید اقلب اوقات ارتباط شما با استفاده از API ها خواهد بود که داشتن دانش کد نویسی لازمه برقراری این ارتباط میباشد. به علاوه اگر بخواهید پراپت های پیچیده و فنی که نیاز به تعامل با هوش مصنوعی و گفت و گو محور هستند و نیاز به واکنش و پرسش و پاسخ متوالی با هوش مصنوعی دارند داشتن سابقه و دانش در زمینه فناوری لازم و حیاتی میباشد.اگر تمایل دارید با استفاده از تکنیک یادگیری تقویتی (Reinforcement Learning) یک مدل هوش مصنوعی را برای پاسخ بهتر به نوع خاصی از وظایف یا کارهای پیچیده تر ارتقا بخشید نیاز به دانش کد نویسی و درک عمیق تری از اصول یادگیری ماشین دارد.
در پایان در حالی که میتوانید مهندسی پرامپت را بدون داشتن دانش کد نویسی شروع کنید اما داشتن مهارت برنامه نویسی می تواند موقعیت ها و فرصت های شغلی بهتری برایتان فراهم آورد و سطح شما را در مقابل رقبا بهبود بخشد.به راحتی میتواند با استفاده از هزاران ابزار و دوره های آموزشی رایگان برنامه نویسی این مهارت را فرا بگیرید.
چطور با مهندسی پرامپت کسب درآمد کنم؟
همانطور که هوش مصنوعی به بخش بزرگی از زندگی ما تبدیل می شود رشته مهندسی پرامپت نیز اهمیت بیشتری پیدا کرده و شغل پر درآمد تری خواهد شد؟ اما سوالی که ممکن است در ذهنتان نقش ببند این است که چطور با مهندسی پرامپت پول در بیاورم؟
در زیر راههایی که به وسیله آنها می توانید از این رشته کسب درآمد کنید آورده شده است.
کار تمام وقت: از آنجایی که مدل های زبانی هوش مصنوعی هر روز بیشتر و بیشتر بخشی از کسب و کارها می شوند بسیاری از شرکت های در حال استخدام مهندسی پرامپت تمام وقت هستند. این فرصت های شغلی در طیف وسیعی از کسب و کارها مهیا می باشد از شرکت های تکنولوژی گرفته تا استارت آپ ها و صنایعی که در حال بهره گیری از هوش مصنوعی در کارهای خود هستند. در آگهی های استخدام مربوط به هوش مصنوعی، یادگیری ماشین و دانشمند داده می توانید این فرصت های شغلی را مشاهده کنید
آزادکاری: اگر به دنبال کاری منعطف با ساعات کاری شناور هستند مهندس پرامپت آزاد کار می تواند گزینه خوبی برای شما باشد. بسیاری از کمپنی های نیاز به افراد فعال در زمینه هوش مصنوعی دارند اما منابع مالی استخدام تمام وقت افراد را ندارند شما میتوانید خدمات آزادکاری یا فریلنسینگ خود را در پلتفرم های مربوطه تبلیغ کرده یا وب سایت معرفی شخصی برای خود تهیه کنید.
مشاوره: اگر شهرت و تجربه شما به عنوان یک مهندس پرامپت افزایش بیاید میتوانید خدمات و سواد خود را به صورت مشاوره به شرکت های پیشنهاد دهید. بسیاری از شرکت های در حال بررسی و مد نظر قرار دادن استفاده از قابلیت های هوش مصنوعی در کسب و کار خود هستند و به دنبال افراد متخصص در این زمینه برای هدایت و پاسخ به پرسشها و چالش های خود میگیرند.
تعلیم و تربیت: به عنوان یک رشته رو به رشد تقاضای زیادی برای آموزش و تربیت مهندس پرامپت به وجود آمده است میتوانید دوره های آموزشی آنلاین تهیه کنید یا به صورت مربی شخصی فعالیت نماید و یا حتی کتابی در این زمینه بنویسید.
تولید محتوا با هوش مصنوعی: یک مهندس پرامپت میتواند با مهارت هی که دارد از طریق تولید محتوا با کمک هوش مصنوعی کسب درآمد نماید.
ساخت و عرضه ابزارهای هوش مصنوعی: اگر دانش و مهارت برنامه نویسی و تکنولوژی دارید می توانید ابزارهایی با استفاده از پرامپت ها توسعه داده و آنها را به کسب و کار ها یا افراد بفروشید.
مثال های مهندسی پرامپت:
تنوع زیادی در پرامپت های که یک نفر می تواند برای تولید متن، تصویر و کد بنویسد وجود دارد. در زیر چند مثال از هر نوعی از پرامپت های آورده شده است.
متن با استفاده از Chat GPT
- چه تفاوت هایی بین هوش مصنوعی مولد و هوش مصنوعی معمولی وجود دارد؟
- یک مقاله ی ۱۰۰۰ کلمه ای درباره محصول X با پنج ادبیات مختلف بنویس
- خلاصه ای از کتاب X در ۵۰۰ واژه آماده کن
کد کامپیوتری با استفاده از CodeX و ChatGPT
- در قطعه کد زیر خطاها را پیدا کن.
- تابعی بنویس که اعداد اول کوچکتر از یک میلیون را پیدا کند.
- ادامه قطعه کد زیر را بنویس
تصویر با استفاده از Stable Diffusion, Dall-E 2 و Midjourney
an iranian sitting in persian carpet in jungle
Towering robot statue in a desolate wasteland, with dust storms and abandoned vehicles in the distance, mechanical, dystopian, high detail, post-apocalyptic landscape