":{"message":"\u003c400\u003e ***.***.InvalidParameter: Failed to download multi...

2026年07月06日 14:16 35.19 秒 success

错误信息

DMX video 400 Bad Request from https://www.dmxapi.cn/v1/chat/completions: {"error":{"message":"\u003c400\u003e ***.***.InvalidParameter: Failed to download multimodal content","type":"rix_api_error","param":"","code":"invalid_parameter_error"}}

AI 解决方案

🔍 报错分析

1. 🌐 错误翻译


原文:<400> ***.***.InvalidParameter: Failed to download multimodal content
译文:<400> ***.***.参数无效:下载多模态内容失败

2. 🎯 原因分析


  • 根本原因:请求参数无效,导致API无法下载多模态内容(如视频、图片等多媒体资源)

  • 错误位置:向 https://www.dmxapi.cn/v1/chat/completions 发送请求时,参数中可能包含错误的多模态内容URL、格式不兼容或缺失必要参数

  • 上下文:400状态码表明是客户端请求错误,具体是 InvalidParameter(参数无效),直接导致无法下载请求的多模态内容
  • 3. 💡 解决方案

    #### 步骤1:检查请求参数
    确保向API传递的多模态内容参数(如媒体URL、文件格式、编码等)完全符合DMXAPI的格式要求,核心验证以下点:

  • 媒体URL必须可公网访问,且无访问限制(如无token校验、IP白名单)

  • 支持的媒体类型需匹配API文档(例如仅支持MP4、JPG等指定格式)

  • 若需携带附加参数(如 content_typetimeout),必须完整且值合法
  • #### 步骤2:修正后请求示例(以常见的多模态请求为例)

    // 修复后的请求代码(需根据实际情况调整参数名,核心是保证参数合法)
    const requestBody = {
      model: "dmx-video-model", // 确保使用支持多模态的模型
      messages: [
        {
          role: "user",
          content: [
            {
              type: "text",
              text: "分析这段视频内容"
            },
            {
              type: "video_url", // 关键:参数类型和值必须符合API规范
              url: "https://example.com/valid-video.mp4" // 确保URL可访问、格式支持
            }
          ]
        }
      ],
      // 补充必要的附加参数(根据DMXAPI文档要求添加,例如超时设置)
      multimodal_config: {
        timeout: 30000, // 单位毫秒,避免下载超时
        allowed_formats: ["mp4", "mov"] // 确保格式在允许范围内
      }
    };
    
    // 发送请求(以fetch为例)
    fetch("https://www.dmxapi.cn/v1/chat/completions", {
      method: "POST",
      headers: {
        "Content-Type": "application/json",
        "Authorization": "Bearer YOUR_API_KEY" // 替换为有效的API密钥
      },
      body: JSON.stringify(requestBody)
    })
    .then(response => response.json())
    .then(data => console.log(data))
    .catch(error => console.error("请求失败:", error));
    

    #### 步骤3:验证参数有效性

  • 单独测试媒体URL的可访问性(用浏览器或 curl 命令访问,确认返回200且无重定向)

  • 对照DMXAPI官方文档,核对请求参数的字段名、类型、取值范围,删除未文档化的冗余参数
  • 4. 🛡️ 预防措施


  • 参数校验前置:在发送请求前,先通过本地校验工具(如JSON Schema校验器)验证请求参数格式,确保完全匹配API文档要求,避免漏传、错传参数

  • 工具辅助排查:使用Postman等API调试工具发送请求,开启响应详细日志功能,快速定位参数传递环节的问题;同时借助 curl -v 命令测试媒体URL的连通性和响应状态,提前排除URL不可用的问题

  • 文档对照开发:严格按照DMXAPI的《多模态接口参数规范》文档开发,重点关注参数的必选/可选属性、数据类型和取值范围,避免凭经验