تنظیم طول و قالب خروجی در پرامپت (Output Length and Format Control) فرآیندی است که پاسخ مدل زبانی را از حالت غیرقابل پیش‌بینی به یک خروجی ساختاریافته و قابل استفاده تبدیل می‌کند. بدون کنترل صریح، مدل به سمت پاسخ‌های طولانی، نامنظم یا نامرتبط گرایش پیدا می‌کند. چارچوب عملی این راهنما، تکنیک‌هایی برای تعیین طول (Length)، ساختار (Structure)، قالب (Format) و سطح جزئیات (Granularity) خروجی ارائه می‌دهد. تمرکز اصلی روی الگوهای عملی، معیارهای سنجش و اشتباهات رایج است. تکنیک‌های پیشرفته مانند خروجی JSON، Markdown و XML نیز بررسی می‌شود. 🎯

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

چرا کنترل طول و قالب خروجی حیاتی است؟

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

سه دلیل اصلی اهمیت کنترل خروجی:

نخست: مصرف توکن و هزینه

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

دوم: قابلیت پردازش خودکار

اگر خروجی قرار است توسط یک برنامه (نه انسان) مصرف شود، ساختار مشخص ضروری است. مثلاً JSON بدون ساختار صحیح، غیرقابل پارس است.

سوم: تمرکز و خوانایی

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

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

چهار بُعد کنترل خروجی و نیاز پرامپتی هرکدام

هر بُعد کنترل خروجی، ساختار متفاوتی می‌طلبد:

بُعدهدف اصلیخروجی مطلوب پرامپت
Lengthکنترل حجم پاسختعداد کلمه یا جمله مشخص
Structureسازماندهی منطقیبخش‌بندی با عناوین
Formatشکل فنی خروجیJSON, Markdown, XML, Table
Granularityسطح جزئیاتخلاصه یا تفصیلی
پرامپت بدون کنترل خروجی، مثل سفارش غذا بدون تعیین اندازه است؛ نتیجه غیرقابل پیش‌بینی می‌شود.

این تفکیک، پایه طراحی همه پرامپت‌های این راهنما است. برای آشنایی با ساختار کلی یک پرامپت مؤثر، مطلب ساختار یک پرامپت مؤثر چگونه باید باشد؟ را مرور کنید.

اصول تنظیم طول و قالب در پرامپت

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

اصل یکم: تعیین صریح اندازه

به‌جای «کوتاه بنویس»، از «حداکثر ۱۰۰ کلمه» یا «حداکثر ۳ پاراگراف» استفاده کنید. عدد مشخص، از تفسیر سلیقه‌ای جلوگیری می‌کند.

اصل دوم: تعیین ساختار پیش از محتوا

قالب خروجی را دقیقاً مشخص کنید. مثلاً «سه بخش با عناوین مشخص: خلاصه، تحلیل، پیشنهاد».

اصل سوم: تعریف واحد اندازه‌گیری

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

اصل چهارم: ارائه نمونه

یک نمونه از خروجی مطلوب را در پرامپت قرار دهید. مدل، ساختار را یاد می‌گیرد. برای آشنایی با این تکنیک، مطلب استفاده از مثال در پرامپت چه تأثیری دارد؟ توصیه می‌شود.

اصل پنجم: درخواست بررسی خود

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

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

ساختار پرامپت برای کنترل طول خروجی

کنترل طول، اولین و مهم‌ترین بُعد خروجی است:

Role: Senior content writer.
Context:
  - Task: summarize a technical article
  - Audience: senior engineers
Goal: Produce concise summary.
Output format:
  1. Exactly 3 bullet points
  2. Each bullet max 20 words
  3. No introduction or conclusion
Constraints:
  - Total output under 80 words
  - No filler phrases
  - No repetition of source text
Self-check: Count words and confirm under 80.

این ساختار، سه مزیت ایجاد می‌کند. نخست، اندازه دقیق مشخص است. دوم، ساختار (bullet) تعریف شده. سوم، محدودیت پایانی نیز صریح است.

برای درک نحوه اتصال این تکنیک به ایده‌پردازی، مطلب چگونه با پرامپت ایده‌پردازی کنیم؟ پیشنهاد می‌شود.

ساختار پرامپت برای تعیین ساختار پاسخ

ساختار، سازمان منطقی پاسخ است:

Role: Senior analyst.
Context:
  - Task: analyze a business scenario
  - Audience: executives
Goal: Structured analysis.
Output format:
  1. Executive summary (2 sentences)
  2. Three key findings (one paragraph each)
  3. Two recommendations (one paragraph each)
  4. Risk considerations (one paragraph)
Constraints:
  - No more than 4 sections
  - Every section must have a clear heading
  - Use H2 for section headings
Self-check: Are all sections present?

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

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

قالب، شکل فنی خروجی است. متداول‌ترین قالب‌ها: متن، جدول، JSON، Markdown، XML.

Role: Data analyst.
Context:
  - Task: extract structured data from a paragraph
  - Target system: automated processor
Goal: Produce valid JSON.
Output format:
  Return only valid JSON with this schema:
  {
    "product_name": "string",
    "price": number,
    "category": "string",
    "features": ["string"]
  }
Constraints:
  - No text outside the JSON block
  - No explanation
  - Use double quotes only
Self-check: Is the JSON valid?

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

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

ساختار پرامپت برای کنترل سطح جزئیات

سطح جزئیات، تعیین می‌کند که خروجی چقدر عمیق باشد:

Role: Technical writer.
Context:
  - Task: explain a concept to three different audiences
Goal: Produce three levels of detail.
Output format:
  1. Beginner (max 100 words)
  2. Intermediate (max 250 words)
  3. Expert (max 500 words)
Constraints:
  - Same core concept at all levels
  - No repetition between levels
  - Each level has appropriate vocabulary
Self-check: Are the levels distinct?

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

تکنیک‌های پیشرفته کنترل خروجی

وقتی ساختار پایه تثبیت شد، می‌توان از تکنیک‌های پیشرفته استفاده کرد:

Chain of Thought با کنترل قالب

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

Self-Consistency برای کنترل کیفیت

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

Output Schema برای پردازش خودکار

در سیستم‌های تولیدی، تعریف Schema دقیق برای خروجی ضروری است. این تکنیک با کتابخانه‌هایی مثل Pydantic یا Zod قابل ترکیب است.

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

اشتباهات رایج در تنظیم طول و قالب

فهرست زیر، پرتکرارترین خطاهاست:

  1. نبود اندازه مشخص: «کوتاه» یا «مفصل» تفسیرپذیر است.
  2. نبود قالب صریح: خروجی به شکل پیش‌فرض مدل تولید می‌شود.
  3. تداخل طول با قالب: درخواست طول زیاد در قالب JSON، نتیجه را خراب می‌کند.
  4. نبود واحد اندازه‌گیری: کلمه یا کاراکتر یا پاراگراف؟
  5. نبود نمونه: مدل نمی‌داند خروجی مطلوب چه شکلی است.
  6. اعتماد کورکورانه به مدل: خروجی باید بررسی شود.
  7. نبود Self-Check: بدون بررسی خودکار، خطاها تکرار می‌شوند.

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

مثال‌های عملی پرامپت

سه مثال واقعی که در تیم‌های مختلف استفاده شده‌اند:

مثال یکم: خلاصه‌سازی مقالات برای تیم مدیریتی

Context: Weekly tech news summary.
Goal: 5 bullet points, each max 25 words.
Constraint: No jargon, focus on business impact.

مثال دوم: استخراج داده ساختاریافته از متن

Context: Customer feedback analysis.
Goal: Valid JSON with fields: sentiment, topic, priority.
Constraint: No explanation outside JSON.

مثال سوم: تولید محتوای چندسطحی

Context: Explaining OAuth to three audiences.
Goal: Beginner, intermediate, expert versions.
Constraint: Same concept, different depth.

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

پرسش‌های پرتکرار درباره کنترل خروجی

آیا مدل همیشه از محدودیت طول پیروی می‌کند؟

نه. مدل‌ها ممکن است محدودیت‌های طول را نقض کنند، به‌خصوص در پاسخ‌های پیچیده. استفاده از Self-Check و تکرار بررسی، دقت را بالا می‌برد.

چه قالبی برای پردازش خودکار مناسب است؟

JSON برای داده ساختاریافته، Markdown برای محتوای نمایشی، XML برای سیستم‌های سازمانی، CSV برای داده جدولی.

چگونه مطمئن شوم خروجی JSON معتبر است؟

در پرامپت از مدل بخواهید فقط JSON برگرداند و از Schema مشخص استفاده کند. سپس با کتابخانه‌ای مثل Pydantic یا ajv، اعتبارسنجی خودکار انجام دهید.

آیا می‌توان طول و قالب را با هم کنترل کرد؟

بله، اما با احتیاط. درخواست طول زیاد در قالب ساختاریافته (مثل JSON)، احتمال نقض قالب را بالا می‌برد.

چگونه خروجی طولانی را کوتاه کنم؟

از تکنیک Compression Prompt استفاده کنید: «خروجی قبلی را در حداکثر ۵۰٪ حجمش خلاصه کن بدون از دست دادن نکات کلیدی».

نکات سطح تیم‌های مهندسی ارشد

در تیم‌های بالغ، کنترل خروجی به یک فرآیند مهندسی تبدیل می‌شود:

  • مخزن مشترک پرامپت: هر پرامپت باید در مخزن مشترک نگهداری و نسخه‌بندی شود.
  • اعتبارسنجی خودکار: خروجی‌ها باید با ابزارهای Schema Validation بررسی شوند.
  • پایش رانش خروجی: به‌روزرسانی مدل‌ها می‌تواند کیفیت خروجی را تغییر دهد.
  • بازبینی انسانی اجباری: خروجی‌های حساس باید بازبینی شوند.
  • آموزش تیم: مهارت پرامپت‌نویسی باید در تیم توزیع شود.
  • اتصال به تصمیم‌گیری: مطلب پرامپت نویسی برای تصمیم‌گیری چگونه انجام می‌شود؟ مرجع مفیدی است.
در تیم‌های ارشد، کنترل خروجی بخشی از زیرساخت است؛ نه یک کار موردی.

برای اتصال به ایده‌پردازی، مطلب چگونه با پرامپت ایده‌پردازی کنیم؟ و برای مدیریت پروژه، پرامپت نویسی برای مدیریت پروژه چگونه است؟ را بررسی کنید.

آنچه در عمل تفاوت ایجاد می‌کند

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

برای یادگیری عمیق‌تر، مطلب تسلط بر پرامپت نویسی چگونه ممکن است؟ و قالب‌های پرامپت چیست و چگونه ساخته می‌شوند؟ را بررسی کنید. برای اتصال به محدودیت‌ها، مطلب محدودیت‌ها و قواعد در پرامپت نویسی چگونه اعمال می‌شوند؟ و برای استفاده از قیاس، استفاده از قیاس و استعاره در پرامپت چه تأثیری دارد؟ را از دست ندهید.

اگر در تیم خود این روش را پیاده کرده‌اید، برای خوانندگان این مطلب جالب است بدانید کدام بخش از ساختار کنترل خروجی بیشترین تأثیر را روی کیفیت پاسخ داشت. تجربه خودتان را در دیدگاه‌ها بنویسید. ✍️

مفهوم Data Structure به‌عنوان یک مفهوم پایه در علوم کامپیوتر، در طراحی قالب خروجی پرامپت نیز کاربرد مستقیم دارد.