模型目录
查询当前模型及协议支持,按能力与计费单位选择。
模型与价格会变化,请从控制台 → 模型目录或实时 API 读取,不依赖静态清单。
1. 准备查询
准备 Python 3.10+ 与 uv。原生目录 GET /model/v1/models 无需 Key;下面同时查询 OpenAI 兼容目录,需要按快速开始设置 PRAXIS_API_KEY。
期望:已有 Key 环境变量。示例默认使用 https://api.deepraxis.ai;切换环境时,设置 PRAXIS_API_BASE 为 API 域名,不带末尾斜杠或 API 路径。
2. 核对模型与协议
保存为 catalog.py,执行 uv run -q --no-project --with openai --with anthropic --with google-genai python catalog.py。
import os
import httpx
base = os.environ.get("PRAXIS_API_BASE", "https://api.deepraxis.ai")
with httpx.Client(timeout=60.0) as client:
response = client.get(base + "/model/v1/models")
response.raise_for_status()
models = response.json()["data"]
model = next(item for item in models if item["id"] == "deepseek-flash")
assert "openai.chat.completions" in model["supported_apis"]
for field in ("id", "type", "supported_apis", "context_window", "pricing"):
print(field + ":", model[field])
print("X-Request-Id:", response.headers.get("x-request-id"))
filtered = client.get(
base + "/openai/v1/models",
params={"api": "responses"},
headers={"Authorization": "Bearer " + os.environ["PRAXIS_API_KEY"]},
)
filtered.raise_for_status()
ids = [item["id"] for item in filtered.json()["data"]]
assert "deepseek-flash" in ids
print("Responses models:", ids)
print("X-Request-Id:", filtered.headers.get("x-request-id"))期望:退出码 0,打印 deepseek-flash 的类别、协议、上下文和价格,以及包含该 ID 的 Responses 列表。示例核对于 2026-10-13;以查询时的结果为准。若断言失败,不要向所选协议发送请求,先从最新列表选择支持它的模型。
3. 根据结果选择
先按 type 找任务类别,再用 supported_apis 确认要调用的协议;不能从模型名称推断协议。原生列表还可用 supported_api=openai.responses 筛选;OpenAI 兼容列表的 api=chat,embeddings 表示匹配任一协议。
再核对上下文和输出限制,以及输入、输出、缓存或非 token 计量的单价。模型与目录概念解释计费单位及可用率;列出模型 API提供字段定义。
期望:所选 ID 支持应用需要的协议,限制能容纳请求,价格单位与任务一致。最后按快速开始发起真实调用并核对实付费用。