نویسنده
مهدیه سادات قاسمی
راههای ارتباطی
[آدرس ایمیل:] mahdiehghasemi79@gmail.com
مهندسی پرامپت (Prompt Engineering)
فهرست مطالب
-
اصول پایهای طراحی پرامپت (Best Practices)
-
تکنیکهای پایهای مهندسی پرامپت
-
Zero-Shot Prompting
-
Few-Shot Prompting
-
Chain-of-Thought Prompting
-
Role Prompting
-
تفسیر خروجیهای احتمالاتی مدل
-
تکنیکهای پیشرفته (Gemini API)
-
ابزارها و کتابخانهها
-
جمعبندی و نکات پایانی
-
منابع
مقدمه
مهندسی پرامپت (Prompt Engineering) به مجموعهای از تکنیکها و روشها گفته میشود که هدف آن طراحی ورودیهای دقیق و هوشمندانه برای مدلهای زبانی بزرگ (LLMs) مانند Gemini، GPT و … است تا مدل بتواند پاسخهای دقیقتر، قابلکنترلتر، ساختاریافتهتر و باکیفیتتر تولید کند.
کیفیت خروجی مدل بهشدت وابسته به کیفیت پرامپت است؛ حتی مدلهای بسیار قوی نیز با پرامپت ضعیف، خروجی ضعیف تولید میکنند.
اهداف مهندسی پرامپت
- افزایش دقت و صحت پاسخها
- کنترل لحن، سبک و سطح پاسخ
- کاهش پاسخهای اشتباه یا مبهم
- هدایت مدل در مسائل پیچیده
- استفاده بهینه از تواناییهای مدل
اصول پایهای طراحی پرامپت (Best Practices)
1. دستورالعمل شفاف و دقیق
طبق مستندات Gemini، پرامپت باید واضح، بدون ابهام و مشخص باشد.
مثال ضعیف:
این متن رو توضیح بده.
مثال قوی:
این متن را در ۳ جمله ساده و به زبان فارسی خلاصه کن.
2. مشخصکردن زمینه (Context)
هرچه زمینهی بیشتری بدهیم، مدل پاسخ دقیقتری میدهد.
مثال:
فرض کن مخاطب این متن دانشجوی کارشناسی است.
مفهوم یادگیری ماشین را توضیح بده.
3. تعیین محدودیتها (Constraints)
میتوان محدودیتهایی مثل:
- طول پاسخ
- زبان
- سطح تخصص
- فرمت خروجی
مثال:
پاسخ را در حداکثر ۵ bullet point بنویس.
4. تعیین فرمت خروجی (Output Format)
فرمت خروجی دقیقاً مشخص شود.
مثال JSON:
اطلاعات زیر را به صورت JSON برگردان:
نام، سن، شغل
تکنیکهای پایهای مهندسی پرامپت
🔹 Zero-Shot Prompting
بدون ارائه مثال، مستقیماً از مدل سؤال میپرسیم.
مثال:
هوش مصنوعی را تعریف کن.
سریع و ساده
دقت کمتر در مسائل پیچیده
Few-Shot Prompting
ارائه چند نمونه برای آموزش الگو به مدل.
مثال:
متن: امروز خیلی خوشحال هستم.
احساس: مثبت
متن: این روزها استرس زیادی دارم.
احساس: منفی
متن: پروژه جدید چالشبرانگیز است.
احساس:
افزایش دقت
کنترل سبک پاسخ
Chain-of-Thought Prompting
هدایت مدل برای تفکر مرحلهبهمرحله.
مثال:
مرحلهبهمرحله فکر کن:
1. تحلیل مسئله
2. استدلال
3. پاسخ نهایی
Role Prompting
تعریف نقش مشخص برای مدل.
مثال:
تو یک تحلیلگر داده با ۱۰ سال تجربه هستی.
این دادهها را تفسیر کن.
✔ لحن تخصصی
✔ پاسخ هدفمندتر
2.1 تفسیر خروجیهای احتمالاتی مدل
مثال خروجی اولیه:
[("fence", 0.77), ("ledge", 0.12), ("blanket", 0.03), ...]
توضیح: این کد اجرایی نیست، بلکه یک ساختار داده (Data Structure) است که معمولاً بهعنوان خروجی مدلهای یادگیری ماشین یا چندوجهی استفاده میشود.
هر تاپل = (label, confidence_score) label → کلاس یا برچسب پیشبینیشده confidence_score → میزان اطمینان یا احتمال مدل
کاربرد در: Image Classification Object Recognition Text Classification Entity Detection
نقش مهندسی پرامپت: تعیین کنید مدل چنین خروجیای بدهد یا آن را خلاصه، فیلتر و تفسیر کند
مثالهای کنترلشده:
1️- انتخاب برچسب نهایی
پرامپت:
بر اساس لیست احتمالها، فقط برچسب با بیشترین احتمال را انتخاب کن و دلیل کوتاه بنویس.
خروجی:
Fence (0.77) – بیشترین احتمال را دارد و از سایر گزینهها فاصله معناداری دارد.
2️-اعمال آستانه (Threshold)
پرامپت:
فقط کلاسهایی را برگردان که احتمال آنها بیشتر از 0.2 است.
خروجی:
[("fence", 0.77)]
3- تبدیل به فرمت نهایی (JSON)
پرامپت:
خروجی را به صورت JSON با فیلدهای label و confidence برگردان.
خروجی:
{
"label": "fence",
"confidence": 0.77
}
این دقیقاً یکی از توصیههای رسمی Gemini است: فرمت خروجی را صریح مشخص کن.
تکنیکهای پیشرفته (Gemini API)
Prompt Decomposition
تقسیم مسئله پیچیده به مراحل ساده:
- استخراج اطلاعات
- تحلیل
- تولید نتیجه نهایی
کنترل پارامترهای مدل
temperature: میزان خلاقیتmax_output_tokens: طول پاسخtopK / topP: نحوه انتخاب خروجی
دمای پایین → پاسخ دقیقتر، دمای بالا → پاسخ خلاقانهتر
ابزارها و کتابخانهها
LangChain
مدیریت و زنجیرهسازی پرامپتها ساخت Agent و Chatbot اتصال به API و دیتابیس
LlamaIndex
ایندکسکردن دادهها پرسش از اسناد (PDF، دیتابیس) پیادهسازی RAG
PromptLayer
نسخهبندی پرامپتها تحلیل کیفیت خروجی مقایسه پرامپتها در زمان
تحلیل Prompt Template پیشرفته Gemini
این قالب برای کنترل رفتار، استدلال، ساختار پاسخ و کیفیت خروجی طراحی شده و معمولاً در پروژههای حرفهای، تحقیقاتی یا سازمانی استفاده میشود.
2.1 این متن «کد» نیست، چیست؟
کد برنامهنویسی نیست دستور اجرایی سیستم نیست یک پرامپت ساختاریافته (Structured Prompt) است
یعنی شما به مدل میگویید چطور فکر کند، چطور پاسخ بدهد و خروجی را در چه قالبی تحویل دهد.
2.2 بخشبهبخش قالب
<role>
You are Gemini 3, a specialized assistant for [Domain].
You are precise, analytical, and persistent.
Role Prompting
<instructions>
1. Plan
2. Execute
3. Validate
4. Format
Chain-of-Thought + Structured Reasoning
<constraints>
Verbosity
Tone
کنترل سبک پاسخ
<output_format>
1. Executive Summary
2. Detailed Response
کنترل فرمت خروجی
<context>
The model knows this is data, not instructions
جلوگیری از سوءبرداشت و اختلاط داده و دستور
<task>
[Insert the specific user request here]
همان وظیفه واقعی که کاربر میخواهد
کاربرد این قالب
- پروژههای تحقیقاتی
- سیستمهای سازمانی
- Agentها
- سیستمهای تصمیمیار
- تحلیلهای حساس (مالی، پزشکی، داده)
ارتباط قالب با مهندسی پرامپت
| بخش | تکنیک |
|---|---|
| Role | Role Prompting |
| Instructions | Chain-of-Thought |
| Constraints | Output Control |
| Output Format | Structured Output |
| Context | Context Isolation |