پرش به محتوا
همه مستندات

راهنما

خروجی JSON

با response_format از DeepSeek JSON بخواه و ساختار موردنظر را در پرامپت شرح بده. همیشه پاسخ را تجزیه کن و پیش از اعتماد، بررسی‌اش کن.

بررسی‌شده در ۴ آبان ۱۴۰۵

درخواست JSON

Python
import json
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://nokeep.ai/v1",
    api_key=os.environ["NOKEEP_API_KEY"],
)

reply = client.chat.completions.create(
    model="deepseek-v4.1-flash-uncensored",
    response_format={"type": "json_object"},
    messages=[
        {"role": "system", "content": 'Answer as JSON: {"title": string, "tags": string[]}'},
        {"role": "user", "content": "A short story about a lighthouse keeper's last night."},
    ],
)
data = json.loads(reply.choices[0].message.content)
print(data["title"], data["tags"])

response_format همان‌طور که می‌فرستی به DeepSeek می‌رسد، از جمله json_schema. ساختار را در پرامپت هم شرح بده: مدل همان را می‌خواند.

با GLM

glm-5.3-flash-uncensored مقدار response_format را نمی‌پذیرد؛ حذف می‌شود و در x-nokeep-ignored نام آن می‌آید. JSON را در پیام سیستم بخواه و پاسخ را به همان شکل تجزیه کن.

بررسی آنچه برمی‌گردد

  • با json.loads یا JSON.parse داخل try تجزیه کن، و در خطای تجزیه یک بار دوباره امتحان کن.
  • بررسی کن فیلدهای موردنیازت هستند و نوع درستی دارند. یک اعتبارسنج ساختار مثل Pydantic یا Zod این کار را در یک خط انجام می‌دهد.
  • به پاسخ جا بده: max_tokens خیلی کوچک، JSON را پیش از بسته شدن قطع می‌کند.