diff --git a/server/internal/proxy/convert/json_responses.go b/server/internal/proxy/convert/json_responses.go index 2c12c87..abaf567 100644 --- a/server/internal/proxy/convert/json_responses.go +++ b/server/internal/proxy/convert/json_responses.go @@ -240,11 +240,9 @@ func chatToResponsesReq(body []byte) ([]byte, error) { if len(system) > 0 { out["instructions"] = strings.Join(system, "\n") } - if len(input) == 1 { - out["input"] = input[0] // 单条消息项 - } else { - out["input"] = input - } + // input 必须是数组:部分上游(如火山方舟)只接受 []*InputItem, + // 单对象会被拒(400 Mismatch type)。 + out["input"] = input if len(req.Tools) > 0 { tools := make([]any, 0, len(req.Tools))