You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure OpenAI Assistant创建失败:400 Unsupported data type错误求助

解决Azure OpenAI创建Assistant时的400 Unsupported data type错误

问题分析

Chat Completion功能正常,但调用Assistant API创建助手时报400 Unsupported data type,核心原因通常是API版本不兼容、模型参数配置错误或工具权限问题。

解决方案

  • 确保使用兼容的API版本:Assistant API属于beta功能,需要使用2024-02-15-preview或更高版本的API。检查你的apiVersion环境变量是否符合要求。
  • 修正model字段值:创建Assistant时,model字段必须填写Azure OpenAI门户中模型部署的名称,而非官方模型ID(如gpt-4o)。例如你的部署名称是gpt-4o-math,就填这个值。
  • 确认Code Interpreter权限:在Azure OpenAI门户中,检查对应模型部署是否启用了Code Interpreter功能,且当前模型(gpt-4o)支持该工具。
  • 调整客户端初始化参数:AzureOpenAI客户端的deployment参数仅适用于Chat Completion等基础API,Assistant API不需要该参数,建议移除避免冲突。

修正后的代码示例

const dotenv = require("dotenv");
dotenv.config();

const { AzureOpenAI } = require("openai");

const endpoint = process.env["AZURE_OPENAI_ENDPOINT"];
const apiKey = process.env["AZURE_OPENAI_API_KEY"];
const apiVersion = "2024-02-15-preview"; // 指定兼容的预览版API版本
const deploymentName = process.env["DEPLOYMENT"]; // 替换为你的模型部署名称

const client = new AzureOpenAI({ endpoint, apiKey, apiVersion });

async function main() {
  try {
    const assistant = await client.beta.assistants.create({
      name: "Math Tutor",
      instructions: "你是一名私人数学导师。编写并运行代码来解答数学问题。",
      tools: [{ type: "code_interpreter" }],
      model: deploymentName, // 使用部署名称而非模型ID
    });

    console.log("Assistant创建成功:", assistant);
  } catch (error) {
    console.error("创建Assistant出错:", error);
  }
}

main();

额外排查步骤

  1. 登录Azure OpenAI门户,进入「模型部署」页面,确认部署名称的准确性。
  2. 检查API密钥对应的资源是否有访问Assistant API的RBAC权限。
  3. 先尝试创建不带Code Interpreter的简单助手,验证基础调用是否正常,逐步排查工具配置问题。

内容的提问来源于stack exchange,提问作者Zisou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 10:13:12