模型权限与 Key 范围
说明 Browse / Call、三层交集,以及 403 model_not_allowed 的排查。概念见 产品概念 · 模型权限;控制台操作见 控制台 · 模型权限。
| 我想… | 去这里 |
|---|---|
| 配置工作区 / Key | 控制台 · 模型权限 |
| 打开控制台 | 控制台 ↗ |
| 错误码总表 | 错误码 |
权限层级
| 层级 | L1 — 账户 | L2 — 工作区 | L3 — API 密钥 |
|---|---|---|---|
| 作用范围 | 账号整体 | 当前工作区 | 单个 API Key |
| 配置方式 | 平台 / 商务开通 | 侧栏 防护规则 | 创建 / 编辑 Key 时的 模型访问 |
| 是否可选 | 天花板 | 本区范围 | 可选(未配则继承工作区) |
一次推理取 L1 ∩ L2 ∩ L3。
Browse 与 Call
| 概念 | 说明 |
|---|---|
| Browse(浏览) | 在 模型列表 / 模型详情 可见。由 L1 + L2 控制(不含 L3)。 |
| Call(调用) | 可实际推理。由 L1 + L2 + L3 控制。 |
能 Browse 不一定能 Call;能 Call 一定可 Browse。
entitlement 字段
json
{
"entitlement": {
"allowed": true,
"browse_allowlist": true,
"call_allowed": true
}
}| 字段 | 说明 |
|---|---|
allowed | 是否可见(Browse) |
scope | 不可见时的拒绝层:"account" / "workspace" |
browse_allowlist | 是否在 Browse 允许列表中 |
call_allowed | 当前 API Key 是否可 Call |
用 API Key 调 GET /v1/models 时,通常只返回能 Call 的模型。
常见场景
| 场景 | 原因 |
|---|---|
列表可见,调用 403 | L3 Key 未授予该模型 |
| 列表不可见 | L1 / L2 未开放 Browse |
403 model_not_allowed | 三层交集不含该模型 |
404 model_not_found | 模型不存在,或 hidden 且未授权 |
403 model_not_allowed 处理
- 核对
modelID(获取模型 / 模型广场 ↗)。 - 检查该 Key 的 模型访问(API 密钥)。
- 检查工作区 防护规则(模型权限)。
- 用同一 Key 调
/v1/models/{modelCode},看entitlement.call_allowed。
| 场景 | 操作 |
|---|---|
| L3 未授权 | 编辑 Key 允许列表或改为全量 |
| L2 未授权 | 放宽防护规则 |
| L1 未授权 | 联系商务 / 支持 |
示例
bash
curl -sS -w "\n%{http_code}" "${TRINITY_BASE_URL}/chat/completions" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${TRINITY_API_KEY}" \
-d '{"model": "gpt-5.5","messages":[{"role":"user","content":"hello"}],"max_tokens":16}'
curl -sS "${TRINITY_BASE_URL}/models/gpt-5.5" \
-H "Authorization: Bearer ${TRINITY_API_KEY}"