ガイド
JSON出力
response_format でDeepSeekにJSONを頼み、プロンプトで欲しい形を説明します。返信は必ず解析し、信頼する前に確認してください。
2026年10月26日 確認
JSONを頼む
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 は、json_schema を含め、送ったとおりにDeepSeekへ届きます。形はプロンプトにも書いてください。モデルが読むのはそちらだからです。
GLMの場合
glm-5.3-flash-uncensored は response_format を受け付けません。取り除かれ、x-nokeep-ignored に名前が出ます。システムメッセージでJSONを頼み、返信も同じように解析してください。
返ってきたものを確認する
json.loadsまたはJSON.parseをtryの中で使って解析し、解析エラーなら一度だけ再試行してください。- 必要なフィールドがあり、型が正しいか確認してください。PydanticやZodのようなスキーマ検証ツールなら1行でできます。
- 返信には余裕を持たせてください。
max_tokensが小さすぎると、JSONが閉じる前に途切れます。