必须设置JSON Schema约束并提供匹配示例才能让模型严格返回JSON数组。在Model Studio中选择JSON Schema格式,填写含"type": "array"的Schema;Prompt中明确指令+真实类型一致的示例;API调用需传入response_format参数且模型版本须支持JSON Schema。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在火山引擎的Model Studio中调用大模型时,需要让模型严格返回JSON格式的数组(如[{"name":"张三","age":28},{"name":"李四","age":32}]),而非自然语言描述或带额外说明的文本。
设置模型输出为JSON Schema约束
进入Model Studio → 选择已部署的模型服务 → 点击「调试」页签 → 在「请求参数」区域找到「Response Format」选项 → 选择「JSON Schema」。
在下方Schema输入框中粘贴标准JSON Schema定义,必须包含type: "array"且items为对象类型。例如:
{"type": "array", "items": {"type": "object", "properties": {"name": {"type": "string"}, "age": {"type": "integer"}}, "required": ["name", "age"]}}
这一步是强制模型输出结构化数组的前提,【不填Schema或type写成"object"会导致返回单个对象而非列表】。
在Prompt中明确指令并给出示例
在「User Message」输入框顶部添加清晰指令:“请严格按以下JSON Schema返回数据,不要任何解释、不要Markdown代码块、不要前缀后缀,只返回纯JSON数组。”
紧接着换行,给出一个符合Schema的完整示例(非占位符):
[{"name":"王五","age":25},{"name":"赵六","age":31}]
示例必须与Schema完全匹配字段名、类型和嵌套层级,模型会依此进行few-shot推理。如果示例里写了"age":"25"(字符串),而Schema要求integer,模型大概率仍会返回字符串——【示例中的数据类型必须和Schema声明一致】。
调用API时传入response_format参数
若通过HTTP API调用,需在POST请求体中显式携带response_format字段:
{"model": "ep-xxx", "messages": [{"role": "user", "content": "列出两位员工信息"}], "response_format": {"type": "json_schema", "json_schema": {"name": "employee_list", "schema": {"type": "array", "items": {"type": "object", "properties": {"name": {"type": "string"}, "title": {"type": "string"}}, "required": ["name", "title"]}}}}}
注意:该参数仅在支持JSON Schema的模型版本(如Qwen2.5-7B-Instruct-JSON)中生效。旧版模型即使传入也会忽略,直接返回文本。

















