错误信息: The role only supports :`user`、`assistant` - `messages.[0]` 堆栈信息: AI_APICa...
错误信息
错误名称: AI_APICallError
错误信息: The role only supports :`user`、`assistant` - `messages.[0]`
堆栈信息: AI_APICallError: The role only supports :`user`、`assistant` - `messages.[0]`
at file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:52075:11
at async postToApi$2 (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:51970:24)
at async OpenAICompatibleChatLanguageModel.doStream (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:69970:48)
at async wrapStream (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:105780:32)
at async fn (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:104430:17)
at async file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:100701:19
at async _retryWithExponentialBackoff (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:100891:10)
at async streamStep (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:104399:109)
at async fn (file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:104716:5)
at async file:///D:/Program%20Files/Cherry%20Studio/resources/app.asar/out/renderer/assets/store-D-J5UN_L.js:100701:19
错误原因: "[undefined]"
状态码: 400
请求路径: https://www.dmxapi.cn/v1/chat/completions
请求体: {
"model": "Baichuan-M3-Plus",
"user": "[undefined]",
"max_tokens": "[undefined]",
"temperature": "[undefined]",
"top_p": "[undefined]",
"frequency_penalty": "[undefined]",
"presence_penalty": "[undefined]",
"response_format": "[undefined]",
"stop": "[undefined]",
"seed": "[undefined]",
"serviceTier": "[undefined]",
"reasoning_effort": "[undefined]",
"verbosity": "[undefined]",
"messages": [
{
"role": "system",
],
"tools": "[undefined]",
"tool_choice": "[undefined]",
"stream": true,
"stream_options": "[undefined]"
}
响应首部: {
"cache-control": "no-cache",
"content-type": "text/event-stream",
"date": "Tue, 07 Jul 2026 21:33:59 GMT",
"document-policy": "include-js-call-stacks-in-crash-reports",
"server": "nginx",
"x-dmx-api-version": "v2.3.2",
"x-oneapi-request-id": "20260707213359365325333c14228f5qYvpTdQv"
}
响应内容: {
"error": {
"message": "The role only supports :`user`、`assistant` - `messages.[0]`",
"type": "invalid_request_error",
"param": "",
"code": null
}
}
数据: {
"error": {
"message": "The role only supports :`user`、`assistant` - `messages.[0]`",
"type": "invalid_request_error",
"param": "",
"code": null
}
}
AI 解决方案
🔧 错误分析
1. 🌐 错误翻译
原文:The role only supports :`user`、`assistant` - `messages.[0]`
译文:角色仅支持:`user`、`assistant` - `messages.[0]`
2. 🎯 原因分析
该错误是API请求参数格式错误。从请求体可以看到,
messages数组的第一个元素(messages.[0])使用了role: "system",但API要求消息角色只能是user或assistant,不支持system角色。错误明确指出问题发生在消息列表的第一条消息的角色设置上。3. 💡 解决方案
修复方法:移除或转换system角色消息
system角色消息改为user角色,将系统提示内容合并到用户消息中// 修复后的请求体示例
{
"model": "Baichuan-M3-Plus",
"messages": [
{
"role": "user", // 将 system 改为 user
"content": "你是 helpful assistant" // 将系统提示内容放在用户消息中
}
],
"stream": true
}
4. 🛡️ 预防措施
messages数组进行格式验证,确保每条消息的role只能是user或assistant