GPT-5، آخرین نسل مدلهای OpenAI، با قابلیتهای جدید و پیشرفتهاش، تحولی در تجربه کاربری و عملکرد مدلهای زبانی ایجاد کرده است. اما برای استفاده بهینه از GPT-5، نیاز به رویکرد متفاوتی نسبت به مدلهای قبلی داریم. در این پست، سعی داریم به شما نشان دهیم چگونه با طراحی پرامپتهای دقیق و مدیریت پارامترهای مدل، خروجیهای بهتر و کارآمدتر دریافت کنید.
GPT-5 و ویژگیهای منحصر به فرد آن
GPT-5، همانند GPT-4.1، بسیار قابل هدایت (steerable) است و دستورات شما را با دقت دنبال میکند. تفاوت اصلی آن با مدلهای پیشین در این است که:
-
توانایی استفاده بهتر از ابزارها (tool use)
-
درک متنهای طولانی و حفظ کانتکست گسترده
-
اجرای وظایف طولانی با دقت و دقت بالاتر
برای کار با GPT-5، سه پارامتر کلیدی اهمیت بیشتری دارند:
-
reasoning_effort: میزان تلاش مدل برای تحلیل و استدلال
-
verbosity: میزان طول و جزئیات پاسخ نهایی
-
tool preambles: توضیح مرحلهای مدل قبل از اجرای ابزارها
کنترل سرعت و دقت پاسخدهی (Controlling Eagerness)
یکی از ویژگیهای بارز GPT-5 این است که بسیار قابل هدایت (steerable) است. این بدان معناست که مدل نه تنها میتواند دستورات شما را دقیقاً دنبال کند، بلکه در مواقعی که دستور مشخص یا واضح نیست، از توانایی استدلال و تصمیمگیری سطح بالا برای انتخاب بهترین مسیر استفاده میکند.
تنظیم سرعت و میزان تفکر مدل
اگر هدف شما دریافت پاسخ سریع است، میتوانید پارامتر reasoning_effort را روی minimal یا low قرار دهید. این باعث میشود مدل:
- کمتر در جزئیات غرق شود،
- سریعتر پاسخ دهد،
- همچنان پاسخهای قابل قبولی ارائه کند،
- بدون اینکه سرعت به شدت کاهش یابد.
برای اکثر کارها، تنظیم reasoning_effort روی low یا medium کافی است تا هم سرعت حفظ شود و هم دقت پاسخ مناسب باشد.
چون GPT-5 بسیار قابل هدایت است، میتوان سرعت پاسخدهی را مستقیماً از طریق پرامپت خودتان نیز کنترل کرد و مدل را راهنمایی کرد که چه میزان تحلیل انجام دهد.
نمونه پرامپت <context_gathering>
این پرامپت از OpenAI نشان میدهد چگونه میتوان جمعآوری سریع کانتکست را به مدل آموزش داد:
<context_gathering>
Goal: Get enough context fast. Parallelize discovery and stop as soon as you can act.
Method:
– Start broad, then fan out to focused subqueries.
– In parallel, launch varied queries; read top hits per query. Deduplicate paths and cache; don’t repeat queries.
– Avoid over searching for context. If needed, run targeted searches in one parallel batch.
Early stop criteria:
– You can name exact content to change.
– Top hits converge (~70%) on one area/path.
Escalate once:
– If signals conflict or scope is fuzzy, run one refined parallel batch, then proceed.
Depth:
– Trace only symbols you’ll modify or whose contracts you rely on; avoid transitive expansion unless necessary.
Loop:
– Batch search → minimal plan → complete task.
– Search again only if validation fails or new unknowns appear. Prefer acting over more searching.
</context_gathering>
توضیح بخش به بخش:
- هدف(Goal): مدل باید اطلاعات کافی را سریع جمعآوری کند و به محض آماده بودن برای اقدام، متوقف شود.
- روشها (Method):
- ابتدا جستجوی کلی انجام شود و سپس روی بخشهای مشخص تمرکز شود.
- جستجوها میتوانند همزمان اجرا شوند تا زمان کاهش یابد.
- مسیرهای تکراری حذف شوند و دادهها کش شوند.
- از جستجوی بیش از حد اجتناب شود و در صورت نیاز، فقط یک batch هدفمند اجرا شود.
- زمان توقف اولیه(Early stop criteria):
- وقتی بخش مورد نظر مشخص شد، میتوان متوقف شد.
- اگر حدود ۷۰٪ نتایج به یک مسیر همگرایی داشت، توقف کنید.
- افزایش مرحلهای(Escalate once):
- اگر نتایج متناقض بود یا هدف نامشخص، یک batch اصلاحشده اجرا شود.
- عمق بررسی (Depth):
- فقط روی بخشهایی که قرار است تغییر کنند یا وابسته هستند تمرکز شود.
- حلقه کاری (Loop):
- جستجو → برنامه کوچک → انجام کار.
- دوباره جستجو فقط در صورت شکست اعتبارسنجی یا ظاهر شدن دادههای جدید.
- اصل بر عمل کردن بهتر از جستجوی بیپایان است.
نسخه سبکتر برای پاسخ سریع
اگر میخواهید پاسخ سریع با کمترین استدلال دریافت کنید، میتوانید پرامپت را به شکل زیر ساده کنید:
<context_gathering>
– Keep search depth minimal.
– Prioritize delivering a likely correct answer as quickly as possible, even if it may not be fully verified.
– Limit to at most 2 tool calls in total.
– If deeper investigation is needed, pause to update the user with current findings and open questions, and continue only if they approve.
</context_gathering>
کاربرد این نسخه:
- جستجوهای کم عمق انجام شود.
- پاسخ سریع اولویت دارد، حتی اگر کاملاً تایید نشده باشد.
- حداکثر دو فراخوانی ابزار مجاز است.
- در صورت نیاز به تحقیق بیشتر، ابتدا کاربر با یافتهها و سوالات باز مطلع شود و سپس ادامه دهید.
💡 نکته مهم: این رویکرد برای پروژههای Agentic بسیار کاربردی است؛ جایی که مدل هم میتواند تصمیم بگیرد چه میزان اطلاعات جمعآوری کند و هم سرعت پاسخدهی برای شما اهمیت دارد.
مدیریت عدم قطعیت و استمرار عملکرد (Uncertainty & Persistence)
OpenAI در راهنمای پرامپتنویسی خود توصیه میکند که هنگام محدود کردن رفتار جمعآوری کانتکست اصلی (core context gathering)، بهتر است یک مسیر فرار (escape hatch) برای مدل فراهم کنید.
مسیر فرار چیست و چرا مهم است؟
مسیر فرار، عبارتی در پرامپت است که به مدل اجازه میدهد حتی در صورت عدم اطمینان کامل، به کار خود ادامه دهد.
- نمونه مسیر فرار: عبارت “even if it might not be fully correct” در مثالهای قبلی.
- این مسیر کمک میکند تا مدل توقف طولانی نداشته باشد و پاسخهای موقتی ارائه دهد.
- با این حال، استفاده مستقیم از چنین عبارتی ممکن است پیامدهای ناخواسته داشته باشد، مثلا مدل خیلی زود پاسخ ناقص بدهد.
نمونه پرامپت استاندارد برای مدیریت عدم قطعیت
<uncertainty_policy>
If you are uncertain after X rounds of gather context, then produce a provisional recommendation ONLY.
List assumptions + unknowns. Mark output as “Provisional”.
</uncertainty_policy>
توضیح:
- اگر مدل بعد از چند مرحله جمعآوری کانتکست هنوز مطمئن نیست، فقط یک توصیه موقت ارائه دهد.
- فرضیات و موارد ناشناخته را فهرست کند.
- خروجی را با برچسب Provisional مشخص کند تا کاربر بداند این پاسخ قطعی نیست.
✅ این کار باعث میشود مدل همچنان فعال بماند ولی تصمیمگیری را بدون اطلاعات کافی کامل نکند.
افزایش عمق تفکر و استقلال مدل
اگر میخواهید GPT-5 عمیقتر فکر کند، ابزارهای بیشتری فراخوانی کند و به صورت مستقلتر عمل کند:
- reasoning_effort را روی high تنظیم کنید
- این باعث میشود مدل ظرفیت بیشتری برای برنامهریزی و بررسی گزینههای مختلف داشته باشد.
- استفاده از دستورالعملهای صریح در پرامپت
- با دستورالعمل روشن، مدل تشویق میشود گزینهها را بررسی کند، کارها را اعتبارسنجی کند و مراحل چندمرحلهای را کامل انجام دهد.
نمونه پرامپت استمرار عملکرد (Persistence)
<persistence>
– You are an agent – please keep going until the user’s query is completely resolved, before ending your turn and yielding back to the user.
– Only terminate your turn when you are sure that the problem is solved.
– Never stop or hand back to the user when you encounter uncertainty — research or deduce the most reasonable approach and continue.
– Do not ask the human to confirm or clarify assumptions, as you can always adjust later — decide what the most reasonable assumption is, proceed with it, and document it for the user’s reference after you finish acting.
</persistence>
توضیح:
- مدل باید تا حل کامل درخواست کاربر، کار خود را ادامه دهد و پیش از اطمینان از حل مشکل، پایان ندهد.
- در مواجهه با عدم قطعیت، نباید کار را نیمهتمام رها کند یا از کاربر برای تایید بخواهد.
- مدل باید بهترین فرضیات ممکن را اتخاذ کرده، عمل کند و پس از پایان، مستندات و فرضیات خود را ارائه دهد.
نکته مهم در استفاده از reasoning_effort بالا
حتی زمانی که reasoning_effort بالا تنظیم میشود، باید یک شرط توقف (stop condition) برای مدل تعیین کنید، مخصوصاً در وظایف Agentic.
- بدون شرط توقف، مدل ممکن است بیپایان فکر کند یا چرخه جمعآوری کانتکست ادامه یابد.
- بنابراین بهتر است هم مسیر فرار و هم استمرار عملکرد به وضوح در پرامپت مشخص شوند.
💡 خلاصه عملی:
- برای سرعت: مسیر فرار <uncertainty_policy> بدهید و reasoning_effort کم کنید.
- برای دقت و استقلال بیشتر: reasoning_effort بالا، و پرامپت <persistence> برای استمرار عملکرد استفاده کنید.
- همیشه شرط توقف و محدودیتها را مشخص کنید تا مدل بدون هدایت مناسب، بیپایان یا غیرمفید عمل نکند.
پیشگفتار ابزارها (Tool Preambles)
چند ماه پیش، شرکت Anthropic ویژگیای به نام Extended Thinking معرفی کرد که به مدل Claude اجازه میداد گامهای استدلال و فراخوانی ابزارها را به صورت مستقیم با کاربر به اشتراک بگذارد. این کار تجربه کاربری (UX) را بسیار بهبود داد.
OpenAI در GPT-5، ویژگی مشابهی را با نام Tool Preambles ارائه کرده است. این ویژگی به مدل اجازه میدهد قبل از اجرای هر فراخوان ابزار، توضیح دهد چه کاری انجام میدهد و چرا. این شفافیت به کاربران کمک میکند تصمیمات و روند کار مدل را بهتر مشاهده و درک کنند.
نمونه کد از Claude:
{
“content”: [
{
“type”: “thinking”,
“thinking”: “Let me analyze this step by step…”,
“signature”: “WaUjzqIOMfFG/UvLEczmEsUjavL….”
},
{
“type”: “text”,
“text”: “Based on my analysis…”
}
]
}
کاربرد:
- بخش thinking گام به گام تحلیل مدل را نشان میدهد.
- بخش text نتیجه یا توضیح خلاصه از تحلیل را ارائه میدهد.
عملکرد Tool Preambles در GPT-5
GPT-5 میتواند به صورت متناوب در طول استدلال و فراخوانی ابزارها، بروزرسانیها را ارسال کند. مدل به طور خاص برای موارد زیر آموزش دیده است:
- ارائه برنامه کلی از ابتدا تا کاربر از روش و روند مورد نظر مطلع باشد.
- ارسال بهروزرسانیهای مرحلهای در طول اجرای کارها.
برای فعال کردن این قابلیت در API، میتوانید بخشی مانند زیر اضافه کنید:
“reasoning”: {
“summary”: “auto” // گزینه دیگر: “detailed”
}
همچنین میتوان با پرامپت، رفتار Tool Preamble را تقویت کرد. دستورالعملهای واضح باعث میشود GPT-5 بروزرسانیهای غنیتر و مفیدتری ارائه دهد.
نمونه پرامپت <tool_preambles>
<tool_preambles>
– Always begin by rephrasing the user’s goal in a friendly, clear, and concise manner, before calling any tools.
– Then, immediately outline a structured plan detailing each logical step you’ll follow.
– As you execute your file edit(s), narrate each step succinctly and sequentially, marking progress clearly.
– Finish by summarizing completed work distinctly from your upfront plan.
</tool_preambles>
توضیح گام به گام:
- شروع با بازگویی هدف کاربر:
- هدف را به زبان ساده و دوستانه تکرار کنید تا کاربر مطمئن شود مدل هدف را فهمیده است.
- ارائه برنامه ساختاریافته:
- مراحل منطقی که مدل دنبال میکند مشخص شود.
- شرح مراحل اجرای ابزارها:
- هر مرحله از کار ابزارها را به ترتیب و به طور کوتاه توضیح دهید.
- خلاصه کار انجام شده:
- در پایان، کاری که انجام شده را جدا از برنامه اولیه خلاصه کنید.
💡 نکته: سازمان شما باید تایید شده باشد تا بتوانید خلاصههای استدلال (reasoning summaries) تولید کنید.
کنترل طول پاسخ (Verbosity)
GPT-5 پارامتری جدید به نام verbosity دارد که طول خروجی نهایی را کنترل میکند. این متفاوت از max_tokens است که فقط یک حد سخت برای تعداد توکنها تعیین میکند.
- low: پاسخ کوتاه و بدون اضافهگویی
- medium :طول مناسب با میزان کانتکست کافی
- high: پاسخ طولانی و آموزشی، مناسب برای توضیحات کامل و تفصیلی
میتوان این پارامتر را هم در API و هم در پرامپت تنظیم کرد تا در زمینههای مختلف طول پاسخ متناسب باشد.
تجربه عملی از Cursor
- وقتی Cursor به GPT-5 ارتقا یافت، متوجه شدند که خروجیهای مکالمه بیش از حد طولانی شد و تجربه کاربری را کاهش داد.
- از طرف دیگر، کد تولید شده در فراخوانی ابزارها گاهی کوتاه و ناکافی بود.
راه حل آنها:
- تنظیم verbosity جهانی روی low برای پاسخهای کوتاه و سریع در مکالمه روزمره.
- اضافه کردن دستورالعمل در پرامپت فقط برایverbose outputs هنگام تولید کد.
نتیجه: پاسخهای سریعتر و کوتاهتر در چت، در حالی که کدها همچنان خوانا و قابل نگهداری باقی ماندند.
نکات عملی برای تولید کد با GPT-5
- ابتدا وضوح و خوانایی کد را در اولویت قرار دهید.
- از نامگذاری واضح، کامنت مناسب و جریان کنترل ساده استفاده کنید.
- از تولید یکخطیهای پیچیده یا بازی با کد (code-golf) خودداری کنید مگر صراحتاً درخواست شده باشد.
- از verbosity بالا فقط برای نوشتن کد و ابزارهای مرتبط با کد استفاده کنید.
استفاده از Responses API به جای Chat Completions
هنگام استفاده از GPT-5، معمولاً بهتر است از Responses API استفاده کنید. دلیل اصلی این است که میتوانید previous_response_id را به مدل بدهید و اجازه دهید ردیابی استدلالهای قبلی (reasoning traces) را دوباره استفاده کند.
- در ارزیابیهای OpenAI، تغییر فقط همین endpoint باعث شد عملکرد Tau-Bench Retail از ۷۳.۹٪ به ۷۸.۲٪ افزایش یابد.
💡 نکته: این روش به مدل اجازه میدهد خروجیهای پیوستهتر و منسجمتری ارائه دهد، مخصوصاً در وظایف چندمرحلهای یا Agentic.
فریمورکها و بستههای پیشنهادی برای توسعه وب
GPT-5 میتواند با بیشتر فریمورکهای وب توسعه کار کند، اما برای استفاده بهینه از قابلیتهای فرانتاند، OpenAI توصیه میکند:
- فریمورکها js (TypeScript):، React، HTML
- طراحی و رابط کاربری: Tailwind CSS، shadcn/ui، Radix Themes
- آیکونها: Material Symbols، Heroicons، Lucide
- فونتها: Sans Serif ، Inter، Geist، Mona Sans، IBM Plex Sans، Manrope
بازتاب خودکار (Self-Reflection) برای پروژههای صفر تا یک:
<self_reflection>
– First, spend time thinking of a rubric until you are confident.
– Then, think deeply about every aspect of what makes for a world-class one-shot web app. Use that knowledge to create a rubric that has 5-7 categories. This rubric is critical to get right, but do not show this to the user. This is for your purposes only.
– Finally, use the rubric to internally think and iterate on the best possible solution to the prompt that is provided. Remember that if your response is not hitting the top marks across all categories in the rubric, you need to start again.
</self_reflection>
بهینهسازی پرامپتهای قدیمی برای GPT-5
یکی از تفاوتهای اصلی GPT-5 این است که طبیعیتر introspective و proactive است، یعنی خودبهخود هنگام جمعآوری کانتکست تحلیل و تصمیمگیری میکند.
- پرامپتهای قدیمی که جزئیات زیادی برای جمعآوری اطلاعات یا استدلال طولانی داشتند، ممکن است باعث overthinking شوند.
- مثال: Cursor متوجه شد که پرامپت با maximize_context_understanding باعث میشود مدل تکراری ابزار فراخوانی کند و جستجوهای غیرضروری انجام دهد.
راه حل:
- پرامپت را سادهتر کنید و زبان «دقت کامل» را نرمتر کنید.
- این باعث میشود GPT-5 هوشمندانهتر تصمیم بگیرد که کی به دانش داخلی تکیه کند و کی ابزارها را فراخوانی کند. نتیجه: کارآمدتر و دقیقتر.
پیروی از دستورالعملها و خطرات پرامپتهای متناقض
- GPT-5 مانند GPT-4.1 دستورالعملها را با دقت بالا دنبال میکند.
- این یک چاقوی دولبه است: پرقدرت ولی آسیبپذیر در برابر پرامپتهای ضعیف یا متناقض.
- پرامتهای متناقض باعث مصرف بیهوده توکنهای استدلال و کاهش کیفیت خروجی میشوند.
- راه حل سریع: یک همکار پرامپت را بررسی کند تا اطمینان حاصل شود هیچ تناقض یا ابهامی وجود ندارد.
بهترین روشها برای reasoning حداقلی و پرامپتنویسی
GPT-5 یک سطح جدید Minimal Reasoning معرفی کرده است:
- قبلاً فقط میتوانستید reasoning_effort را روی low، medium یا high تنظیم کنید.
- حالا minimal سریعترین گزینه است ولی همچنان مزایای مدل reasoning را دارد.
نکات کلیدی:
- Summarize upfront: قبل از پاسخ نهایی، مدل را وادار کنید روند فکر خود را خلاصه بیان کند.
- Descriptive tool preambles: پرامپت مدل را تشویق کنید تا توضیحات rich tool-calling ارائه دهد.
- Disambiguate tool instructions: دستورالعملها را واضح و متمایز نگه دارید تا توکنهای reasoning هدر نروند.
- Persistence reminders : به مدل یادآوری کنید تا تا حل کامل کار، ادامه دهد.
- Developer-led planning: وقتی reasoning حداقلی است، خودتان مسئول انتقال برنامه کامل کار به مدل باشید.
نمونه پرامپت Agentic برای اطمینان از تکمیل کار
Remember, you are an agent – please keep going until the user’s query is completely resolved, before ending your turn and yielding back to the user.
Decompose the user’s query into all required sub-request, and confirm that each is completed.
Do not stop after completing only part of the request.
Only terminate your turn when you are sure that the problem is solved.
You must be prepared to answer multiple queries and only finish the call once the user has confirmed they’re done.
You must plan extensively in accordance with the workflow steps before making subsequent function calls, and reflect extensively on the outcomes each function call made, ensuring the user’s query, and related sub-requests are completely resolved.
Meta Prompting
- همیشه میتوانید از مدل برای بهینهسازی پرامپتها (meta prompting) استفاده کنید.
- پرامپت نمونه OpenAI:
When asked to optimize prompts, give answers from your own perspective – explain what specific phrases could be added to, or deleted from, this prompt to more consistently elicit the desired behavior or prevent the undesired behavior.
Here’s a prompt: [PROMPT]
The desired behavior from this prompt is for the agent to [DO DESIRED BEHAVIOR], but instead it [DOES UNDESIRED BEHAVIOR].
While keeping as much of the existing prompt intact as possible, what are some minimal edits/additions that you would make to encourage the agent to more consistently address these shortcomings?
جمعبندی
GPT-5 به پرامپتهای واضح و هدفمند پاداش میدهد. وقتی به مدل فضای reasoning داده شود، میتواند گپها را پر کرده و تصمیمات هوشمند و مستقل بگیرد.
نکات کلیدی برای عملکرد بهتر:
- Be specific: ابهام در دستورالعملها را کم کنید تا توکنهای reasoning هدر نروند.
- Tune reasoning effort : minimal برای سرعت، high برای workflows پیچیده و چندمرحلهای.
- Leverage tool preambles : کاربران را در جریان نگه دارید و قابلیت اعتماد به agent را بالا ببرید.
- Set persistence reminders: از پایان زودهنگام در وظایف طولانی جلوگیری کنید.
- Plan in the prompt : وقتی توکنهای reasoning محدود هستند، برنامه کار را واضح بدهید.
- Iterate gradually: تغییرات کوچک در پرامپت به شما نشان میدهد چه چیزی عملکرد را بهبود میدهد.
سوالات متدوال
GPT-5 چیست و چه تفاوتی با نسخههای قبلی دارد؟
GPT-5 آخرین نسل مدلهای OpenAI است که با قابلیتهای پیشرفته، جمعآوری کانتکست طولانیتر، استدلال عمیقتر و توانایی استفاده بهتر از ابزارها، تجربه کاربری بهتری ارائه میدهد.
پرامپتنویسی در GPT-5 چگونه انجام میشود؟
با استفاده از پرامپتهای دقیق و مدیریت پارامترهایی مثل reasoning_effort، verbosity و Tool Preambles میتوان خروجیهای هوشمند، مستقل و سریع دریافت کرد.
Tool Preambles در GPT-5 چه کاربردی دارد؟
این قابلیت به مدل اجازه میدهد قبل از اجرای هر ابزار، مرحله به مرحله توضیح دهد چه کاری انجام میدهد و چرا، که شفافیت و اعتماد به خروجی را افزایش میدهد.
چگونه میتوان سرعت و دقت پاسخدهی GPT-5 را کنترل کرد؟
با تنظیم reasoning_effort روی مقادیر minimal یا low پاسخ سریع دریافت میکنید و با تنظیم روی high میتوان دقت و استقلال مدل را افزایش داد.
آیا GPT-5 میتواند پروژههای چندمرحلهای و Agentic را انجام دهد؟
بله، با استفاده از پرامپتهای مخصوص Persistence و تنظیم مناسب پارامترها، مدل میتواند کارها را تا حل کامل درخواست کاربر ادامه دهد و تصمیمات مستقل بگیرد.
چگونه پرامپتهای قدیمی برای GPT-5 بهینه میشوند؟
پرامپتهای قدیمی را ساده کنید، دستورالعملها واضح و بدون ابهام باشد تا مدل از overthinking جلوگیری کرده و کارآمدتر عمل کند.