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

使用Azure OpenAI JavaScript SDK 2.0.0-beta.1时遇ResourceNotFound错误

问题:Azure OpenAI JavaScript SDK 2.0.0-beta.1 报404 Resource not found错误

我尝试使用最新版本的Azure OpenAI JavaScript SDK(2.0.0-beta.1)连接服务,但始终出现Resource not found错误,旧版本(1.0.0-beta.12)则完全正常。

环境配置

AZURE_OPENAI_ENDPOINT="https://xxx.openai.azure.com/"
AZURE_OPENAI_API_KEY="xxxxyyyyxxxxyyyyxxxxyyyyxxxxyyyy"
AZURE_OPENAI_CHAT_COMPLETION_MODEL_DEPLOYMENT_ID="gpt-4o"
AZURE_OPENAI_API_VERSION="2024-04-01-preview"

客户端创建代码

azureOpenAIClient = new AzureOpenAI({
    baseURL: process.env.AZURE_OPENAI_ENDPOINT,
    // apiKey: process.env.AZURE_OPENAI_API_KEY, (已尝试取消注释)
    deployment: process.env.AZURE_OPENAI_CHAT_COMPLETION_MODEL_DEPLOYMENT_ID,
    apiVersion: process.env.AZURE_OPENAI_API_VERSION,
});

调用代码

const messages: OpenAI.ChatCompletionMessageParam[] = [
    { role: 'system', content: systemMessage },
    { role: 'user', content: userMessage },
];
const result = await azureOpenAIClient.chat.completions.create(
    {
        messages,
        model: '',
        response_format: { type: jsonOutput ? 'json_object' : 'text' },
    },
    {},
);
let response = '';
for await (const choice of result.choices) {
    response += choice.message?.content;
}

更新
堆栈跟踪信息:

NotFoundError: 404 Resource not found
    at APIError.generate (webpack-internal:///(action-browser)/../../node_modules/openai/error.mjs:67:20)
    at AzureOpenAI.makeStatusError (webpack-internal:///(action-browser)/../../node_modules/openai/core.mjs:304:65)
    at AzureOpenAI.makeRequest (webpack-internal:///(action-browser)/../../node_modules/openai/core.mjs:347:30)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
....其余为本地文件列表
解决方案

造成404错误的核心原因是SDK 2.x版本的参数结构与1.x版本不兼容,以下是具体修正点:

  • 移除客户端初始化的deployment参数:SDK 2.0.0-beta.1不再支持在客户端初始化时指定deployment,部署ID需要在API调用时通过model字段传入。
  • 必须显式传入API密钥:取消注释apiKey参数的代码,确保SDK能获取到合法的认证密钥。
  • 调用时model字段不能为空:将model设置为你的部署ID(即AZURE_OPENAI_CHAT_COMPLETION_MODEL_DEPLOYMENT_ID的值),空值会导致请求路径错误。

修改后的客户端代码

azureOpenAIClient = new AzureOpenAI({
    baseURL: process.env.AZURE_OPENAI_ENDPOINT,
    apiKey: process.env.AZURE_OPENAI_API_KEY, // 显式传入密钥
    apiVersion: process.env.AZURE_OPENAI_API_VERSION,
});

修改后的调用代码

const result = await azureOpenAIClient.chat.completions.create({
    messages,
    model: process.env.AZURE_OPENAI_CHAT_COMPLETION_MODEL_DEPLOYMENT_ID, // 指定部署ID
    response_format: { type: jsonOutput ? 'json_object' : 'text' },
});

另外确认AZURE_OPENAI_API_VERSION="2024-04-01-preview"与你的Azure OpenAI资源兼容,该版本支持gpt-4o部署,无需调整。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 20:12:43