Bad Request {"error":{"message":"messages are required","type":"bad_response_sta...

2026年01月21日 14:31 状态: processing

🚨 错误信息

Chat completion request error: Bad Request {"error":{"message":"messages are required","type":"bad_response_status_code","param":"","code":"bad_response_status_code"}}

🤖 AI解决方案

错误翻译

原文:messages are required
译文:消息是必需的

原因分析
该错误通常发生在调用API时,请求的JSON体中缺少必填的messages字段或该字段为空。报错信息明确指出,OpenAI或兼容API的聊天完成(chat completion)请求中,messages 数组是必需参数。

解决方案
请确保您的请求中包含正确格式的 messages 数组。下面是一个标准JSON请求体示例(以JavaScript为例):

javascript
const requestBody = {
model: "gpt-3.5-turbo",
messages: [
{
role: "user", // 或 "system", "assistant"
content: "你的消息内容在这里"
}
],
// 其他可选参数...
};

  • 关键检查点

  • 1. 确认 messages 键名拼写正确。
    2. 确认 messages 的值是一个 非空数组
    3. 确认数组中每个对象都包含 rolecontent 字段。

    预防措施

  • 使用类型检查或Schema验证:在发送请求前,使用如Zod、Joi等库验证请求体的结构,确保 messages 数组格式正确。

  • 封装请求函数:在项目中统一封装API调用函数,在函数内部预先检查 messages 参数是否存在且有效,避免散落的调用点遗漏此参数。