功能
每个模型通过 API 能做什么,逐个模型列出:工具、图片输入、推理、JSON 输出、prompt 缓存、网页搜索和流式传输。
所有模型都通过相同的三个端点、使用相同的密钥访问。两张表展示了模型之间的差异。破折号表示该模型在没有该功能的情况下作答。
Shannon 模型
| 模型 | 工具 | 图片 | 推理 | 强度 | JSON 对象 | JSON schema | 缓存 | 搜索 | 流式传输 |
|---|---|---|---|---|---|---|---|---|---|
shannon-1.6-lite | 是 | 是 | — | — | 是 | 是 | — | 是 | 是 |
shannon-1.6-pro | 是 | 是 | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-2-lite | 是 | — | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-2-pro | 是 | — | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-3 | 是 | 是 | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-3-pro | 是 | 是 | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-3.1 | 是 | 是 | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-3.1-pro | 是 | 是 | 是 | — | 是 | 是 | — | 是 | 是 |
shannon-3.5 | 是 | — | — | — | 是 | 是 | — | — | 是 |
shannon-coder-1 | 是 | — | 是 | — | 是 | 是 | — | — | 是 |
托管开源权重模型
托管模型的 id 由其名称和变体以连字符连接而成,例如 DeepSeek-V4-Pro-0813-3BIT-REAP。
| 模型 | 工具 | 图片 | 推理 | 强度 | JSON 对象 | JSON schema | 缓存 | 搜索 | 流式传输 |
|---|---|---|---|---|---|---|---|---|---|
DeepSeek-V4-Pro-0813 3BIT-REAP | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
GLM-5.2 3BIT-REAP | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
Kimi-K3 3BIT-REAP | 是 | 是 | 是 | 是 | 是 | 是 | 是 | — | 是 |
Nemotron3Ultra 3BIT-REAP | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
MiniMax-M3 3BIT-REAP | 是 | 是 | 是 | 是 | 是 | 是 | 是 | — | 是 |
DeepSeek-V4-Flash-0731 W4A16-AUTOROUND-REAP | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
Kimi-K2.6 W4A16-AUTOROUND-REAP | 是 | 是 | 是 | 是 | 是 | 是 | 是 | — | 是 |
Laguna-S-2.1 W4A16-AUTOROUND-REAP | 是 | — | 是 | 是 | — | — | 是 | — | 是 |
inkling W4A16-AUTOROUND-REAP | 是 | 是 | 是 | 是 | 是 | — | 是 | — | 是 |
MiMo-V2.5-Pro W8A16 | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
MiMo-V2.5 W8A16 | 是 | 是 | 是 | 是 | 是 | 是 | 是 | — | 是 |
Hy3 W8A16 | 是 | — | 是 | 是 | 是 | 是 | 是 | — | 是 |
各列的含义
- 工具. 你在
tools中描述函数,模型回复它想要发起的调用,由你的代码运行。所有模型都支持工具。托管开源权重模型会应用强制的tool_choice。 函数调用 - 图片输入. 模型可读取用户消息中以 data URL 或地址形式发送的图片。
shannon-2-lite和shannon-2-pro在同时发送tools或response_format的请求中也能读取图片。Shannon 3 系列还能读取文档。 图片与文件 - 推理. 回复中可以在答案旁边,用单独的字段携带模型的推理文本。 推理强度
- 推理强度. 通过请求字段设定模型推理的深度:
off、low、medium或high。Shannon 模型自行决定深度。 推理强度 - JSON 对象. 使用
response_format: {"type": "json_object"}时,答案是 JSON,但没有规定的结构。适用于/v1/chat/completions和/v1/responses。 结构化输出 - JSON schema. 当
response_format的类型为json_schema时,答案遵循你发送的 schema。适用于/v1/chat/completions和/v1/responses。 结构化输出 - Prompt 缓存. 开头与同一模型上近期 prompt 相同的 prompt 会从缓存读取,缓存部分按输入价格的 25% 计费。无需任何请求字段。 Prompt 缓存
- 网页搜索. 使用
web_search: true时,API 会先搜索网页,并在模型回答前把结果交给它。适用于/v1/chat/completions和/v1/messages。它是请求的字段,在GET /v1/models中没有对应标志。 内置网页搜索 - 流式传输. 使用
stream: true时,回复会在模型写作的同时以 server-sent events 形式到达。所有模型在三个端点上都支持流式传输。 流式
从 GET /v1/models 获得相同的信息
GET https://api.shannon-ai.com/v1/models
GET /v1/models 列出每个模型及其 capabilities 对象,因此程序可以直接读取这些信息,而不必看本页。该端点无需密钥。
from openai import OpenAI
client = OpenAI(api_key="YOUR_API_KEY", base_url="https://api.shannon-ai.com/v1")
for model in client.models.list():
print(model.id, getattr(model, "capabilities", None)) import OpenAI from "openai";
const client = new OpenAI({ apiKey: "YOUR_API_KEY", baseURL: "https://api.shannon-ai.com/v1" });
for await (const model of client.models.list()) {
console.log(model.id, model.capabilities);
} curl https://api.shannon-ai.com/v1/models data 中两个条目的 id 和 capabilities:
200 JSON
[
{
"id": "shannon-3",
"capabilities": {
"tools": true,
"vision": true,
"reasoning": true,
"reasoning_effort": false,
"streaming": true,
"json_schema": true
}
},
{
"id": "Kimi-K3-3BIT-REAP",
"capabilities": {
"tools": true,
"vision": true,
"reasoning": true,
"reasoning_effort": true,
"streaming": true,
"response_format": true,
"json_schema": true,
"prompt_caching": true
}
}
] | 列 | capabilities 中的标志 |
|---|---|
| 工具 | tools |
| 图片输入 | vision |
| 推理 | reasoning |
| 推理强度 | reasoning_effort |
| JSON 对象 | response_format |
| JSON schema | json_schema |
| Prompt 缓存 | prompt_caching |
| 网页搜索 | 不是标志:请求字段 web_search。 |
| 流式传输 | streaming |
response_format和prompt_caching是托管开源权重条目的标志。Shannon 条目只用json_schema表示 JSON 输出,它同时代表两种 JSON 模式。shannon-2-lite和shannon-2-pro的vision为true:在同时发送tools或response_format的请求中,它们也能读取图片。
超出模型所在行的情况
托管开源权重模型会拒绝超出其所在行的图片或 JSON 模式。拒绝发生在从你的余额中扣除任何内容之前:
| 状态码 | 类型 | 消息 | 时机 |
|---|---|---|---|
400 | invalid_request_error | <id> does not accept image input | 向不支持图片输入的托管开源权重模型发送了图片。 |
400 | invalid_request_error | <id> does not accept response_format | 向两种 JSON 模式都不支持的托管开源权重模型请求了 JSON 输出。 |
400 | invalid_request_error | <id> does not accept response_format json_schema; use json_object | 向只支持 JSON 对象模式的托管开源权重模型发送了 schema。 |
Shannon 模型对此类请求返回状态码 200:超出其所在行的功能不会参与回答。 错误处理