Azure OpenAI批量处理API报错:model_not_found问题排查求助
Azure OpenAI批量处理API报错:model_not_found 问题解决
问题背景
已完成以下操作:
- 在Eastus区域创建Azure OpenAI服务
- 创建global batch类型的GPT-4o(部署名
gpt-4o-bt)和GPT-4o-mini(部署名gpt-4o-mini-bt)部署 - 通过Python脚本成功上传批处理输入文件
test.jsonl - 调用
client.batches.create提交批处理任务时,触发400错误:
BadRequestError: Error code: 400 - {
'errors': {
'data': [
{
'code': 'model_not_found',
'message': "The provided model deployment 'REPLACE-WITH-MODEL-DEPLOYMENT-NAME' does not exist in the AOAI resource. Valid deployments are 'gpt-4o-mini-bt, gpt-4o-bt'. Learn more: https://aka.ms/aoai_batch/errors.",
'line': None,
'param': None
}
],
'object': 'list'
}
}
错误原因
批处理输入的test.jsonl文件中,保留了官方文档的占位符REPLACE-WITH-MODEL-DEPLOYMENT-NAME,未替换为实际创建的部署名称,导致服务无法识别有效模型部署。
解决方法
1. 部署名称的指定位置
部署名称需要在批处理输入的JSONL文件中每个请求的body字段里设置:
每个JSONL行必须包含model字段,值替换为实际的部署名(gpt-4o-mini-bt或gpt-4o-bt)。示例正确格式:
{"custom_id": "request-1", "method": "POST", "url": "/chat/completions", "body": {"model": "gpt-4o-mini-bt", "messages": [{"role": "user", "content": "Hello"}]}} {"custom_id": "request-2", "method": "POST", "url": "/chat/completions", "body": {"model": "gpt-4o-bt", "messages": [{"role": "user", "content": "Explain batch processing"}]}}
2. endpoint参数无需修改
当前代码中的endpoint="/chat/completions"是正确的,批量处理的endpoint对应Chat Completions接口,与单请求接口路径一致,不需要调整。
额外注意事项
- 确保JSONL文件的每一行都是独立合法的JSON对象,没有语法错误
- 所有请求的
model字段必须匹配已创建的global batch类型部署名称
内容的提问来源于stack exchange,提问作者Sifaw Ahil
相关产品推荐
相关产品推荐

