云端大模型与本地模型,一套 API 全部接入
TokenHub 兼容 OpenAI 接口规范,统一对接主流大厂模型与 Ollama、vLLM 等本地推理服务。业务方只需改一行 model,即可在不同模型之间切换;路由、容灾、计量与配额由网关统一完成。
- 15+云端模型厂商
- 7类本地推理框架
- 1套统一 API
下载后部署在你自己的服务器上:单机 Docker、集群高可用或离线内网均可。云端模型使用你自己的厂商 API Key。
- OAOpenAI主力对话 · 权重 30云端正常
- 通通义千问中文对话 · 权重 40云端正常
- DSDeepSeek代码与推理 · 权重 30云端正常
- AnAnthropic ClaudeFallback 备用云端备用
- OlOllama · GPU-01http://10.0.8.21:11434本地正常
- vLvLLM · 推理集群http://10.0.8.30:8000本地正常
主流大厂模型 + 本地推理框架
填入你自己的厂商 API Key 或本地服务地址即可接入;云端模型费用由你直接与厂商结算,本地模型没有调用费用。厂商上新模型,通常无需升级 TokenHub。
共 22 个模型来源
大厂模型 云端 API
- OpenAIGPT 系列对话、Embedding对话Embedding多模态
- Anthropic Claude长文本理解与代码对话多模态
- Google Gemini原生多模态模型对话Embedding多模态
- DeepSeek通用对话与深度推理对话
- 通义千问阿里云百炼模型服务对话Embedding重排序多模态
- 文心百度千帆模型服务对话Embedding多模态
- 智谱 GLMGLM 系列开放平台对话Embedding多模态
- Kimi月之暗面长上下文模型对话多模态
- 豆包火山方舟模型服务对话Embedding多模态
- 腾讯混元腾讯云大模型服务对话Embedding多模态
- MiniMax对话与文本向量对话Embedding
- 讯飞星火科大讯飞认知大模型对话Embedding
- Mistral欧洲模型厂商,开放权重与商用模型对话Embedding多模态
- Azure OpenAI按区域部署的企业版对话Embedding多模态
- AWS Bedrock一个账号调用多家厂商模型对话Embedding重排序多模态
本地模型 私有部署 · 数据不出内网
- Ollama单机一键运行开放权重模型对话Embedding多模态
- vLLM高吞吐 GPU 推理引擎对话Embedding重排序多模态
- Xinference分布式模型推理平台对话Embedding重排序多模态
- LM Studio桌面端本地模型服务对话Embedding多模态
- LocalAICPU 友好的本地推理对话Embedding重排序多模态
- SGLang结构化生成推理框架对话Embedding多模态
- 任意 OpenAI 兼容接口自研或第三方推理服务对话Embedding
当前筛选条件下没有匹配的模型来源,请调整筛选条件。
能力标签为接入层面的典型支持情况,具体取决于厂商开放的模型,以管理后台自动发现结果为准。品牌名称归各自权利人所有。
云端与本地,同一种调用方式
沿用 OpenAI 官方 SDK 与现有代码,只把 base_url 指向 TokenHub。云端模型与本地模型的差别,只是 model 字段里的一个名字。
auto- 交给路由策略自动选择模型
deepseek-chat- 直接使用云端厂商的模型名
ollama/qwen2.5:7b- 本地渠道前缀 + 本地模型名
team-default- 管理员定义的模型别名,可随时改指向
- 兼容 Chat Completions、Embeddings、流式输出与函数调用
- 厂商密钥加密保存在你部署的 TokenHub 中,业务方只持有 TokenHub Key
- 不同厂商的参数差异与错误码由网关统一转换
from openai import OpenAI
client = OpenAI(
# 替换为你部署的 TokenHub 地址
base_url="http://localhost:8080/v1",
api_key="th-your-api-key",
)
msgs = [{"role": "user", "content": "把这段需求整理成任务清单"}]
# 云端模型:使用厂商模型名
cloud = client.chat.completions.create(
model="deepseek-chat", messages=msgs)
# 本地模型:只改 model,其余代码完全一致
local = client.chat.completions.create(
model="ollama/qwen2.5:7b", messages=msgs)
# Embedding 同样走统一入口
vec = client.embeddings.create(
model="ollama/bge-m3", input=["差旅报销流程"])import OpenAI from "openai";
const client = new OpenAI({
// 替换为你部署的 TokenHub 地址
baseURL: "http://localhost:8080/v1",
apiKey: process.env.TOKENHUB_API_KEY,
});
const messages = [{ role: "user", content: "把这段需求整理成任务清单" }];
// 云端与本地模型,调用方式完全一致
for (const model of ["qwen-plus", "ollama/qwen2.5:7b"]) {
const stream = await client.chat.completions.create({
model, messages, stream: true,
});
for await (const chunk of stream) {
process.stdout.write(chunk.choices[0]?.delta?.content ?? "");
}
}# 地址替换为你部署的 TokenHub 地址
# 云端模型
curl http://localhost:8080/v1/chat/completions \
-H "Authorization: Bearer $TOKENHUB_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "deepseek-chat",
"messages": [{"role": "user", "content": "你好"}]}'
# 本地模型:同一个地址、同一把 Key
curl http://localhost:8080/v1/chat/completions \
-H "Authorization: Bearer $TOKENHUB_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "ollama/qwen2.5:7b",
"messages": [{"role": "user", "content": "你好"}]}'每一次请求,都交给最合适的模型
把模型选择从业务代码里拿出来,由网关按策略决策。策略在管理后台配置,修改后实时生效,无需改代码或发版。
- 按成本路由:简单请求优先走本地(无调用费用)或低单价模型,复杂任务再调用高阶模型
- 按延迟路由:根据各渠道近期响应时间动态分配流量,优先保证体验
- 按能力路由:需要函数调用、多模态或长上下文时,只在具备该能力的模型中选择
右侧为交互示意:切换策略查看流量分配变化,或模拟主模型故障观察自动切换。
/v1/chat/completionsmodel: "auto"规则:单价最低的健康渠道优先,本地模型承接常规请求
-
通义千问云端 · 主模型0%健康
-
DeepSeek云端 · 备用0%健康
-
本地 QwenvLLM · 内网0%健康
全部渠道健康,按「成本优先」策略分配流量。
Fallback 主备切换
为每个模型配置有序备用链路,主模型超时、限流或报错时自动切换,业务侧无感知。
负载均衡
同一模型挂载多个 Key 或多个本地节点,按权重、轮询或最少连接分摊流量,突破单 Key 限额。
自动重试
对可恢复错误按指数退避重试,可设置最大次数与总超时,避免重试风暴放大故障。
熔断保护
渠道错误率超过阈值时自动熔断并定期探活,恢复后逐步放量,避免反复请求故障节点。
每一个 Token,都算得清、管得住
所有调用经过网关统一计量,Token 用量与费用实时归属到人、团队与项目,预算超支前就能收到提醒。
- 按用户、团队、项目、API Key 四个维度统计 Token 与费用
- 按各模型单价自动折算费用,本地模型可设置内部核算单价
- 支持按日 / 按月设置额度上限,可分别限制 Token、费用与请求数
- 额度达到阈值时通过邮件、Webhook 预警,超额后可告警、降级或拒绝
- 用量明细可导出,与财务分摊、部门结算对接
-
客服中心9,820 万 Token · ¥6,21082% 预警
-
研发效能7,460 万 Token · ¥5,13064% 正常
-
市场部3,980 万 Token · ¥3,87096% 将超限
-
法务合规1,120 万 Token · ¥1,05035% 正常
示例数据 · 费用按厂商单价折算,由你直接向厂商支付
不止对话,覆盖常用模型能力
不同类型的模型使用同一套鉴权、路由与计量体系,统一纳入权限与审计。
对话
多轮对话、流式输出、函数调用与 JSON 结构化输出。
/v1/chat/completions
Embedding
文本向量化,为语义检索、聚类与 RAG 知识库提供基础。
/v1/embeddings
重排序
对检索结果按相关性重新打分排序,显著提升问答准确度。
/v1/rerank
图像
图像理解(图文输入)已支持;图像生成接口规划中。
/v1/images/*
语音
语音识别与语音合成,用于会议纪要、语音客服等场景。
/v1/audio/*
常用模型来源能力一览
帮助你为不同场景挑选合适的模型;接入后均可通过同一套 API 调用。
| 模型来源 | 部署方式 | 上下文长度 | 多模态输入 | 函数调用 | 流式输出 | 典型用途 |
|---|---|---|---|---|---|---|
| 云端大模型 | ||||||
| OpenAI / Azure OpenAI | 云端 | 长上下文 | 通用助手、Agent | |||
| Anthropic Claude | 云端 | 长上下文 | 长文档分析、代码 | |||
| Google Gemini | 云端 | 超长上下文 | 多模态理解 | |||
| DeepSeek | 云端 | 长上下文 | 推理、代码、中文 | |||
| 通义千问 / 文心 / 智谱 GLM | 云端 | 长上下文 | 中文场景、国产化 | |||
| Kimi / 豆包 / 腾讯混元 | 云端 | 长上下文 | 长文本、对话应用 | |||
| 本地推理框架 | ||||||
| Ollama / LM Studio | 本地 | 取决于所部署模型 | 开发测试、轻量私有化 | |||
| vLLM / SGLang | 本地 | 取决于所部署模型 | 高并发生产推理 | |||
| Xinference / LocalAI | 本地 | 取决于所部署模型 | Embedding / 重排序服务 | |||
三步接入内网模型,数据不出企业
已有 GPU 服务器?无需额外开发,几分钟即可让本地模型和云端模型一样被统一调用与管理。
启动本地推理服务
使用 Ollama、vLLM、Xinference 等任一框架启动模型服务,确认 TokenHub 所在网络可以访问。
ollama serve
ollama pull qwen2.5:7b
在 TokenHub 填写地址
在「模型渠道」中选择框架类型,填写服务地址与可选的访问密钥,平台会立即进行连通性检测。
类型:Ollama
地址:http://10.0.8.21:11434
自动发现模型
平台自动拉取该服务上的模型列表并识别类型,勾选后即可配置别名、权限、路由与内部单价。
✓ qwen2.5:7b 对话
✓ bge-m3 Embedding
qwen2.5:7b对话llama3.1:8b对话bge-m3Embeddingllava:7b多模态
关于模型接入
现有基于 OpenAI SDK 的代码需要改动吗?
通常只需修改 base_url 与 api_key 两处配置。TokenHub 兼容 OpenAI 的请求与响应格式,其他厂商的参数差异由网关自动转换。
厂商的 API Key 存放在哪里,是否安全?
厂商密钥加密存储在你自己部署的 TokenHub 中,不经过任何第三方服务器;只有具备相应权限的管理员可以配置,业务方和开发者只会拿到 TokenHub 签发的 Key,可随时吊销、限额与审计。详见 权限与安全。
本地模型对服务器有什么要求?
TokenHub 网关本身不负责推理,对硬件要求很低;模型推理由你部署的 Ollama、vLLM 等服务完成,硬件需求取决于所选模型的规模。只要网关能通过网络访问到推理服务即可接入。
厂商发布了新模型,需要等 TokenHub 升级吗?
对于沿用原有接口协议的新模型,在管理后台刷新模型列表或手动添加模型名即可使用,无需等待 TokenHub 升级。涉及新接口协议的能力会在 更新日志 中说明。
调用云端模型的费用怎么结算?
TokenHub 不对模型调用加价或代收费用。云端模型使用你自己的厂商 API Key,费用由你直接向厂商支付;本地模型没有调用费用。TokenHub 只负责计量与配额,帮你把每一笔用量归属到人和项目。TokenHub 本身个人与非商业用途免费,商业用途请 咨询商业授权。
经过网关会增加多少延迟?
网关只做鉴权、路由与计量等轻量处理,附加延迟通常远小于模型本身的生成耗时。流式输出会逐段转发,首字时间基本不受影响。实际表现与部署环境相关,建议下载后在自己的环境中实测。