پرامپت

از ایران پدیا
نسخهٔ تاریخ ‏۳ اکتبر ۲۰۲۶، ساعت ۲۰:۱۷ توسط Alireza k h (بحث | مشارکت‌ها) (صفحه‌ای تازه حاوی «{{جعبه اطلاعات مفهوم | نام = پرامپت | نام اصلی = Prompt | نام‌های دیگر = دستور، ورودی، فرمان متنی، راهنمای مدل | تصویر = | اندازه تصویر = | توضیح تصویر = | حوزه = هوش مصنوعی، هوش مصنوعی مولد، مدل زبانی بزرگ|م...» ایجاد کرد)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو
پرامپت
شناسنامه
نام‌های دیگردستور، ورودی، فرمان متنی، راهنمای مدل
حوزههوش مصنوعی، هوش مصنوعی مولد، مدل‌های زبانی بزرگ، پردازش زبان طبیعی، تعامل انسان و رایانه
خاستگاهعلوم رایانه، پردازش زبان طبیعی، یادگیری ماشین و تعامل انسان و رایانه
اندیشه و تاریخ
مفاهیم کلیدیدستور، زمینه، ورودی، خروجی، نقش، محدودیت، نمونه، پرامپت صفرنمونه‌ای، پرامپت چندنمونه‌ای، پرامپت سیستمی، تزریق پرامپت، پنجرهٔ زمینه
جریان‌های مرتبطهوش مصنوعی مولد، مدل زبانی بزرگ، توکن، مهندسی پرامپت، یادگیری درون‌زمینه‌ای، مدل‌های چندوجهی
تأثیرپذیرفته ازعلوم رایانه، زبان‌شناسی رایانشی، تعامل انسان و رایانه، یادگیری ماشین و پردازش زبان طبیعی
تأثیرگذار برتولید محتوا، آموزش، پژوهش، برنامه‌نویسی، طراحی، تحلیل داده، جست‌وجوی اطلاعات و تعامل انسان و ماشین
نقد و ارزیابی

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

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

در کاربرد عمومی، پرامپت ممکن است بسیار ساده باشد:

«پایتخت فرانسه چیست؟»

یا ساختاری پیچیده داشته باشد:

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

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

ریشهٔ اصطلاح

واژهٔ انگلیسی Prompt پیش از ظهور هوش مصنوعی مولد نیز در علوم رایانه کاربرد داشت. در محیط‌های رایانه‌ای، «پرامپت» می‌توانست علامت یا پیامی باشد که از کاربر درخواست ورود اطلاعات یا اجرای فرمان می‌کرد.

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

گسترش عمومی سامانه‌های هوش مصنوعی مولد در دههٔ ۲۰۲۰ باعث شد «پرامپت» و «پرامپت‌نویسی» به اصطلاحاتی رایج در تعامل انسان و هوش مصنوعی تبدیل شوند.

پرامپت چگونه عمل می‌کند؟

در یک مدل زبانی، پرامپت مستقیماً مانند دستورهای یک برنامهٔ رایانه‌ای سنتی اجرا نمی‌شود.

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

در یک نمایش ساده:

پرامپت
↓
توکن‌سازی
↓
تبدیل به نمایش عددی
↓
پردازش توسط مدل
↓
محاسبهٔ توزیع احتمال خروجی
↓
تولید توکن‌های پاسخ
↓
پاسخ نهایی

به همین دلیل، تغییر در عبارت‌بندی، زمینه، مثال‌ها یا محدودیت‌های پرامپت می‌تواند خروجی مدل را تغییر دهد.

پرامپت و توکن

پرامپت و توکن دو مفهوم متفاوت اما مرتبط‌اند.

پرامپت محتوایی است که به مدل ارائه می‌شود.

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

برای مثال، کاربر ممکن است بنویسد:

«دربارهٔ انقلاب صنعتی توضیح بده.»

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

بنابراین:

پرامپت ← مجموعه‌ای از توکن‌ها ← پردازش مدل ← مجموعه‌ای از توکن‌های خروجی ← پاسخ

اجزای یک پرامپت

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

وظیفه مشخص می‌کند مدل چه کاری باید انجام دهد.

برای مثال:

«این مقاله را خلاصه کن.»

زمینه اطلاعاتی را فراهم می‌کند که برای انجام وظیفه ضروری است.

محدودیت تعیین می‌کند مدل چه قواعدی را رعایت کند:

«خلاصه از ۵۰۰ کلمه بیشتر نباشد.»

قالب خروجی شکل پاسخ را تعیین می‌کند:

«نتیجه را در سه بخش ارائه کن.»

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

مخاطب نیز می‌تواند سطح و سبک پاسخ را مشخص کند:

«این مفهوم را برای دانش‌آموز دبیرستانی توضیح بده.»

وجود همهٔ این اجزا ضروری نیست و در بسیاری از وظایف یک دستور کوتاه کافی است.

پرامپت ساده

پرامپت ساده معمولاً شامل یک پرسش یا دستور کوتاه است.

برای مثال:

«فتوسنتز چیست؟»

یا:

«این جمله را به فارسی ترجمه کن.»

برای وظایف روشن و محدود، پرامپت ساده می‌تواند کافی باشد.

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

پرامپت ساختاریافته

در وظایف پیچیده‌تر می‌توان پرامپت را ساختاربندی کرد.

برای مثال:

هدف: خلاصه‌سازی مقاله
مخاطب: خوانندهٔ عمومی
طول: ۳۰۰ کلمه
سبک: دانشنامه‌ای
الزامات: حفظ تاریخ‌ها و نام‌های اصلی
منبع: فقط متن ارائه‌شده

چنین ساختاری ابهام را کاهش می‌دهد و معیارهای خروجی را روشن‌تر می‌کند.

پرامپت صفرنمونه‌ای

پرامپت صفرنمونه‌ای (Zero-Shot Prompting) حالتی است که کاربر وظیفه‌ای را بدون ارائهٔ نمونهٔ پاسخ از مدل درخواست می‌کند.

برای مثال:

«جملهٔ زیر را از فارسی به انگلیسی ترجمه کن.»

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

این روش برای بسیاری از وظایف ساده مناسب است.

پرامپت تک‌نمونه‌ای

در پرامپت تک‌نمونه‌ای (One-Shot Prompting) یک نمونه در اختیار مدل قرار می‌گیرد.

برای مثال:

ایران → تهران
فرانسه → پاریس
ژاپن → ؟

نمونه به مدل کمک می‌کند الگوی مورد انتظار را تشخیص دهد.

پرامپت چندنمونه‌ای

پرامپت چندنمونه‌ای (Few-Shot Prompting) شامل چند نمونه از ورودی و خروجی مطلوب است.

مدل با مشاهدهٔ نمونه‌ها می‌تواند الگوی مورد نظر را در همان زمینه دنبال کند.

این توانایی با مفهوم یادگیری درون‌زمینه‌ای (In-Context Learning) ارتباط دارد.

نمونه‌ها می‌توانند به مدل نشان دهند چه قالب، سبک یا رابطه‌ای مورد انتظار است.

یادگیری درون‌زمینه‌ای

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

برای مثال، می‌توان چند نمونهٔ طبقه‌بندی در پرامپت قرار داد و سپس از مدل خواست نمونهٔ جدیدی را بر همان اساس طبقه‌بندی کند.

این ویژگی یکی از دلایل اهمیت پرامپت در مدل‌های زبانی بزرگ است.

پرامپت سیستمی

پرامپت سیستمی (System Prompt) مجموعه‌ای از دستورهای سطح سامانه است که توسعه‌دهنده یا طراح برنامه برای هدایت رفتار مدل تعریف می‌کند.

این دستورها ممکن است نقش مدل، قواعد رفتاری، محدودیت‌ها یا نحوهٔ تعامل با کاربر را تعیین کنند.

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

کاربر ممکن است اصلاً متن این دستورها را مشاهده نکند.

پرامپت کاربر

پرامپت کاربر دستور یا محتوایی است که کاربر مستقیماً وارد سامانه می‌کند.

برای مثال:

«یک مقالهٔ دانشنامه‌ای دربارهٔ هوش مصنوعی مولد بنویس.»

این پیام در کنار سایر اطلاعات زمینه‌ای توسط سامانه پردازش می‌شود.

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

پرامپت چندوجهی

با توسعهٔ مدل‌های چندوجهی، پرامپت دیگر الزاماً متن نیست.

کاربر می‌تواند تصویری را ارسال کند و بپرسد:

«این نمودار را توضیح بده.»

یا تصویر و متن را هم‌زمان ارائه کند:

«این تصویر را با حفظ چهره بازسازی کن و پس‌زمینه را تغییر بده.»

پرامپت چندوجهی می‌تواند شامل:

  • متن؛
  • تصویر؛
  • صوت؛
  • ویدئو؛
  • فایل؛
  • داده‌های ساختاریافته؛
  • یا ترکیبی از آنها باشد.

مهندسی پرامپت

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

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

این مفهوم با گسترش مدل‌های زبانی بزرگ اهمیت یافت، زیرا عملکرد یک مدل می‌تواند تحت تأثیر نحوهٔ صورت‌بندی مسئله قرار گیرد.

مهندسی پرامپت تنها به یافتن «عبارت جادویی» محدود نیست؛ در کاربردهای حرفه‌ای، مسئله بیشتر به طراحی روشن وظیفه، تأمین دادهٔ مناسب، مشخص‌کردن معیار موفقیت و ارزیابی خروجی مربوط است.

ویژگی‌های یک پرامپت مناسب

کیفیت پرامپت به نوع وظیفه وابسته است، اما چند اصل عمومی می‌تواند مفید باشد.

پرامپت مناسب معمولاً:

  • هدف را روشن بیان می‌کند؛
  • زمینهٔ لازم را ارائه می‌دهد؛
  • محدودیت‌های مهم را مشخص می‌کند؛
  • قالب خروجی را در صورت ضرورت تعیین می‌کند؛
  • ابهام‌های غیرضروری را کاهش می‌دهد؛
  • و در صورت نیاز نمونه ارائه می‌کند.

اما جزئیات بیش از اندازه نیز می‌تواند دستور را پیچیده یا حتی متناقض کند.

تعیین نقش

یکی از روش‌های رایج در پرامپت‌نویسی تعیین نقش است.

برای مثال:

«در نقش یک ویراستار علمی، متن زیر را بررسی کن.»

یا:

«در نقش یک مدرس زبان، اشتباه‌های این متن را توضیح بده.»

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

برای نمونه، گفتن «تو یک پزشک هستی» مدل را به پزشک واقعی تبدیل نمی‌کند.

تعیین مخاطب

مشخص‌کردن مخاطب می‌تواند سطح توضیح را تغییر دهد.

برای مثال:

«نسبیت را برای یک دانش‌آموز دبیرستانی توضیح بده.»

با:

«نسبیت عام را برای دانشجوی کارشناسی ارشد فیزیک توضیح بده.»

دو درخواست متفاوت‌اند.

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

تعیین قالب خروجی

کاربر می‌تواند قالب پاسخ را در پرامپت مشخص کند.

برای مثال:

«پاسخ را به صورت ویکی‌متن مدیاویکی بنویس.»

یا:

«اطلاعات را در قالب JSON ارائه کن.»

یا:

«متن را در پنج بند و بدون جدول بنویس.»

این نوع دستور برای استفاده از خروجی در سامانه‌های دیگر اهمیت ویژه دارد.

استفاده از جداکننده‌ها

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

برای مثال:

دستور:
متن زیر را خلاصه کن.
محدودیت:
هیچ اطلاعاتی خارج از متن اضافه نکن.
متن:
---
[متن]
---

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

ارائهٔ منبع در پرامپت

یکی از کاربردهای مهم پرامپت، ارائهٔ متن یا اسناد مرجع به مدل است.

برای مثال:

«فقط بر اساس سند زیر پاسخ بده و اگر پاسخ در سند وجود ندارد، صریحاً اعلام کن.»

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

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

پرامپت و پنجرهٔ زمینه

پرامپت بخشی از پنجرهٔ زمینه (Context Window) مدل را اشغال می‌کند.

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

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

این موضوع در کار با کتاب‌ها، گزارش‌های طولانی و مجموعه‌های بزرگ اسناد اهمیت دارد.

زنجیرهٔ فکر

پرامپت زنجیرهٔ فکر (Chain-of-Thought Prompting) اصطلاحی است که در پژوهش‌های مدل‌های زبانی برای روش‌هایی به کار رفته است که نمونه‌هایی شامل مراحل میانی حل مسئله را در زمینه قرار می‌دهند.

پژوهشی که جیسون وی و همکاران در سال ۲۰۲۲ منتشر کردند نشان داد که ارائهٔ نمونه‌های دارای مراحل استدلال می‌تواند عملکرد برخی مدل‌های بزرگ را در تعدادی از وظایف حسابی، استدلال عرفی و نمادین بهبود دهد.

این روش به‌ویژه در پژوهش دربارهٔ توانایی حل مسائل چندمرحله‌ای مدل‌های زبانی مورد توجه قرار گرفت.

پرامپت و جست‌وجوی اطلاعات

پرامپت به‌تنهایی منبع اطلاعات نیست.

اگر کاربر از مدل بپرسد:

«جمعیت کنونی یک کشور چقدر است؟»

صحت پاسخ به دسترسی مدل به اطلاعات معتبر و به‌روز بستگی دارد.

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

در کاربردهای پژوهشی، تمایز میان دستور، منبع و پاسخ تولیدشده اهمیت بنیادی دارد.

پرامپت و دانشنامه‌نویسی

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

برای نمونه یک پرامپت دانشنامه‌ای می‌تواند مشخص کند:

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

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

محدودیت‌های پرامپت

پرامپت هرقدر دقیق باشد، کنترل مطلق بر خروجی مدل ایجاد نمی‌کند.

مدل ممکن است:

  • بخشی از دستور را نادرست تفسیر کند؛
  • برخی محدودیت‌ها را رعایت نکند؛
  • اطلاعات نادرست تولید کند؛
  • منبع غیرواقعی بسازد؛
  • قالب خروجی را تغییر دهد؛
  • یا میان دستورهای متعدد دچار تعارض شود.

بنابراین در کاربردهای مهم، طراحی پرامپت باید با ارزیابی و راستی‌آزمایی خروجی همراه باشد.

پرامپت و توهم هوش مصنوعی

یکی از تصورات نادرست این است که پرامپت دقیق می‌تواند پدیدهٔ توهم هوش مصنوعی را به‌طور کامل از میان ببرد.

دستورهایی مانند:

«فقط اطلاعات کاملاً صحیح بده»

ممکن است رفتار مدل را جهت دهند، اما تضمین فنی برای صحت همهٔ خروجی‌ها ایجاد نمی‌کنند.

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

تزریق پرامپت

تزریق پرامپت (Prompt Injection) یکی از مسائل امنیتی سامانه‌های مبتنی بر مدل‌های زبانی است.

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

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

متن مخرب ممکن است درون یک سند یا صفحهٔ وب قرار گرفته باشد و تلاش کند خود را به‌عنوان دستور به مدل تحمیل کند.

تزریق مستقیم و غیرمستقیم

تزریق پرامپت می‌تواند مستقیم باشد؛ یعنی کاربر مستقیماً دستور مخرب را وارد کند.

نوع دیگری از حمله تزریق غیرمستقیم است.

در این حالت، دستور مخرب ممکن است داخل محتوایی قرار گرفته باشد که سامانه بعداً آن را می‌خواند؛ مانند:

  • صفحهٔ وب؛
  • سند؛
  • پیام؛
  • فایل؛
  • یا دادهٔ دریافت‌شده از سامانه‌ای دیگر.

این مسئله یکی از تفاوت‌های امنیت سامانه‌های عامل‌محور مبتنی بر مدل زبانی با برنامه‌های گفت‌وگویی ساده است.

استخراج پرامپت

استخراج پرامپت (Prompt Extraction) حمله‌ای است که هدف آن آشکارکردن دستورهای سیستمی یا دیگر اطلاعات زمینه‌ای است که معمولاً برای کاربر پنهان‌اند.

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

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

پرامپت و امنیت

سامانه‌ای که فقط متن تولید می‌کند خطرهای متفاوتی با سامانه‌ای دارد که می‌تواند عملیات خارجی انجام دهد.

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

در چنین سامانه‌هایی، پرامپت نباید به‌تنهایی نقش کنترل دسترسی امنیتی را ایفا کند.

مجوزها، احراز هویت، محدودیت ابزارها و کنترل‌های نرم‌افزاری مستقل همچنان ضروری‌اند.

پرامپت و زبان طبیعی

یکی از اهمیت‌های تاریخی پرامپت در این است که زبان طبیعی را به رابطی برای تعامل با رایانه تبدیل کرده است.

در برنامه‌نویسی سنتی، کاربر برای کنترل دقیق رایانه اغلب باید زبان برنامه‌نویسی یا رابط مشخصی را بیاموزد.

در سامانه‌های مولد، بسیاری از وظایف را می‌توان با جمله‌هایی مانند:

«این متن را خلاصه کن.»
«برای این داده‌ها نمودار بساز.»
«این برنامه را اشکال‌زدایی کن.»

بیان کرد.

این تحول فاصلهٔ میان بیان هدف انسانی و اجرای محاسباتی را کاهش داده است.

آیا پرامپت نوعی برنامه‌نویسی است؟

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

اما تفاوت مهمی میان آنها وجود دارد.

کد برنامه‌نویسی معمولاً بر اساس قواعد رسمی و نحو تعریف‌شده اجرا می‌شود.

پرامپت زبان طبیعی معمولاً توسط مدلی احتمالاتی تفسیر می‌شود و نتیجهٔ آن می‌تواند تحت تأثیر زمینه و ویژگی‌های مدل تغییر کند.

از این رو پرامپت را نمی‌توان به‌طور کلی معادل کد رایانه‌ای دانست.

آیا مهندسی پرامپت یک تخصص مستقل است؟

با گسترش هوش مصنوعی مولد، «مهندسی پرامپت» به عنوان مهارتی تازه مورد توجه قرار گرفت.

اما توسعهٔ مدل‌ها نشان داده است که کار مؤثر با هوش مصنوعی تنها به یافتن عبارت‌های مناسب محدود نیست.

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

بنابراین مهندسی پرامپت را می‌توان بخشی از حوزهٔ گسترده‌تر طراحی تعامل و سامانه‌های مبتنی بر هوش مصنوعی دانست.

پرامپت در تولید تصویر

در مدل‌های تولید تصویر، پرامپت معمولاً صحنه یا ویژگی‌های تصویر مطلوب را توصیف می‌کند.

برای مثال، کاربر می‌تواند دربارهٔ:

  • سوژه؛
  • محیط؛
  • ترکیب‌بندی؛
  • نور؛
  • زاویهٔ دید؛
  • بافت؛
  • دورهٔ تاریخی؛
  • و نسبت تصویر

اطلاعات ارائه کند.

مدل این اطلاعات را برای هدایت فرایند تولید تصویر به کار می‌گیرد.

پرامپت در تولید ویدئو

مدل‌های مولد ویدئو نیز می‌توانند دستورهای متنی یا تصویری دریافت کنند.

پرامپت ممکن است حرکت دوربین، رفتار سوژه، محیط، نور، مدت صحنه و سبک بصری را توصیف کند.

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

پرامپت در برنامه‌نویسی

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

برای مثال:

«تابعی در پایتون بنویس که یک فایل CSV را بخواند، ردیف‌های تکراری را حذف کند و نتیجه را در فایل جدید ذخیره کند.»

مدل می‌تواند بر اساس این مشخصات کد تولید کند.

با این حال کد تولیدشده باید آزمایش و از نظر امنیتی بررسی شود.

پرامپت در پژوهش

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

اما پرامپت نباید جایگزین روش علمی شود.

برای مثال درخواست:

«ده منبع علمی معتبر دربارهٔ موضوع X معرفی کن»

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

در پژوهش، اعتبار منبع باید مستقل از روانی پاسخ مدل بررسی شود.

پرامپت و سوگیری

نحوهٔ طرح پرسش می‌تواند بر پاسخ مدل اثر بگذارد.

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

برای مثال تفاوت وجود دارد میان:

«چرا سیاست X شکست خورد؟»

و:

«شواهد موافق و مخالف دربارهٔ نتایج سیاست X چیست؟»

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

این مسئله در پژوهش تاریخی، سیاسی و اجتماعی اهمیت ویژه دارد.

پرامپت و راستی‌آزمایی

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

برای مثال:

«برای هر ادعای تاریخی منبع ارائه کن و اگر منبع قابل اعتماد پیدا نکردی، آن ادعا را قطعی بیان نکن.»

چنین دستوری می‌تواند رفتار مطلوب را روشن‌تر کند.

اما باز هم منبع ارائه‌شده باید بررسی شود؛ زیرا مدل ممکن است ارجاع نادرست تولید کند.

پرامپت و تکرار

پرامپت‌نویسی اغلب فرایندی تکرارشونده است.

کاربر ممکن است ابتدا درخواست اولیه‌ای ارائه کند، نتیجه را ارزیابی کند و سپس دستور را اصلاح کند.

فرایند می‌تواند چنین باشد:

درخواست اولیه
↓
پاسخ
↓
ارزیابی
↓
اصلاح پرامپت
↓
پاسخ جدید
↓
ارزیابی مجدد

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

پرامپت و عاملیت انسانی

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

اما مدل ممکن است پاسخ‌هایی ارائه کند که کاربر پیش‌بینی نکرده باشد.

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

این موضوع به‌ویژه در پزشکی، حقوق، سیاست عمومی، پژوهش و دیگر حوزه‌های حساس اهمیت دارد.

اهمیت پرامپت

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

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

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

جمع‌بندی

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

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

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

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

هم‌زمان با اتصال مدل‌های زبانی به ابزارها و داده‌های خارجی، امنیت پرامپت نیز اهمیت یافته است. تزریق پرامپت، استخراج دستورهای پنهان و ورود محتوای غیرقابل اعتماد از جمله مسائل امنیتی این حوزه‌اند.

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

جستارهای وابسته

منابع


کتاب‌شناسی

  • Brown, Tom B., et al. “Language Models are Few-Shot Learners.” Advances in Neural Information Processing Systems 33 (2020).
  • Liu, Pengfei, et al. “Pre-train, Prompt, and Predict: A Systematic Survey of Prompting Methods in Natural Language Processing.” ACM Computing Surveys 55, no. 9 (2023).
  • Reynolds, Laria, and Kyle McDonell. “Prompt Programming for Large Language Models: Beyond the Few-Shot Paradigm.” 2021.
  • Vaswani, Ashish, et al. “Attention Is All You Need.” Advances in Neural Information Processing Systems 30 (2017).
  • Wei, Jason, et al. “Chain-of-Thought Prompting Elicits Reasoning in Large Language Models.” Advances in Neural Information Processing Systems 35 (2022).