جیسون پرامپت (Prompt JSON)، روشی برای نوشتن درخواستهای هوش مصنوعی در قالبی ساختاریافته است که بخشهای مختلف درخواست، مثل نقش مدل، زمینه، دستور اصلی و شکل خروجی را بهصورت مشخص و منظم تعریف میکند.
در این راهنما یاد میگیرید جیسون پرامپت دقیقاً چه چیزی هست و چه چیزی نیست، چه زمانی واقعاً به دردتان میخورد، چه تفاوتی با JSON Mode و Structured Output دارد و با چند نمونه واقعی و تستشده، قدمبهقدم یک جیسون پرامپت میسازید.
جیسون پرامپت چیست؟ و چه تفاوتی با پرامپت معمولی دارد؟
جیسون پرامپت، روشی برای نوشتن درخواستهای هوش مصنوعی در قالبی ساختاریافته و قابل پردازش برای مدل است.
یعنی بهجای یک پاراگراف پیوسته، هر جزء از درخواست در یک فیلد جدا قرار میگیرد؛ فیلدهایی مثل نقش مدل، اطلاعات زمینه، وظیفه، نمونه و فرمت خروجی. به همین دلیل همان دستوری که قبلاً در یک پاراگراف مینوشتید، اینطور قابلپیشبینیتر و کمابهامتر میشود.
تفاوت جیسون پرامپت با پرامپت معمولی چیست؟
در یک پرامپت متنی معمولی، دستور و داده معمولاً در یک پاراگراف قاطی میشوند و مدل باید حدس بزند کجای متن دستور است و کجا داده. در جیسون پرامپت، اینها در فیلدهای جداگانه از هم تفکیک میشوند. به همین دلیل، در درخواستهای چندبخشی یا طولانی، احتمال جاافتادن یک قسمت کمتر میشود.

جیسون پرامپت یک الگوی نوشتن درخواست است
نکته مهم این است که جیسون پرامپت یک قابلیت فنی داخل مدل نیست، بلکه صرفاً یک الگوی نوشتن درخواست است.
هوش مصنوعی، پرامپت JSON شما را هم فقط بهعنوان متن میخواند، درست مثل یک پاراگراف معمولی و تضمینی وجود ندارد که خروجی پرامپت JSON حتما بهتر باشد.
برای این تضمین باید از یک قابلیت جداگانه در سطح پلتفرم مثل JSON Mode یا Structured Output هم استفاده کنید.
جیسون پرامپت در برابر Structured Output و JSON Mode
- جیسون پرامپت به نحوه نوشتن درخواست مربوط است و فقط احتمال دریافت خروجی ساختاریافته را بیشتر میکند؛ تضمین فنی نمیدهد.
- JSON Mode یک قابلیت در سطح API است که معتبر بودن نحوی JSON را تضمین میکند، اما لزوماً ساختار یا فیلدهای موردنظر شما را تضمین نمیکند.
- Structured Output با استفاده از JSON Schema مدل را ملزم میکند خروجی با ساختار، نوع داده و فیلدهای مشخصشده مطابقت داشته باشد.
- در Gemini نیز میتوان با responseSchema و responseMimeType ساختار خروجی را در سطح API مشخص کرد.
- در Claude بیشتر روی ساختاردهی خود پرامپت با JSON یا XML تأکید میشود.
نتیجه: جیسون پرامپت برای شفافتر کردن درخواست است، اما Structured Output و JSON Mode کنترل فنیتری روی خروجی دارند.
چه زمانی از جیسون پرامپت و چه زمانی از پرامپت ساده استفاده کنیم؟
معیار اصلی، خواننده نهایی خروجی است:
- اگر خروجی قرار است توسط کد یا سیستم دیگری پردازش شود، جیسون پرامپت بهتر است.
- برای یک سوال ساده و یکباره که فقط قرار است توسط یک انسان خوانده و استفاده شود، جیسون پرامپت معمولاً ارزش اضافهای ندارد و فقط طول درخواست را زیاد میکند.
کاربردهای جیسون پرامپت
همانطور که گفتیم جیسون پرامپت زمانی مفید است که خروجی مدل فقط برای خواندن انسان نباشد و قرار باشد ساختار مشخصی داشته باشد یا توسط یک سیستم، کد یا فرایند دیگر پردازش شود. مهمترین کاربردهای آن عبارتاند از:
۱. دریافت خروجی ساختاریافته و چندبخشی
وقتی از مدل چند نوع اطلاعات جداگانه میخواهید، میتوان خروجی را در قالب فیلدهای مشخص JSON دریافت کرد؛ برای مثال عنوان، خلاصه و کلمات کلیدی یک محصول. این ساختار باعث میشود اطلاعات از هم تفکیکشده و استفاده از هر بخش در مراحل بعدی سادهتر باشد.
۲. استخراج اطلاعات از متنهای آزاد
جیسون پرامپت میتواند برای تبدیل اطلاعات بدون ساختار به دادههای مشخص استفاده شود؛ مثلاً استخراج نام، موضوع، میزان رضایت و نکات مهم از یک نظر مشتری یا ایمیل ورودی و قرار دادن هرکدام در یک فیلد جداگانه.
۳. دستهبندی و پردازش حجم زیادی از داده
وقتی قرار است یک فرایند روی تعداد زیادی ورودی مشابه تکرار شود، مشخصکردن ساختار خروجی کمک میکند نتایج قالب یکسانتری داشته باشند؛ مثلاً دستهبندی صدها تیکت پشتیبانی یا برچسبگذاری نظرات کاربران. البته برای پردازش خودکار همچنان به اعتبارسنجی خروجی نیاز است.
۴. استفاده در API و گردشکارهای خودکار
اگر خروجی مدل قرار است مستقیماً وارد کد، پایگاه داده یا مرحله دیگری از یک Workflow شود، JSON ساختاریافته کاربرد بیشتری پیدا میکند. در چنین شرایطی، فیلدهای مشخص خروجی را میتوان راحتتر با ابزارها و زبانهای برنامهنویسی پردازش کرد.
۵. مدیریت درخواستهای دارای چند قید
وقتی یک درخواست چند شرط و خروجی مشخص دارد، تعریف فیلدهای جداگانه در JSON میتواند کمک کند هر بخش از درخواست بهصورت مشخص در خروجی منعکس شود و کنترل نتیجه برای سیستم یا کاربر سادهتر باشد.
ساختار یک جیسون پرامپت چگونه است؟
یک جیسون پرامپت معمولی از چند فیلد اصلی تشکیل میشود که هرکدام یک نقش مشخص دارند. لازم نیست همیشه همین اسمهای دقیق استفاده شوند؛ نکته مهم این است که هر فیلد یک نقش مشخص و یکتا داشته باشد و در طول پرامپت با همان نقش باقی بماند.

۱. کلید و مقدار در ساختار JSON
هر کلید (Key) اسم فیلد است و باید کوتاه، واضح و در کل پرامپت یکدست باشد؛ مثلاً همیشه «دستور» یا همیشه «وظیفه»، نه هر دو در یک پرامپت. مقدار هر کلید یا یک دستور و داده واقعی است، یا توضیح نوع داده مورد انتظار، مثل «رشته متنی» (string) یا «آرایهای از سه رشته» (array of 3 strings)، وقتی هدف مشخصکردن فرمت خروجی است نه محتوای واقعی.
۲. دستور، زمینه و فرمت خروجی
فیلدهایی که در بیشتر جیسون پرامپتهای کاربردی دیده میشوند، اینها هستند:
- نقش (role): نقشی که مدل باید بازی کند
- زمینه (context): اطلاعات زمینهای لازم برای انجام کار
- دستور یا وظیفه (instruction یا task): خود دستور اصلی
- ورودی (input): دادهای که باید پردازش شود
- نمونه (examples): مثالهای ورودی-خروجی برای روشنکردن انتظار
- فرمت خروجی (output_format یا output_schema): شکل دقیق پاسخ مورد انتظار
هرچه فرمت خروجی دقیقتر و با جزئیات بیشتر نوشته شود نوع داده، طول، زبان خروجی مدل هم به همان اندازه به آن نزدیکتر میشود.
تفاوت JSON معتبر با JSON نامعتبر چیست؟
JSON معتبر چند قانون ساده دارد: تمام Keyها و مقادیر متنی باید داخل گیومه دوتایی باشند، بعد از آخرین عضو یک آرایه یا شیء نباید کاما اضافه گذاشت، و هر آکولاد یا براکت باز باید دقیقاً یک بستهشدن متناظر داشته باشد.
کوچکترین اشتباه در همین موارد باعث میشود ابزارهایی مثل JSON.parse خروجی را رد کنند، حتی اگر محتوای آن از نظر انسانی کاملاً درست باشد.
| // نامعتبر — کاما اضافه بعد از آخرین عضو آرایه { “title”: “sample”, “tags”: [“news”, “tips”,] } // معتبر { “title”: “sample”, “tags”: [“news”, “tips”] } |
آموزش ساخت جیسون پرامپت؛ قدمبهقدم
در ادامه نوحه ساختن جیسون پرامپ

۱. قدم اول: تعریف فیلدهای خروجی
پیش از نوشتن پرامپت، دقیقاً مشخص کنید کدام فیلدها را واقعاً در مرحله بعد لازم دارید، نه هر فیلدی که به ذهنتان میرسد. هر فیلد اضافه که مصرف مشخصی ندارد، فقط پرامپت را سنگینتر و تفسیر آن را برای مدل پیچیدهتر میکند.
۲. قدم دوم: نوشتن دستور برای پرکردن فیلدها
بعد از تعیین فیلدها، نقش و دستور اصلی را طوری بنویسید که مشخص باشد مدل قرار است دقیقاً چه کاری با ورودی انجام دهد، نه فقط چه خروجیای تحویل دهد. مثلاً بهجای «این متن را خلاصه کن»، بنویسید «نکات اصلی متن ورودی را در سه بولت مجزا استخراج کن».
۳. قدم سوم: مشخصکردن نوع و فرمت داده
برای هر فیلد خروجی، نوع داده، محدودیت طول، زبان و در صورت نیاز مقادیر مجاز (Enum) را داخل output_schema بنویسید؛ مثلاً «رشته متنی، حداکثر ۶۰ کاراکتر، به فارسی» یا «یکی از سه مقدار: low، medium، high». این جزئیات همان چیزی است که خروجی را از یک حدس کلی به یک پاسخ قابلاتکا تبدیل میکند.
۴. قدم چهارم: اعتبارسنجی و اصلاح خروجی
حتی با بهترین پرامپت هم گاهی مدل یک توضیح اضافه قبل یا بعد از JSON مینویسد یا یک کاما را جا میاندازد. راهکار عملی این است که خروجی را با یک تابع ساده مثل JSON.parse در جاوااسکریپت یا json.loads در پایتون تست کنید؛ اگر خطا داد، همان پیام خطا را به مدل برگردانید و از او بخواهید فقط نسخه اصلاحشده JSON را بدون هیچ توضیح اضافهای برگرداند.
۳ مثال واقعی استفاده از جیسون پرامپت در هوشا
هوشا محیطی است که اجرای همین جیسون پرامپتها را روی چند مدل هوش مصنوعی مختلف، بدون نیاز به ثبتنام جداگانه در هر سرویس، ممکن میکند. بهجای باز کردن یک اکانت مجزا برای هر مدل هوش مصنوعی، کافی است مدل موردنظرتان را از میان گزینههای موجود انتخاب کنید و پرامپت را همانجا، مثلاً روی چت جی پی تی رایگان، اجرا کنید.
سه نمونه زیر روی مدل Claude sonnet 5 medium)Anthropic)، در مرداد ۱۴۰۵ (اوت ۲۰۲۶) و در جریان تهیه همین مقاله در هوشا مدل claude opus 5.0، اجرا شدهاند.
خروجیها همان چیزی هستند که مدل تولید کرده و بدون دستکاری محتوایی در مقاله آورده شدهاند؛ فقط برای خوانایی در قالب کد فرمت شدهاند.
هر نمونه چهار بخش دارد: هدف نمونه، پرامپت، خروجی واقعی و تحلیل خروجی.
مثال ۱: نمونه برای تولید محتوای ساختاریافته برای معرفی یک اپلیکیشن
هدف نمونه: تولید یک معرفی ساختاریافته برای یک اپلیکیشن مدیریت زمان با عناصر گیمیفیکیشن؛ با عنوان، خلاصه، بولتهای ویژگی و کلمات کلیدی سئو، هرکدام در فیلد جداگانه.
جیسون پرامپت تست شده در هوشا – مثال ۱
| // پرامپت { “role”: “senior product copywriter”, “task”: “write structured product intro”, “input”: { “product_name”: “زمانیار”, “product_type”: “اپ مدیریت زمان گیمیفایشده”, “key_features”: [ “ثبت تسک روزانه”, “امتیاز و نشان برای هر تسک”, “رقابت دوستانه با تیم” ] }, “output_schema”: { “title”: “string, max 60 chars, fa”, “summary”: “string, 1-2 sentences, fa”, “bullet_points”: “array[3], fa”, “seo_keywords”: “array[3], fa” }, “constraints”: [ “no exaggerated claims”, “no emojis”, “friendly, professional tone” ] } |
خروجی جیسون پرامپت تست شده در هوشا – مثال ۱
| // خروجی واقعی مدل { “title”: “زمانیار؛ مدیریت زمان که بازی میشود”, “summary”: “زمانیار روزهای کاری شما را به تسکهای قابل پیگیری تبدیل میکند و با امتیاز و رقابت دوستانه، انگیزه تمامکردن کارها را بالا نگه میدارد.”, “bullet_points”: [ “ثبت سریع تسک و پیگیری پیشرفت”, “امتیاز و نشان برای هر تسک تمامشده”, “مقایسه پیشرفت با همتیمیها” ], “seo_keywords”: [ “مدیریت زمان”, “اپلیکیشن گیمیفیکیشن”, “افزایش بهرهوری” ] } |

تحلیل خروجی – مثال ۱
همانطور که در خروجی مشخص است، هر فیلد دقیقاً مطابق با قانون تعیینشده در output_schema پر شده؛ عنوان زیر ۶۰ کاراکتر مانده، خلاصه در یک تا دو جمله آمده و سه بولت و سه کلمه کلیدی، دقیقاً به همان تعداد خواستهشده تولید شدهاند.
مثال ۲: نمونه جیسون پرامپت برای استخراج اطلاعات از متن
هدف نمونه: استخراج احساس کلی، مشکلات و نکات مثبت از یک نظر واقعینمای کاربر درباره همان اپلیکیشن، در قالب فیلدهای جداگانه و قابلپردازش.
جیسون پرامپت تست شده در هوشا – مثال ۲
| // پرامپت { “role”: “customer feedback analyst”, “task”: “extract insights from a review”, “input_text”: “چند هفتهست از زمانیار استفاده میکنم. امتیازدهی خیلی انگیزهبخشه، ولی با لیست بلند کند میشه. کاش حالت تیره هم داشت.”, “output_schema”: { “sentiment”: “positive|negative|mixed”, “product_mentioned”: “string”, “issues”: “array of strings”, “positive_points”: “array of strings”, “suggested_action”: “string” } } |
خروجی جیسون پرامپت تست شده در هوشا – مثال ۲
| // خروجی واقعی مدل { “sentiment”: “mixed”, “product_mentioned”: “زمانیار”, “issues”: [ “کندی اپ با لیستهای طولانی”, “نبود حالت تیره (Dark Mode)” ], “positive_points”: [ “امتیازدهی انگیزهبخش برای تسکها” ], “suggested_action”: “بهینهسازی عملکرد برای لیست بلند و افزودن حالت تیره” } |

تحلیل خروجی – مثال ۲
مدل بهدرستی احساس کاربر را «ترکیبی» (mixed) تشخیص داده، چون نظر هم شامل تعریف و هم شامل گلایه بوده؛ همچنین دو مشکل فنی جداگانه را در قالب یک آرایه، بدون قاطیکردن آنها با نقاط مثبت، برگردانده است.
مثال ۳ – نمونه جیسون پرامپت برای دستهبندی دادهها
هدف نمونه: دستهبندی همزمان سه تیکت پشتیبانی در یکی از دستههای از پیشتعیینشده و تعیین اولویت رسیدگی برای هرکدام.
جیسون پرامپت تست شده در هوشا – مثال ۳
| // پرامپت { “role”: “پشتیبانی اپلیکیشن موبایل”, “task”: “دستهبندی هر تیکت و تعیین اولویت”, “categories”: [ “مشکل فنی”, “سوال درباره صورتحساب”, “درخواست ویژگی جدید”, “سایر” ], “input_tickets”: [ “اپ موقع باز شدن کرش میکنه.”, “این ماه دوبار از حسابم کم شده؟”, “میشه حالت شب هم اضافه کنید؟” ], “output_schema”: { “tickets”: “array of {ticket, category, priority}”, “priority”: “low | medium | high” } } |
خروجی جیسون پرامپت تست شده در هوشا – مثال ۳
| // خروجی واقعی مدل { “tickets”: [ { “ticket”: “اپ موقع باز شدن کرش میکنه.”, “category”: “مشکل فنی”, “priority”: “high” }, { “ticket”: “این ماه دوبار از حسابم کم شده؟”, “category”: “سوال درباره صورتحساب”, “priority”: “high” }, { “ticket”: “میشه حالت شب هم اضافه کنید؟”, “category”: “درخواست ویژگی جدید”, “priority”: “low” } ] } |

تحلیل خروجی – مثال ۳
نکته قابلتوجه این است که مدل به هر دو تیکت اول اولویت «بالا» داده، چون کرشکردن اپ و برداشت نادرست از حساب هر دو مشکلی فوری برای کاربرند، در حالی که درخواست یک ویژگی جدید را با اولویت «پایین» درجهبندی کرده است. یعنی تشخیص اولویت فقط بر اساس دسته نبوده، بلکه بر اساس فوریت واقعی هر مورد انجام شده.
مقایسه خروجی پرامپت متنی و جیسون پرامپت
برای مقایسهای منصفانه، همان درخواست معرفی محصول نمونه اول را یکبار دیگر، اینبار بهصورت یک پرامپت متنی معمولی، به مدل دادهایم: «این محصول رو برام معرفی کن: زمانیار، یه اپ مدیریت زمان با عناصر گیمیفیکیشن که امتیاز میده و رقابت دوستانه با تیم داره. یه معرفی کوتاه و جذاب بنویس.»
| // خروجی واقعی برای پرامپت متنی معمولی زمانیار اپ مدیریت زمان است که کار روزانه را به یک تجربه انگیزهبخش تبدیل میکند. با هر تسکی که تمام میکنید امتیاز میگیرید و میتوانید پیشرفتتان را با تیم مقایسه کنید. اگر میخواهید کارهای عقبافتاده را جدی بگیرید، زمانیار همراه خوبی است. |

از نظر محتوایی، هر دو خروجی قابلقبول و روان هستند؛ تفاوت اصلی در مصرفپذیری آنهاست. اگر بخواهید فقط عنوان را در یک تگ Title صفحه بگذارید یا فقط کلمات کلیدی را در ابزار سئوی خود وارد کنید، از خروجی متنی باید این بخشها را دستی جدا کنید؛ در حالی که از خروجی JSON، همان مقدار را مستقیم و بدون پردازش دستی برمیدارید.
آیا همه مدلهای هوش مصنوعی جیسون پرامپت را به یک شکل پشتیبانی میکنند؟
خیر، اما صرفنظر از مدل، در بسیاری از درخواستهای چندبخشی، ساختار JSON میتواند ابهام را کاهش دهد و به منظمتر شدن خروجی کمک کند.
میزان این اثر به مدل و نوع درخواست بستگی دارد و نباید آن را با تضمین فنی اشتباه گرفت؛ برای هر گردشکار خودکار، لایه اعتبارسنجی خروجی (مثل تست JSON.parse) هنوز لازم است، مهم نیست از کدام مدل استفاده میکنید.
جمعبندی؛ چه زمانی جیسون پرامپت انتخاب خوبی است؟
جیسون پرامپت زمانی مناسب است که خروجی ساختاریافته، قابل پردازش یا تکرارپذیر نیاز دارید؛ بهخصوص برای کارهای چندبخشی، پردازش حجم زیادی از داده و نمایش دقیق قالب خروجی با نمونه.
برای سؤالهای ساده و مکالمات معمولی، استفاده از آن معمولاً فقط پیچیدگی اضافه میکند. همچنین حتی با JSON Mode یا Structured Output، اعتبارسنجی خروجی قبل از استفاده در سیستم واقعی ضروری است.
نویسنده: معین معرک نژاد
جیسون پرامپت (JSON Prompt) چیست؟
جیسون پرامپت روشی برای نوشتن درخواست از هوش مصنوعی در قالبی ساختاریافته است که بخشهایی مانند دستور، زمینه، ورودی و فرمت خروجی را از هم جدا میکند.
تفاوت JSON Prompt و JSON Mode چیست؟
JSON Prompt فقط یک روش ساختاریافته برای نوشتن درخواست است، اما JSON Mode قابلیتی فنی است که به تولید خروجی با فرمت JSON کمک میکند.
تفاوت JSON Prompt و Structured Output چیست؟
JSON Prompt نحوه نوشتن درخواست را ساختاریافته میکند، اما Structured Output ساختار و فیلدهای خروجی را در سطح فنی کنترل میکند.
چه زمانی باید از JSON Prompt استفاده کنیم؟
وقتی به خروجی ساختاریافته، قابلپردازش یا قابلاستفاده در کد و سیستمهای خودکار نیاز دارید، JSON Prompt انتخاب مناسبی است.
چطور اعتبار JSON تولیدشده توسط هوش مصنوعی را بررسی کنیم؟
میتوانید خروجی را با ابزارها یا توابعی مانند JSON.parse در جاوااسکریپت و json.loads در پایتون اعتبارسنجی کنید.
Gemini Omni 1.1 Flash چیست؟ بررسی قابلیتها و آموزش ساخت ویدیو
جیسون پرامپت چیست؟ راهنمای کامل با نمونه و آموزش عملی
تست نفوذ با هوش مصنوعی PentestGPT (تحلیل امنیت سایبری + نمونه عملی)
گوگل فلو چیست؟ نحوه کار با سایت هوش مصنوعی Google Flow قدم به قدم
هوش مصنوعی Pika چیست؟ آموزش ۰ تا ۱۰۰ ساخت ویدیو رایگان (تستشده)