快速开始

TokModel 提供与 OpenAI 完全兼容的 API。只需把 base_url 指向 TokModel、换成你的 API Key,现有代码即可运行。三步完成首次调用:

获取 API Key

登录 控制台 → API Keys → 创建 Key。Key 仅显示一次,请立即保存。

指向 TokModel

把 base_url 设为 https://api.tokmodel.com/v1,无需改动其它代码。

发起调用

选择任意模型 ID 发起请求,实时计费,按量付费。

python · 首次调用
from openai import OpenAI

client = OpenAI(
    base_url="https://api.tokmodel.com/v1",
    api_key="tm_your_saved_key",
)

resp = client.chat.completions.create(
    model="gpt-6.1-sol",
    messages=[{"role": "user", "content": "你好"}],
)
print(resp.choices[0].message.content)
可通过 OpenAI SDK 配置自定义 base_url 接入;具体参数及能力以所选模型支持情况为准。

认证方式 #

所有请求通过 HTTP Header 中的 Authorization 携带 API Key 进行认证,格式为 Bearer Token:

http header
Authorization: Bearer tm_your_saved_key
请勿将 API Key 提交到客户端代码或公开仓库。建议在服务端保管,并通过环境变量注入。

模型列表 #

调用时在 model 字段填入当前可用的模型 ID。可用型号及能力以模型列表和账号权限为准。下方代码中的型号仅作示例,调用前请核对。

完整模型与实时价格见 模型价格 页面,也可通过 API 查询:

GET /v1/models

该接口需要携带 Authorization 头,与对话补全使用同一个 API Key。

对话补全 #

核心接口,与 OpenAI chat.completions 一致。

POST /v1/chat/completions

请求体

参数类型说明
model必填string模型 ID,如 gpt-6.1-sol
messages必填array对话消息数组,含 role 与 content
stream可选boolean是否流式返回,默认 false
temperature可选number采样温度,0–2,默认 1
max_tokens可选integer最大生成 tokens

流式输出 #

设置 stream: true 后,响应以 Server-Sent Events(SSE)逐 token 推送,适合对话界面实时渲染。

python · 流式
stream = client.chat.completions.create(
    model="gpt-6.1-sol",
    messages=[{"role": "user", "content": "写一首关于春天的诗"}],
    stream=True,
)
for chunk in stream:
    delta = chunk.choices[0].delta.content
    if delta:
        print(delta, end="")

请求参数 #

请求体以 OpenAI chat.completions 格式传递;除下表字段外,其余标准参数(top_p、stop、seed、response_format 等)原样透传给上游模型,是否生效取决于模型自身支持。

参数类型说明
model必填string模型 ID,取值见模型列表
messages必填array对话消息数组,每项含 role 与 content
stream可选boolean为 true 时以 SSE 逐块返回,默认 false
max_tokens可选integer本次回复的最大 token 数,用于预算与计费预扣
temperature可选number采样随机性,取值 0 至 2,由模型决定默认值
stream_options可选object流式附加选项,include_usage 由网关自动置为 true

多模态与视频生成模型的参数略有不同,参考对应模型详情。

Claude 客户端接入 #

除 OpenAI 兼容接口外,网关同时提供 Anthropic Messages 协议入口。Claude Code、Claude 客户端以及支持 Anthropic 协议的第三方工具,填写本平台的地址与 Key 即可直接使用在售模型。

POST /v1/messages
POST /v1/messages/count_tokens

Claude Code 配置

shell
export ANTHROPIC_BASE_URL="https://api.tokmodel.com"
export ANTHROPIC_AUTH_TOKEN="tm_your_saved_key"

claude --model gpt-6.1-sol

其它客户端

字段填写
Base URLhttps://api.tokmodel.com
API Keytm_ 开头的 Key
Model在售模型 ID,如 gpt-6.1-sol

Base URL 只填域名,不要带 /v1;带路径会拼成 /v1/v1/messages,返回 404。

模型名必须填本平台在售的模型 ID,客户端默认的 claude-* 名称在本平台不存在,会返回 not_found_error。

请求示例

cURL
curl https://api.tokmodel.com/v1/messages \
  -H "x-api-key: $TOKMODEL_KEY" \
  -H "content-type: application/json" \
  -d '{"model":"gpt-6.1-sol","max_tokens":256,"messages":[{"role":"user","content":"你好"}]}'

支持 system、多模态图片、工具调用与流式输出;流式响应按 Anthropic 的 message_start、content_block_delta、message_stop 事件下发。计费与 OpenAI 接口一致,共用余额、并发与限流额度。

Key 同时支持 x-api-key 与 Authorization: Bearer 两种请求头;额度、预扣与结算口径与 OpenAI 接口完全相同。

Python 示例 #

安装官方 SDK:pip install openai

python
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.tokmodel.com/v1",
    api_key=os.environ["TOKMODEL_KEY"],
)

resp = client.chat.completions.create(
    model="gpt-6.1-sol",
    messages=[
        {"role": "system", "content": "You are a professional translator."},
        {"role": "user", "content": "Translate into English: Artificial intelligence is changing the world."},
    ],
    temperature=0.3,
)
print(resp.choices[0].message.content)
print(f"Tokens used: {resp.usage.total_tokens}")

DeepSeek Python 接入与迁移 #

先安装 OpenAI Python SDK,在服务端设置 TOKMODEL_KEY 和 TOKMODEL_MODEL 环境变量。TOKMODEL_MODEL 请填写模型价格页或 /v1/models 返回的准确模型 ID;原服务商的 Key 和余额不能在 TokModel 使用。

1. 安装与环境变量

以下命令适用于 macOS/Linux shell;Windows 请在 PowerShell 或系统环境变量中设置同名变量。Key 仅保存在服务端,不要写进浏览器代码或提交到仓库。

shell
python -m pip install --upgrade openai
export TOKMODEL_KEY="YOUR_TOKMODEL_API_KEY"
export TOKMODEL_MODEL="deepseek-v4.1-flash"

2. 运行非流式与流式示例

将以下代码保存为 deepseek_tokmodel.py,然后运行 python deepseek_tokmodel.py。示例先完成一次非流式请求,再处理一次流式请求;遇到不含 choices 的数据块会跳过。每次实际生成内容会按正常规则计费。

python
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.tokmodel.com/v1",
    api_key=os.environ["TOKMODEL_KEY"],
    timeout=60.0,
    max_retries=0,
)
model = os.environ["TOKMODEL_MODEL"]
response = client.chat.completions.create(
    model=model,
    messages=[{"role": "user", "content": "Reply with a short greeting."}],
    max_tokens=64,
)
print(response.choices[0].message.content)
print(response.usage)

stream = client.chat.completions.create(
    model=model,
    messages=[{"role": "user", "content": "Explain caching in one sentence."}],
    stream=True,
    max_tokens=128,
)
for chunk in stream:
    if not chunk.choices:
        continue
    content = chunk.choices[0].delta.content
    if content:
        print(content, end="", flush=True)
print()

3. 从官方 API 迁移与排错

迁移时分别配置 TokModel 的 base_url、API Key 和准确模型 ID。Chat Completions 调用结构兼容 OpenAI SDK,但工具调用、结构化输出等参数需按所选模型验证。先用少量代表性请求核对响应与用量,再逐步切换流量;保留原客户端作为明确配置的回退。

401 先检查 TokModel Key,402 检查余额,404 核对模型 ID,429 降低并发并采用有上限的退避。示例关闭自动重试以便观察首次调用;生产重试应有上限,流式已输出后不要盲目重放,已生成的内容仍可能计费。完整说明见下方迁移指南与错误码章节。

DeepSeek 价格与监测说明 · DeepSeek Python 接入与官方 API 迁移指南

错误码

Node.js 示例 #

安装:npm install openai

示例使用 ESM 语法:文件以 .mjs 结尾,或在 package.json 中设置 type 为 module。CommonJS 环境请把 await 放进 async 函数里。

javascript
import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.tokmodel.com/v1",
  apiKey: process.env.TOKMODEL_KEY,
});

const resp = await client.chat.completions.create({
  model: "gpt-6.1-sol",
  messages: [{ role: "user", content: "Hello" }],
});
console.log(resp.choices[0].message.content);

cURL 示例 #

bash
curl https://api.tokmodel.com/v1/chat/completions \
  -H "Authorization: Bearer $TOKMODEL_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-6.1-sol",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

错误码 #

出错时返回标准 HTTP 状态码。错误体为 JSON 对象,包含 error 字段,其下有 type、code 与 message。code 取值稳定,可用于程序判断;message 仅供阅读。请求被拒绝、或上游返回错误且未产出任何内容时不计费;流式输出中途中断的,按已生成的部分计费。

状态码含义处理建议
400请求参数错误检查 model、messages 格式
401API Key 无效或已禁用确认请求头使用 Bearer 格式
402余额不足前往控制台充值
403无权访问该模型检查 Key 的模型权限范围
404模型不存在核对 model 字段与模型列表中的 ID
429触发限流降低并发,指数退避重试
500服务内部错误记录响应中的 code 后联系支持
502上游模型异常稍后重试,或切换备用模型
503服务暂不可用稍后重试

计费说明 #

  • 按量付费:按实际消耗的 tokens 计费,以每百万 tokens 为计价单位,无月费。
  • 输入 / 输出分开计费:缓存命中的输入部分按更低费率计算。
  • 充值:充值最低 10 美元,余额长期有效。
  • 失败不计费:请求被拒绝、或上游返回错误且未产出任何内容时不计费。
  • 实时账单:每次调用可在控制台「使用日志」中追溯。

价格见 模型价格,账单见 控制台。

常见问题 #

支持哪些模型?

当前在售型号请查看 模型价格;可调用范围以账号权限及接口返回为准。

和官方 API 有区别吗?

价格低于各家官方定价(走企业级采购量价);一个 Key 可调用多家模型;接口与 OpenAI 兼容;无需海外信用卡。模型能力、上下文长度与输出上限由各模型提供方决定。

数据安全吗?

请求内容仅用于转发给所选模型提供方并返回结果,不用于训练,也不出售。推理基础设施部署在香港,请求内容不写入第三方系统。

更多问题见 常见问题页,或联系 技术支持。