现象
用户使用私有部署的FastGPT v4.5.1版本,配置基于api-for-open-llm项目包装的中转OpenAI接口,设置OPENAI_BASE_URL=http://api-openllm-host/v1,调用时出现报错。报错信息为Error: 500 status code (no body),报错栈涉及OpenAI SDK的请求处理、FastGPT的oneapi.ts chatNode逻辑以及completions.ts接口处理流程。
可能原因
可能的原因包括中转接口返回了500状态码但未携带响应体,配置的OPENAI_BASE_URL路径不符合要求,或者中转接口未正确兼容OpenAI标准接口格式。参考同类issue的排查方向,也需确认接口的请求参数和响应结构是否匹配规范。
排查步骤
- 使用curl等工具直接请求中转接口的
/v1/chat/completions路径,检查返回的HTTP状态码和响应体内容。 - 核对FastGPT配置中的
OPENAI_BASE_URL参数,确保格式为http://api-openllm-host/v1,末尾不添加额外的路径片段或斜杠。 - 确认中转接口是否正确实现了OpenAI标准的聊天补全接口逻辑,包括请求参数校验和响应格式输出。
- 检查当前使用的FastGPT镜像版本为v4.5.1,确认镜像未出现兼容性异常。
解决与验证
解决方法首先修正OPENAI_BASE_URL的配置,确保路径准确无误。随后验证中转接口的返回内容符合OpenAI接口规范,保证返回状态码和响应体格式正确。验证时,重新部署正确配置的FastGPT并发起聊天请求,确认不再出现Error: 500 status code (no body)的报错,即可确认问题解决。