مستر پرامپت (Master Prompt) یک قالب قابلبازاستفاده در سطح کاربر است که بارها با system prompt اشتباه گرفته میشود، درحالیکه این دو در سطح دسترسی و چرخهی حیات کاملاً متفاوتاند. روش ساخت آن از صفر نیست؛ ابتدا خروجی مطلوب را دستی مینویسید، سپس پرامپتی طراحی میکنید که دقیقاً همان را تولید کند. به این رویکرد در عمل پرامپتنویسی معکوس (reverse prompting) میگویند.
مهندسی پرامپت چیست و چه فرقی با نوشتن دستور ساده دارد؟#
مهندسی پرامپت (Prompt Engineering) فرآیند طراحی ساختارمند ورودیها برای مدل زبانی بزرگ (LLM) است تا خروجی قابلتکرار و قابلاتکا تولید کند. تفاوت بنیادینش با نوشتن دستور ساده در این است که دستور یکبار مصرف است و دور ریخته میشود، اما مهندسی پرامپت یک الگوی پارامتردار میسازد که با ورودیهای متنوع هم کار میکند.
تعریف عملی — مهندسی پرامپت بهعنوان طراحی سیستم ورودی#
مهندسی پرامپت یعنی طراحی یک سیستم ورودی که در تکرارهای متعدد، خروجی پایداری تولید کند. این تعریف با «ترفند نوشتن» فاصلهی معناداری دارد. ترفند ممکن است یکبار جواب بدهد، اما سیستم ورودی باید با ورودیهای متنوع، مدلهای مختلف، و شرایط مرزی هم کار کند. اگر پرامپت شما فقط روی یک ورودی خاص جواب میدهد، ترفند نوشتهاید نه سیستم.
تفاوت بنیادین: دستور ساده = یکبار مصرف؛ مهندسی پرامپت = الگوی قابلتکرار با پارامترهای متغیر#
دستور ساده یک جمله است که برای یک وظیفهی مشخص نوشته شده و بعد دور ریخته میشود. مهندسی پرامپت یک الگو با متغیرهای مشخصشده است. «برای محصول X متن تبلیغاتی بنویس» دستور ساده است؛ اما قالبی که بخشهای نقش، زمینه، وظیفه، فرمت و محدودیت دارد و فقط نام محصول در آن جایگزین میشود، مهندسی پرامپت است.
چرا این تمایز مهم است؟ هزینهی پنهان بازنویسی تکراری#
هر بار که مدل خروجی اشتباه میدهد و شما پرامپت را از نو مینویسید، هزینهی پنهان بازنویسی تکراری فعال میشود. در تیمهایی که روزانه دهها وظیفهی پرامپتمحور دارند، این هزینه بهمرور سنگین میشود. مستر پرامپت این هزینه را یکبار در ابتدا میگیرد و در ادامه حذفش میکند.
گزارش فنی GPT-4 (مارس 2023، OpenAI) نشان داد توانایی پیروی از دستورالعملهای ساختارمند نسبت به GPT-3.5 بهبود یافت. این یعنی ساختاردهی پرامپت از یک ترفند به یک الزام فنی تبدیل شده است. هرچه مدل توانایی بهتری در پیروی از ساختار دارد، ارزش طراحی ساختارمند ورودی بیشتر میشود.
مستر پرامپت چیست و چرا با system prompt یکی نیست؟#
مستر پرامپت (Master Prompt) یک قالب قابلاستفادهی مجدد در سطح کاربر است که بخشهای ثابت و متغیرهای جایگزینشدنی دارد؛ system prompt اما در سطح اپلیکیشن و API تعریف میشود و کاربر نهایی به آن دسترسی ندارد. این دو در سطح دسترسی، هدف، و چرخهی حیات کاملاً متفاوتاند و اشتباهگرفتنشان هزینهی واقعی دارد.
تعریف مستر پرامپت و جایگاهش در زنجیرهی کار با LLM#
مستر پرامپت در لایهی کاربری قرار دارد. یعنی کسی که با چتبات یا رابط کاربری کار میکند، آن را مینویسد، ویرایش و نسخهبندی میکند. در زنجیرهی ورودی به مدل، مستر پرامپت معمولاً در پیام کاربر (user message) یا بهعنوان پیشوند پیام قرار میگیرد. نکتهی ظریف: مستر پرامپت مستقل از مدل است؛ یعنی اگر فردا مدل عوض شود، قالب شما بدون تغییر کار میکند.
تفاوت عملی مستر پرامپت و system prompt: سطح دسترسی، هدف، و چرخهی حیات#
system prompt در سطح اپلیکیشن یا API تنظیم میشود. توسعهدهنده آن را مینویسد و کاربر نهایی نمیتواند تغییرش دهد. هدفش تنظیم رفتار کلی مدل است. مستر پرامپت اما در سطح کاربر تعریف میشود، هدفش اجرای یک وظیفهی مشخص است، و چرخهی حیاتش شامل تست، بهینهسازی و نسخهبندی توسط خود کاربر است.
چرا اکثر مقالات فارسی این دو را یکی میگیرند و چه هزینهای دارد؟#
اکثر منابع فارسی این دو مفهوم را یکی میگیرند چون در چتباتهای سادهی مبتنی بر رابط کاربری، مرز بین پیام سیستم و پیام کاربر شفاف نیست. هزینهی این اشتباه جدی است: تیمهایی که مستر پرامپت را در سطح API تنظیم میکنند، در انتقال بین مدلها (مثلاً از GPT-4 به Claude) دچار شکست میشوند چون قالب مستقل کاربری ندارند و فقط به تنظیمات مدل وابستهاند.
مشاهدهی میدانی از پروژههای اعضای کامیونیتی اسکول این الگو را تأیید میکند: تیمهایی که مستر پرامپت را با system prompt اشتباه گرفتند، در انتقال بین مدلها به مشکل خوردند. آنها system prompt را در سطح API تنظیم کرده بودند و قالب مستقل کاربری نداشتند.
مستر پرامپت در برابر few-shot prompting سنتی: چه زمانی قالب ثابت بهتر از چند نمونه است؟#
few-shot prompting (پرامپتنویسی با چند نمونه) فقط چند جفت ورودی-خروجی به پرامپت اضافه میکند. مستر پرامپت یک ساختار کامل با نقش، زمینه، وظیفه، فرمت و محدودیت است که ممکن است few-shot هم داشته باشد، ولی فراتر از آن عمل میکند. وقتی وظیفه فقط «الگوگیری از سبک» است، few-shot کافی است. وقتی به کنترل ساختار خروجی، محدودیتهای ایمنی، و پارامترهای متغیر نیاز دارید، مستر پرامپت لازم است. مرز این دو را اکثر منابع فارسی مشخص نمیکنند.
اجزای ساختاری یک مستر پرامپت مؤثر#
اجزای ساختاری یک مستر پرامپت مؤثر پنج لایهاند: نقش (role)، زمینه (context)، وظیفه (task)، فرمت خروجی (output format)، و محدودیتها (constraints). هر لایه باید با جداکنندههای ساختاری (delimiters) از هم تمیز شود؛ بدون این جداسازی، مدل مرز بخشها را حدس میزند و تفسیر نادرست بالا میرود.
نقش و زمینه — چرا role prompting بدون context بیاثر است#
نقش (role) به مدل میگوید «تو کی هستی». زمینه (context) به مدل میگوید «در چه شرایطی کار میکنی». نقش بدون زمینه، مدل را در فضای انتزاعی رها میکند. «تو یک نویسندهی حرفهای هستی» بدون ذکر مخاطب، لحن، و هدف، خروجی نامشخصی تولید میکند. زمینه باید شامل مخاطب، هدف، و محدودیتهای محیطی باشد. این دو لایه بدون هم ارزشی ندارند.
وظیفه و فرمت خروجی — دقیقترین بخش که بیشترین تأثیر را دارد#
وظیفه (task) باید یک فعل مشخص با یک شیء مشخص باشد: «خلاصهی این مقاله را در 3 پاراگراف بنویس». فرمت خروجی (output format) دقیقاً مشخص کند خروجی چه شکلی داشته باشد: تعداد کلمات، ساختار سرتیتر، استفاده از لیست یا پاراگراف، زبان. این دو لایه بیشترین تأثیر را بر کیفیت خروجی دارند — و دقیقاً همانجاییاند که اکثر کاربران فارسیزبان کم میگذارند.
محدودیتها و delimiters — کاهش نرخ تفسیر نادرست مدل#
محدودیتها (constraints) خط قرمزهای خروجی را مشخص میکنند: «از اصطلاحات فنی استفاده نکن»، «حداکثر 200 کلمه»، «ادعای آماری بدون منبع ننویس». delimiters (جداکنندههای ساختاری) مرز بین بخشها را برای مدل شفاف میکنند. مستندات Anthropic توصیه میکند پرامپتهای XML-tagged (تگهای ساختاری مثل <task> و <context>) در مدلهای Claude عملکرد بهتری نسبت به پرامپتهای بدون ساختار دارند.
تکنیکهای تکمیلی: chain-of-thought (CoT) و few-shot — چه زمانی اضافه شوند؟#
chain-of-thought (CoT، زنجیرهی فکر) تکنیکی است که مدل را وادار میکند مراحل استدلال را گامبهگام بنویسد. پژوهش Wei et al. (NeurIPS 2022) نشان داد افزودن نمونههای استدلال گامبهگام، دقت مدلها را در وظایف ریاضی و منطقی چندپلهای افزایش میدهد. این تکنیک را فقط روی وظایف استدلالی اضافه کنید، نه روی وظایف سادهی تولید متنی.
نمونهی ساختار 5 لایهای با delimiters XML:
<role>
تو یک ویراستار حرفهای محتوای فارسی هستی.
</role>
<context>
مخاطب: مدیران بازاریابی که با هوش مصنوعی آشنایی مقدماتی دارند.
هدف: سادهسازی متن فنی بدون از دست دادن دقت.
</context>
<task>
متن زیر را بازنویسی کن:
{{input_text}}
</task>
<output_format>
- حداکثر 150 کلمه
- پاراگرافهای کوتاه
- بدون اصطلاح فنی بدون توضیح
</output_format>
<constraints>
- ادعای آماری بدون منبع ننویس
- لحن محاورهای ولی حرفهای
- از «در دنیای امروز» و کلیشههای مشابه پرهیز کن
</constraints>| لایه | کارکرد | اشتباه رایج | مثال صحیح |
|---|---|---|---|
| نقش (role) | تعریف هویت و تخصص مدل | نقش کلی بدون جزئیات | «ویراستار محتوای فارسی با تخصص حوزهی تکنولوژی» |
| زمینه (context) | شرایط محیطی و مخاطب | حذف کامل یا نوشتن نقش بهجای زمینه | «مخاطب: مدیران بازاریابی، لحن: محاورهای حرفهای» |
| وظیفه (task) | فعل مشخص با شیء مشخص | چند وظیفه در یک جمله | «متن زیر را در حداکثر 150 کلمه بازنویسی کن» |
| فرمت خروجی | شکل دقیق پاسخ | نگفتن فرمت و امید به حدس مدل | «پاراگرافهای کوتاه، بدون لیست، حداکثر 3 پاراگراف» |
| محدودیتها | خط قرمزهای ایمنی و کیفیت | محدودیتهای کلی و مبهم | «ادعای آماری بدون منبع ننویس» |
گامبهگام ساخت مستر پرامپت با روش پرامپتنویسی معکوس#
پرامپتنویسی معکوس (reverse prompting) روشی است که در آن بهجای نوشتن پرامپت از صفر، ابتدا خروجی مطلوب را دستی مینویسید، سپس پرامپتی طراحی میکنید که دقیقاً همان خروجی را تولید کند. این روش در پروژههای واقعی تولید محتوای فارسی بارها تکرار شده و هزینهی آزمونوخطای کور را بهشدت کاهش میدهد.

گام ۱ — تعریف وظیفه و جمعآوری نمونههای خروجی مطلوب#
قبل از نوشتن پرامپت، 3 تا 5 نمونه خروجی ایدهآل بنویسید. این نمونهها میتوانند دستی باشند یا از خروجیهای قبلی مدل انتخاب شوند. معیار انتخاب: خروجیهایی که دقیقاً چیزی هستند که میخواهید. اگر نمیتوانید خروجی مطلوب را بنویسید، یعنی هنوز وظیفه را شفاف تعریف نکردهاید.
گام ۲ — ساختاردهی پرامپت حول ۵ لایهی اجزای مستر پرامپت#
با نگاه به نمونههای خروجی، بپرسید: «مدل باید چه چیزی بداند تا این خروجی را تولید کند؟» نقش، زمینه، وظیفه، فرمت، و محدودیت را از دل خروجی مطلوب استخراج کنید، نه از ذهن خودتان. این تفاوت ظریف اما تعیینکننده است.
گام ۳ — تعریف متغیرهای جایگزینشدنی (placeholders)#
بخشهایی که در هر اجرا متفاوتاند را با {{placeholder}} مشخص کنید. مثلاً {{input_text}}، {{target_audience}}، {{word_limit}}. این کار مستر پرامپت را از یک پرامپت ثابت به یک قالب قابلاستفادهی مجدد تبدیل میکند.
گام ۴ — تست تکراری با قاعدهی یک متغیر در هر تکرار#
حداقل 10 ورودی متنوع برای تست آماده کنید. در هر تکرار فقط یک بخش پرامپت را تغییر دهید. اگر همزمان نقش و فرمت را عوض کنید، نمیدانید کدام باعث بهبود یا افت شده است. این قاعدهی یک متغیر در هر تکرار از روششناسی علمی وام گرفته شده و در تست پرامپت هم کار میکند.
گام ۵ — مستندسازی و نسخهبندی مستر پرامپت#
هر نسخهی پرامپت را با تاریخ، مدل هدف، و نتیجهی تست مستند کنید. بدون نسخهبندی، بعد از چند هفته نمیدانید کدام تغییر مؤثر بوده و کدام نه. مستندسازی خستهکننده است، اما بدون آن هر تیمی در یک نقطه از پروژه پرامپتهایش را گم میکند.
پرامپتهای چندمرحلهای: بهترین ساختار برای وظایف پیچیده#
وقتی وظیفه بهصورت تکمرحلهای قابلحل نیست، آن را به چند پرامپت متوالی بشکنید. هر پرامپت یک خروجی میانی تولید میکند که ورودی پرامپت بعدی است. این روش در وظایف مثل «تحلیل → ساختاردهی → بازنویسی → بازبینی» مؤثرتر از یک پرامپت بزرگ است.
مشاهدهی میدانی از پروژههای اعضای کامیونیتی اسکول: الگوی پرامپتنویسی معکوس در تیمهایی که مستر پرامپت تولید محتوای فارسی میسازند، بارها تکرار شده ولی در مقالات فارسی تقریباً ذکر نشده است.
قالب مستر پرامپت قابلکپی برای تولید محتوای فارسی:
<role>
تو یک نویسندهی محتوای فارسی هستی که در حوزهی {{domain}} تخصص دارد.
</role>
<context>
مخاطب: {{target_audience}}
سطح دانش مخاطب: {{knowledge_level}}
هدف محتوا: {{content_goal}}
</context>
<task>
برای موضوع «{{topic}}» یک محتوای {{content_type}} بنویس.
</task>
<output_format>
- طول: {{word_limit}} کلمه
- ساختار: {{structure}}
- لحن: {{tone}}
- نیمفاصلهی صحیح رعایت شود
- اعداد با رقم لاتین
</output_format>
<constraints>
- از «در دنیای امروز» و کلیشههای مشابه استفاده نکن
- ادعای آماری بدون منبع ننویس
- جملات زیر 20 کلمه
- پاراگرافهای 2 تا 4 خطی
</constraints>- خروجی مطلوب را 3 تا 5 نمونه بنویسید (دستی یا از خروجیهای قبلی مدل)
- از دل خروجی، 5 لایهی پرامپت را استخراج کنید
- متغیرهای جایگزینشدنی را با {{placeholder}} مشخص کنید
- حداقل 10 ورودی متنوع برای تست آماده کنید
- در هر تکرار فقط یک بخش پرامپت را تغییر دهید
- نتایج را با تاریخ و مدل هدف مستند کنید
- نسخهی پایدار را بهعنوان قالب مرجع ذخیره کنید
مهندسی پرامپت در برابر fine-tuning و RAG: کدام را انتخاب کنم؟#
مهندسی پرامپت، fine-tuning، و RAG (Retrieval-Augmented Generation) سه روش مکمل برای کنترل خروجی مدل زبانیاند، نه جایگزین یکدیگر. انتخاب بین آنها به نوع مشکل بستگی دارد: شکل خروجی، دانش، یا رفتار ذاتی مدل.
معیار انتخاب: هزینه، زمان، و نوع مشکل#
اگر مشکل شما «شکل خروجی» است، مهندسی پرامپت کافی است. اگر مشکل «دانش» است، RAG. اگر مشکل «رفتار ذاتی مدل» است، fine-tuning. این سه، جایگزین یکدیگر نیستند بلکه مکملاند.
چه زمانی مهندسی پرامپت کافی نیست؟#
وقتی مدل به اطلاعاتی نیاز دارد که در دادههای آموزشیاش نیست (اطلاعات بهروز، دادههای داخلی سازمان)، یا وقتی سبک خروجی بهقدری خاص است که حتی با بهترین پرامپت قابلتحقق نیست. Brown et al. (2020، مقالهی GPT-3) نشان داد افزودن نمونههای few-shot بازدهی کاهشی دارد و در برخی وظایف نتیجه را بدتر میکند — این یعنی مهندسی پرامپت سقف مشخصی دارد.
ترکیب روشها — مستر پرامپت + RAG در عمل#
رایجترین ترکیب: مستر پرامپت ساختار خروجی و لحن را کنترل میکند، RAG دانش لازم را تأمین میکند. مستر پرامپت بخشی مثل {{retrieved_context}} دارد که خروجی RAG در آن جایگزین میشود. این الگو در پروژههای واقعی تولید محتوای فارسی با دادههای داخلی سازمان، بارها دیده شده است.
| روش | هزینه | زمان | کاربرد مناسب | محدودیت |
|---|---|---|---|---|
| مهندسی پرامپت | پایینترین (فقط زمان نوشتن و تست) | ساعت تا یک روز | کنترل شکل، لحن، و ساختار خروجی | سقف مشخص دارد؛ دانش جدید نمیدهد |
| RAG | متوسط (نیاز به زیرساخت بازیابی) | چند روز تا چند هفته | تأمین دانش بهروز یا اختصاصی | کیفیت خروجی به کیفیت بازیابی وابسته است |
| fine-tuning | بالا (نیاز به داده، GPU، و تخصص) | چند هفته تا چند ماه | تغییر رفتار ذاتی مدل در سطح پارامترها | انعطاف کم؛ تغییر رفتار مدلهای جدید نیازمند تکرار |
اشتباهات رایج در مهندسی پرامپت و هزینهی پنهان هرکدام#
اشتباهات رایج در مهندسی پرامپت عبارتاند از: توهم «بلندتر = بهتر»، استفادهی بیجا از chain-of-thought، نوشتن یک پرامپت بدون تست، کپی templateهای انگلیسی بدون بومیسازی فارسی، و تغییر همزمان چند متغیر در تست. هرکدام هزینهی پنهانی دارد که در نگاه اول دیده نمیشود.
توهم «بلندتر = بهتر» — پرامپتهای ساختارمند و مختصر اغلب بهتر عمل میکنند#
پرامپتهای طولانی بدون ساختار، مدل را گیج میکنند. یک پرامپت 100 کلمهای با delimiters شفاف بهتر از یک پرامپت 500 کلمهای بدون ساختار عمل میکند. معیار ساده: آیا هر جمله در پرامپت شما وظیفهی مشخصی دارد؟ اگر نه، حذفش کنید. این قاعدهی بیرحمانهای است که اکثر پرامپتنویسان مبتدی تحملش را ندارند.
سوءاستفاده از chain-of-thought — فقط روی مدلهای reasoning-capable اثر دارد#
CoT روی مدلهایی که قابلیت استدلال چندمرحلهای دارند مؤثر است. روی وظایف سادهی تولید متنی یا خلاصهسازی، CoT فقط خروجی را طولانیتر و گاهی نامحتملتر میکند. هر جا نوشتید «مرحلهبهمرحله فکر کن»، بپرسید آیا واقعاً وظیفه استدلالی است یا فقط عادت کردهاید.
کپی templateهای انگلیسی بدون بومیسازی — چالشهای خاص فارسی#
templateهای انگلیسی فرضهایی دارند که در فارسی برقرار نیست: جایگاه فعل در انتهای جمله، حروف اضافهی مختلف، جملات مجهول کمتر رایج، و نیاز به نیمفاصله. کپی مستقیم بدون بومیسازی، خروجیهای «ترجمهوار» تولید میکند. مستندات OpenAI تأیید میکند استفاده از delimiters برای جدا کردن بخشها، نرخ تفسیر نادرست مدل را کاهش میدهد.
نوشتن یک پرامپت بدون چرخهی آزمونوخطا#
یک پرامپت بدون تست، پرامپتنویسی است نه مهندسی پرامپت. مهندسی یعنی تکرار، سنجش، و اصلاح. بدون حداقل 10 ورودی تست و ثبت نتایج، شما نمیدانید پرامپتتان در شرایط مرزی چه میکند.
تغییر چند متغیر همزمان در تست#
اگر همزمان نقش، فرمت، و محدودیت را عوض کنید و خروجی بهتر شد، نمیدانید کدام تغییر مؤثر بود. این یعنی در تکرار بعدی نمیتوانید نتیجه را بازتولید کنید. قاعدهی یک متغیر در هر تکرار، اصل بنیادین تست پرامپت است.
آیا مهندسی پرامپت با مدلهای جدیدتر منقرض میشود؟#
این ادعا همزمان با هر نسل جدید مدل تکرار شده، ولی الگوی واقعی تغییر نقش است: از نوشتن پرامپت تکخطی به طراحی سیستم پرامپت (prompt system design) و مدیریت مستر پرامپتها در فریمورکهایی مثل LangChain و DSPy. مهندسی پرامپت نمیمیرد؛ سختتر و تخصصیتر میشود.
تاریخچهی ادعای انقراض — از GPT-3 تا GPT-4 تا مدلهای reasoning#
هر بار که مدل جدیدی آمد، ادعای «مهندسی پرامپت لازم نیست» تکرار شد. GPT-4 آمد، گفتند پرامپت ساده کافی است. مدلهای reasoning-capable آمدند، گفتند دیگر نیازی به CoT نیست. واقعیت: مدلهای جدیدتر، پرامپتهای ساختارمندتر را بهتر اجرا میکنند. یعنی ارزش مهندسی پرامپت نهتنها کم نشده، بلکه بیشتر شده است.
تغییر نقش: از prompt writer به prompt system designer#
نقش مهندس پرامپت از «نوشتن یک پرامپت خوب» به «طراحی سیستمی که پرامپتها را مدیریت، تست، و نسخهبندی میکند» تغییر کرده. این سیستم شامل مستر پرامپتها، لایههای RAG، و فریمورکهای ارکستراسیون است.
ابزارها و فریمورکهای مرتبط: LangChain، DSPy، و نقش آنها در مدیریت مستر پرامپت#
LangChain یک فریمورک برای ساخت زنجیرههای پرامپت (prompt chains) است. DSPy روشی برای بهینهسازی خودکار پرامپتها ارائه میدهد. هر دو، مستر پرامپت را بهعنوان یک artifact قابلمدیریت در سیستم تعریف میکنند.
آیا برای هر مدل باید مستر پرامپت جدا بنویسم؟ چالش porting بین مدلها#
نه لزوماً، اما یک مستر پرامپت بهینهشده برای GPT-4 ممکن است روی Claude یا Gemini نتیجهی متفاوتی بدهد. بهترین رویکرد: یک مستر پرامپت اصلی بنویسید، سپس با تست روی هر مدل، بخشهای آسیبپذیر (معمولاً فرمت خروجی و delimiters) را تطبیق دهید. راهنمای عملی porting بین مدلها در نتایج فارسی تقریباً وجود ندارد.
مستر پرامپت یک تصمیم معماری است، نه یک ترفند نوشتن. اگر هنوز هر بار که مدل خروجی اشتباه میدهد پرامپت را از نو مینویسید، دارید هزینهی پنهان بازنویسی تکراری را میپردازید. روش پرامپتنویسی معکوس و قاعدهی یکمتغیر در هر تکرار، این هزینه را حذف میکند.
اگر میخواهید این مهارت را در پروژههای واقعی تمرین کنید و مستر پرامپتهای قابلاتکا بسازید، دورهی آموزش جامع Claude و ابزارهای مشابه در کامیونیتی اسکول دقیقاً همین مسیر را طی میکند — بدون کدنویسی، با ایجنتها و Vibe Coding.







دیدگاهها
برای گذاشتن دیدگاه وارد شو
دیدگاهها فقط از حسابهای کاربری پذیرفته میشوند.
ورود / ثبتنامهنوز دیدگاهی ثبت نشده — اولین نفر باش.