Model Not Found
Model Not Found 错误表示请求中指定的模型名称无效或不可用。这是接入 New API 时常见的问题。
错误示例
{ "error": { "message": "The model 'gpt-4o-pro' does not exist", "type": "invalid_request_error", "code": "model_not_found", "param": "model" }}原因分析
| 原因 | 说明 |
|---|---|
| 模型名称错误 | 拼写错误、大小写不匹配或使用了过时的名称 |
| 模型未启用 | 该模型在平台上存在但未对你开放 |
| 模型已下线 | 模型已被官方停止服务 |
| Key 无权限 | 你的 API Key 没有访问该模型的权限 |
如何查看可用模型列表
通过 /v1/models 接口查看当前 Key 可用的所有模型:
curl "$BASE_URL/v1/models" \ -H "Authorization: Bearer $API_KEY"响应示例:
{ "object": "list", "data": [ { "id": "gpt-4o", "object": "model", "created": 1700000000, "owned_by": "openai" }, { "id": "gpt-4o-mini", "object": "model", "created": 1700000000, "owned_by": "openai" }, { "id": "claude-3-5-sonnet-20241022", "object": "model", "created": 1700000000, "owned_by": "anthropic" } ]}只能使用返回列表中存在的模型
id。如果目标模型不在列表中,说明该模型未对你开放或已下线。
排查步骤
1. 检查模型名称拼写
对比请求中的模型名称与可用模型列表中的名称,确保完全一致(包括大小写)。
# 错误:大小写不匹配-d '{"model": "GPT-4O", ...}'
# 正确-d '{"model": "gpt-4o", ...}'2. 检查模型名称是否有多余字符
# Python:打印模型名称,检查隐藏字符model = "gpt-4o"print(repr(model)) # 查看原始字符串,检查是否有隐藏字符3. 确认模型是否在可用列表中
# 查找特定模型是否在可用列表中curl -s "$BASE_URL/v1/models" \ -H "Authorization: Bearer $API_KEY" | \ python3 -c "import sys,json; data=json.load(sys.stdin); [print(m['id']) for m in data['data'] if 'gpt' in m['id'].lower()]"4. 在管理后台查看模型启用状态
- 登录管理后台
- 进入 模型管理 或 渠道管理 页面
- 查看目标模型是否已启用
- 确认你的 Key 是否有权限访问该模型
正确的模型名称格式
常见模型名称示例
| 提供商 | 正确的模型名称 |
|---|---|
| OpenAI | gpt-4o, gpt-4o-mini, gpt-4-turbo, o1, o1-mini |
| Anthropic | claude-3-5-sonnet-20241022, claude-3-5-haiku-20241022 |
gemini-2.0-flash, gemini-1.5-pro | |
| DeepSeek | deepseek-chat, deepseek-reasoner |
使用示例
curl "$BASE_URL/v1/chat/completions" \ -H "Authorization: Bearer $API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "gpt-4o", "messages": [{"role": "user", "content": "Hello"}] }'from openai import OpenAI
client = OpenAI( api_key="sk-your-api-key", base_url="https://api.example.com/v1")
response = client.chat.completions.create( model="gpt-4o", # 确保名称与可用列表一致 messages=[{"role": "user", "content": "Hello"}])常见问题
模型名称带日期 vs 不带日期
部分模型名称包含日期后缀(如 claude-3-5-sonnet-20241022),有些则只有简写。请以 /v1/models 返回的名称为准。
不同渠道的模型名称可能不同
New API 支持通过多个渠道聚合模型。同一个模型在不同渠道可能有不同的名称映射。如果不确定使用哪个名称,请先查询可用模型列表。