快速开始
几分钟内完成第一次模型调用:创建密钥,发送一个请求,拿到模型回复。
你可以用它做什么
让你的 AI 编程助手来接入
把下面这段话粘贴到 Claude Code、Codex 或 Cursor。它会帮你配置密钥,并陪你完成第一次调用。
我想接入 Thklumi API。能替我运行的命令请直接运行,每一步用一句话说明在做什么;需要我亲自操作时,明确告诉我要做什么,并等我完成。 接口信息: - Base URL(OpenAI 兼容):https://api.thklumi.com/v1 - 鉴权:请求头 Authorization: Bearer $THKLUMI_API_KEY - 接入文档:/docs 步骤: 1. API 密钥:先检查环境变量 THKLUMI_API_KEY。如果没有,引导我到 /api-keys 创建密钥,并让我自己在终端里 export。绝对不要让我把密钥粘贴到对话里。用 GET https://api.thklumi.com/v1/models 确认密钥可用。 2. 问我想做什么,再选择合适的接口:Chat Completions(大多数场景)、Responses API 或 Anthropic Messages。 3. 发起第一次调用,把模型的回复展示给我。
接入协议与鉴权
同一把 sk- 密钥可以走 OpenAI、Anthropic、Gemini 三种原生协议,外加 OpenAI 兼容的图像接口,按你用的 SDK 或工具选择即可。每个模型支持哪些协议取决于它的上游渠道;协议不匹配时接口会返回 404。
| 协议 | 端点 | 鉴权请求头 | SDK 的 Base URL |
|---|---|---|---|
| OpenAI Chat Completions | POST /v1/chat/completions | Authorization: Bearer sk-… | https://api.thklumi.com/v1 |
| OpenAI Responses | POST /v1/responses | Authorization: Bearer sk-… | https://api.thklumi.com/v1 |
| Anthropic Messages | POST /v1/messages | x-api-key: sk-… anthropic-version: 2023-06-01 | https://api.thklumi.com |
| Gemini 原生 | POST /v1beta/models/{model}:generateContent | x-goog-api-key: sk-… 或 Authorization: Bearer sk-… | https://api.thklumi.com |
| 图像生成 / 编辑 | POST /v1/images/generations POST /v1/images/edits | Authorization: Bearer sk-… | https://api.thklumi.com/v1 |
| 模型列表 | GET /v1/models | Authorization: Bearer sk-… | https://api.thklumi.com/v1 |
最容易踩的坑:OpenAI SDK 的 base_url 要带 /v1;Anthropic SDK、Claude Code、google-genai SDK、Gemini CLI 都用根地址,不带 /v1。调用 Claude 优先用 Anthropic 原生协议,调用 Gemini 优先用 Gemini 原生协议,缓存、思考等能力都会原样保留。
第一次调用
Base URLhttps://api.thklumi.com/v1鉴权请求头Authorization: Bearer sk-…
设置密钥
在 API 密钥页点击「新建密钥」,复制后放进环境变量。不要写死在前端代码或公开仓库里;生产和测试建议各用一把密钥,方便单独停用。
export THKLUMI_API_KEY="sk-你的密钥"
发送请求
把 OpenAI SDK 的 base_url 指向 Thklumi,model 填模型 id,messages 沿用 OpenAI 格式。
curl https://api.thklumi.com/v1/chat/completions \
-H "Authorization: Bearer $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-flash",
"messages": [
{"role": "user", "content": "用一句话介绍你自己"}
]
}'{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"model": "deepseek-v4-flash",
"choices": [
{
"index": 0,
"message": { "role": "assistant", "content": "你好!我是一个 AI 助手,可以回答问题、写作和写代码。" },
"finish_reason": "stop"
}
],
"usage": { "prompt_tokens": 12, "completion_tokens": 21, "total_tokens": 33 }
}读取结果
回复在 choices[0].message.content。想边生成边显示,就设置 stream: true,服务端会返回标准 SSE 数据流,以 data: [DONE] 结束。
stream = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "写一个三步上线检查清单"}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="")data: {"choices":[{"index":0,"delta":{"content":"1. "}}]}
data: {"choices":[{"index":0,"delta":{"content":"确认密钥只放在后端"}}]}
data: [DONE]更多接口
Responses API
Responses 是 OpenAI 的新接口,目前主要支持 GPT 系列模型。网关不做协议转换,请求体原样转发给上游(instructions、reasoning、tools、previous_response_id 等字段都支持);多轮对话直接回传上一轮的 response id 即可。
curl https://api.thklumi.com/v1/responses \
-H "Authorization: Bearer $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.5",
"input": "请用三句话解释什么是 API 网关"
}'Responses 流式
设置 stream: true 后返回标准 Responses 流式事件:response.created → 多个 response.output_text.delta → response.completed,用量在最后的 response.completed 里。
stream = client.responses.create(
model="gpt-5.5",
input="写一个三步上线检查清单",
stream=True,
)
for event in stream:
if event.type == "response.output_text.delta":
print(event.delta, end="")event: response.created
data: {"type":"response.created","response":{"id":"resp_abc123","status":"in_progress"}}
event: response.output_text.delta
data: {"type":"response.output_text.delta","delta":"1. "}
event: response.completed
data: {"type":"response.completed","response":{"id":"resp_abc123","status":"completed","usage":{...}}}大多数场景:client.chat.completions.create()
DeepSeek、GLM、Kimi、Gemini 以及绝大多数 OpenAI 兼容模型都支持。普通聊天、流式输出、生产业务优先选它,兼容性最高。
GPT 系列:client.responses.create()
OpenAI 新接口,请求原样转发到支持 Responses 的上游渠道。目前主要是 GPT 系列;模型不支持时返回 404,可改用 chat.completions。
Anthropic 原生协议
我们提供 Anthropic 原生 Messages 接口(/v1/messages)。anthropic 官方 SDK、Claude Code 无需改代码,只要把 Base URL 指向本站、密钥用 sk- 开头即可;鉴权走 x-api-key(也兼容 Authorization: Bearer),model 填 claude-* 别名。请求直通 Anthropic 原生上游,anthropic-version 与 anthropic-beta 请求头原样转发,提示词缓存、扩展思考、工具调用都可正常使用。max_tokens 为必填。
curl https://api.thklumi.com/v1/messages \
-H "x-api-key: $THKLUMI_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "用一句话介绍你自己"}
]
}'{
"id": "msg_abc123",
"type": "message",
"role": "assistant",
"model": "claude-sonnet-4-6",
"content": [{ "type": "text", "text": "你好!我是 Claude,一个 AI 助手。" }],
"stop_reason": "end_turn",
"usage": { "input_tokens": 14, "output_tokens": 18 }
}记住:Anthropic SDK / Claude Code 用根地址 https://api.thklumi.com(不带 /v1),SDK 会自动补上 /v1/messages;这点和 OpenAI SDK 需要带 /v1 不一样。
Anthropic 流式(SSE)
设置 "stream": true。事件顺序:message_start → content_block_start → 若干 content_block_delta → content_block_stop → message_delta(含 stop_reason 与输出用量)→ message_stop。用官方 SDK 时直接用 messages.stream() 即可。
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{"role": "user", "content": "写一个三步上线检查清单"}],
) as stream:
for text in stream.text_stream:
print(text, end="")event: message_start
data: {"type":"message_start","message":{"id":"msg_abc123","usage":{"input_tokens":16,"output_tokens":1}}}
event: content_block_start
data: {"type":"content_block_start","index":0,"content_block":{"type":"text","text":""}}
event: content_block_delta
data: {"type":"content_block_delta","index":0,"delta":{"type":"text_delta","text":"1. "}}
event: content_block_stop
data: {"type":"content_block_stop","index":0}
event: message_delta
data: {"type":"message_delta","delta":{"stop_reason":"end_turn"},"usage":{"output_tokens":42}}
event: message_stop
data: {"type":"message_stop"}Gemini 原生协议
我们提供 Gemini 原生 generateContent 接口,google-genai SDK 和 Gemini CLI 只要改 Base URL 和密钥即可。模型名写在 URL 路径里;请求体(contents、systemInstruction、generationConfig、tools 等)原样转发给 Gemini 上游。鉴权用 x-goog-api-key,也兼容 Authorization: Bearer。
curl "https://api.thklumi.com/v1beta/models/gemini-3.5-flash:generateContent" \
-H "x-goog-api-key: $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"role": "user", "parts": [{"text": "用一句话介绍你自己"}]}
]
}'{
"candidates": [
{
"content": { "role": "model", "parts": [{ "text": "你好!我是 Gemini,一个 AI 助手。" }] },
"finishReason": "STOP"
}
],
"usageMetadata": { "promptTokenCount": 8, "candidatesTokenCount": 12, "totalTokenCount": 20 },
"modelVersion": "gemini-3.5-flash",
"responseId": "gen-abc123"
}Base URL 用根地址 https://api.thklumi.com(不带 /v1 也不带 /v1beta),SDK 会自己补 /v1beta/models/…。计费时思考 token(thoughtsTokenCount)按输出计。
Gemini 流式(SSE)
用 streamGenerateContent 并带上 ?alt=sse(google-genai SDK 和 Gemini CLI 默认就是这样)。每个 data 分片都是一个完整的 GenerateContentResponse,usageMetadata 为累计值。不支持不带 alt=sse 的 JSON 数组流。
curl "https://api.thklumi.com/v1beta/models/gemini-3.5-flash:streamGenerateContent?alt=sse" \
-H "x-goog-api-key: $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"contents": [
{"role": "user", "parts": [{"text": "写一个三步上线检查清单"}]}
]
}'图像生成(GPT Image)
兼容 OpenAI Images API:POST /v1/images/generations,请求体填 model 和 prompt,size、quality、n、background、output_format 等参数原样转发。结果在 data[].b64_json(Base64 图片)。出图通常要几十秒,客户端超时建议设到 300 秒。
curl https://api.thklumi.com/v1/images/generations \
-H "Authorization: Bearer $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
--max-time 300 \
-d '{
"model": "gpt-image-2",
"prompt": "一只在键盘上打字的橘猫,插画风格",
"size": "1024x1024"
}'{
"created": 1760000000,
"data": [
{ "b64_json": "iVBORw0KGgoAAAANSUhEUgAA..." }
]
}编辑图像
POST /v1/images/edits,使用 multipart/form-data:model、prompt 为表单字段,image 为图片文件(可传多张),可选 mask。
curl https://api.thklumi.com/v1/images/edits \ -H "Authorization: Bearer $THKLUMI_API_KEY" \ --max-time 300 \ -F model=gpt-image-2 \ -F image=@cat.png \ -F prompt="给这只猫戴一顶圣诞帽"
按实际返回的张数计费,单价见模型页;上游失败未出图不收费。暂不支持 stream(partial_images)。上传文件总大小上限 12MB。
快速模式(Fast mode)
在 Chat Completions 或 Responses 请求里加上 "service_tier": "fast",GPT 系列会走上游的优先处理通道,生成速度明显更快。旧写法 "priority" 同样有效,两者等价。
curl https://api.thklumi.com/v1/chat/completions \
-H "Authorization: Bearer $THKLUMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.5",
"service_tier": "fast",
"messages": [
{"role": "user", "content": "用一句话介绍你自己"}
]
}'- 按标准价的 2 倍计费,只在上游确认按快速模式处理时才加价:响应里的 service_tier 为 "priority" 时按 2 倍收,上游降级为 "default" 时按标准价收。
- 响应里的 service_tier 显示为 "priority" 是正常现象,代表本次请求确实走了快速通道。
- 仅支持快速模式的 GPT 模型有效;其它模型会忽略这个参数并按标准价计费。
- 计费依据会记在请求日志里,可在日志页按 request_id 核对。
可用模型
用下面的接口实时拉取当前账号可调用的完整模型列表;请求时 model 字段直接填返回里的 id(全小写)。也可以在模型页查看别名、价格与能力。
curl https://api.thklumi.com/v1/models \ -H "Authorization: Bearer $THKLUMI_API_KEY"
{
"object": "list",
"data": [
{ "id": "deepseek-v4-flash", "object": "model" },
{ "id": "gpt-5.5", "object": "model" },
{ "id": "claude-sonnet-4-6", "object": "model" }
]
}已覆盖 Anthropic Claude、OpenAI GPT、Google Gemini、DeepSeek、GLM、Kimi 等主流模型。标注 free 的为限时福利版本,可用模型以接口返回为准。 打开模型页 →
在 Agent 与桌面工具中接入
不想直接写 HTTP 请求?下面这些编程 Agent 和桌面客户端都能直接接入 Thklumi,按工具选对协议和 Base URL 即可。先看这张总表,再看对应工具的分步配置。
| 工具 | 走的协议 | Base URL |
|---|---|---|
| Claude Code(终端 / VS Code) | Anthropic Messages | https://api.thklumi.com |
| Codex(CLI / IDE / ChatGPT 桌面版的 Codex 模式) | OpenAI Responses | https://api.thklumi.com/v1 |
| Gemini CLI | Gemini 原生 | https://api.thklumi.com |
| Cherry Studio | OpenAI / Anthropic / Gemini 任选 | https://api.thklumi.com |
| Cline | Anthropic 或 OpenAI 兼容 | https://api.thklumi.com(Anthropic) https://api.thklumi.com/v1(OpenAI 兼容) |
| OpenCode | OpenAI 兼容 | https://api.thklumi.com/v1 |
| Cursor | OpenAI 兼容(仅聊天) | https://api.thklumi.com/v1 |
| ChatGPT 聊天(网页 / 桌面) | 不支持自定义接口 | — |
Claude Code
Claude Code 走 Anthropic 原生协议,提示词缓存、扩展思考、工具调用都会完整保留。Base URL 用根地址(不带 /v1),Claude Code 会自己拼 /v1/messages。
- 推荐写进用户级配置文件 ~/.claude/settings.json(Windows:%USERPROFILE%\.claude\settings.json),终端和 IDE 里启动的 Claude Code 都会读取。也可以用环境变量,见下方 bash / PowerShell 标签。
- 密钥用 ANTHROPIC_AUTH_TOKEN(以 Authorization: Bearer 发送)。用 ANTHROPIC_API_KEY 也可以,但首次启动会弹窗让你确认是否使用该密钥,选「否」之后会被静默忽略。
- 把 ANTHROPIC_DEFAULT_OPUS_MODEL / SONNET / HAIKU 设成模型页或 GET /v1/models 里存在的 claude-* 模型。Claude Code 默认会请求最新的官方模型名,本站没有对应模型时会报 404;HAIKU 用于后台小任务,可换成更便宜的模型。
- 启动 claude 后输入 /status,看到「Anthropic base URL」一行显示本站地址、「Auth token」一行显示 ANTHROPIC_AUTH_TOKEN,就说明已经走 Thklumi。
- VS Code 扩展:在 VS Code 的用户设置(settings.json)里加 claudeCode.environmentVariables,这是官方推荐的可靠位置。
- 排查时可以先用最下面的 cURL 直接请求一次:返回 {"id":"msg_…"} 说明地址和密钥都对;返回 401 说明密钥或请求头不对。
{
"env": {
"ANTHROPIC_BASE_URL": "https://api.thklumi.com",
"ANTHROPIC_AUTH_TOKEN": "sk-你的密钥",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-4-8",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-6",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-4-6"
}
}"claudeCode.environmentVariables": [
{ "name": "ANTHROPIC_BASE_URL", "value": "https://api.thklumi.com" },
{ "name": "ANTHROPIC_AUTH_TOKEN", "value": "sk-你的密钥" },
{ "name": "ANTHROPIC_DEFAULT_SONNET_MODEL", "value": "claude-sonnet-4-6" }
]curl -sS https://api.thklumi.com/v1/messages \
-H "Authorization: Bearer sk-你的密钥" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{"model":"claude-sonnet-4-6","max_tokens":16,"messages":[{"role":"user","content":"ping"}]}'- 不要把密钥写进项目里的 .claude/settings.json(会被提交到 Git),用用户级配置或 .claude/settings.local.json。
- 配置文件里的 env 会覆盖终端里 export 的同名变量。
- 要切回 Claude 官方账号:删掉上面这些变量,在 Claude Code 里执行 /logout,再 /login。
- Claude 桌面应用不读取这些环境变量和 settings.json,需在应用内 Help → Troubleshooting → Enable Developer Mode 后,到 Developer → Configure Third-Party Inference 里配置。
- 如果遇到 anthropic-beta 相关的「Unexpected value」报错,可加环境变量 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1。
Codex(CLI / IDE 扩展 / ChatGPT 桌面版 Codex 模式)
Codex 只支持 OpenAI Responses 协议(wire_api = "chat" 已被官方移除),因此只能使用支持 Responses 的模型,目前主要是 GPT 系列。CLI、IDE 扩展和 ChatGPT 桌面版里的 Codex 模式共用同一个配置文件。
- 编辑用户级配置 ~/.codex/config.toml(Windows:%USERPROFILE%\.codex\config.toml),加入下面的 model_provider 配置。注意 model_provider 写在项目里的 .codex/config.toml 不生效。
- base_url 要带 /v1,Codex 会自己拼 /responses;model 填模型页里支持 Responses 的模型 id,例如 gpt-5.5。
- 把密钥放进环境变量 THKLUMI_API_KEY(名字要和 env_key 一致),不要写进 config.toml。
- 从桌面图标打开的 Codex / ChatGPT 应用读不到终端里 export 的变量,推荐写进 ~/.codex/.env,或用 PowerShell 设成用户级环境变量后完全重启应用。
- 改完配置后重启 Codex(CLI 重开终端,IDE 扩展重启 VS Code,桌面应用完全退出再打开)。
# 顶层字段必须写在第一个 [表] 之前 model = "gpt-5.5" model_provider = "thklumi" [model_providers.thklumi] name = "Thklumi" base_url = "https://api.thklumi.com/v1" wire_api = "responses" env_key = "THKLUMI_API_KEY"
# 写进 ~/.zshrc 或 ~/.bashrc export THKLUMI_API_KEY="sk-你的密钥" codex
- ~/.codex/.env 里以 CODEX_ 开头的变量会被忽略,所以变量名不要用 CODEX_ 前缀。
- provider id 不能用 openai、ollama、lmstudio 这几个保留名;第三方网关不要设置 requires_openai_auth。
- Codex 0.134.0 起 --profile 读取的是 ~/.codex/<名字>.config.toml,旧教程里写在 config.toml 内的 [profiles.x] 已不生效。
- Codex 云端任务必须登录 ChatGPT 账号,无法走 Thklumi。
Gemini CLI
Gemini CLI 走 Gemini 原生协议。Base URL 用根地址,CLI 会自己拼 /v1beta/models/…。
- 设置 GOOGLE_GEMINI_BASE_URL、GEMINI_API_KEY 两个环境变量。
- 额外设置 GEMINI_API_KEY_AUTH_MECHANISM=bearer,让 CLI 用 Authorization: Bearer 发送密钥。
- 启动时用 -m 指定模型页里存在的 Gemini 模型,例如 gemini -m gemini-3.5-flash。
export GOOGLE_GEMINI_BASE_URL="https://api.thklumi.com" export GEMINI_API_KEY="sk-你的密钥" export GEMINI_API_KEY_AUTH_MECHANISM="bearer" gemini -m gemini-3.5-flash
- 不要用 Google 账号登录方式启动,那样请求会直接发到 Google,不经过 Thklumi。
Cherry Studio
Cherry Studio 支持多种提供商类型,同一把密钥可以按模型分别建 OpenAI、Anthropic、Gemini 三个提供商,各走原生协议。
- 打开 设置 → 模型服务 → 添加,填写名称,并选择提供商类型: · OpenAI:DeepSeek、GLM、Kimi 等大多数模型 · OpenAI-Response:GPT 系列 · Anthropic:Claude 系列 · Gemini:Gemini 系列
- API 地址统一填 https://api.thklumi.com,Cherry Studio 会自动补上版本路径(OpenAI / Anthropic 补 /v1,Gemini 补 /v1beta)。填之前确认输入框下方的「预览」地址是否正确。
- API 密钥填 sk- 开头的 Key,然后点击「管理」或「添加」模型,模型 id 填模型页里的 id。
- 点击「检查」测试连通性,成功后在对话页选这个提供商下的模型即可。
- 地址末尾加 # 表示原样使用、不自动补版本路径,一般不需要。
- 旧版(1.x)文档里「地址以 / 结尾就不补 /v1」的规则在 2.x 已不适用,以预览地址为准。
Cline(VS Code)
Cline 可以走 Anthropic 原生协议(推荐用于 Claude),也可以走 OpenAI 兼容协议(用于其它模型)。
- 调用 Claude:API Provider 选「Anthropic」,勾选「Use custom base URL」,填 https://api.thklumi.com,API Key 填 sk- 密钥,再选择模型。
- 调用其它模型:API Provider 选「OpenAI Compatible」,Base URL 填 https://api.thklumi.com/v1,API Key 填 sk- 密钥,Model ID 填模型页里的 id。
- OpenAI Compatible 模式下可以在 Model Configuration 里补充上下文长度、是否支持图片等信息,Cline 会据此控制上下文。
- Roo Code 已于 2026 年 5 月停止维护,建议迁移到 Cline。
OpenCode
OpenCode 通过自定义 provider 接入,全局配置在 ~/.config/opencode/opencode.json,也可以放在项目根目录的 opencode.json。
- 按下面的示例添加 provider,options.baseURL 填 https://api.thklumi.com/v1。
- 密钥用 {env:THKLUMI_API_KEY} 从环境变量读取,不要直接写进配置文件。
- models 里列出你要用的模型 id(以模型页为准)。
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"thklumi": {
"npm": "@ai-sdk/openai-compatible",
"name": "Thklumi",
"options": {
"baseURL": "https://api.thklumi.com/v1",
"apiKey": "{env:THKLUMI_API_KEY}"
},
"models": {
"deepseek-v4-flash": { "name": "DeepSeek V4 Flash" },
"gpt-5.5": { "name": "GPT-5.5" }
}
}
}
}- GPT 系列如需走 Responses 协议,可把 npm 换成 @ai-sdk/openai。
Cursor
Cursor 对自定义接口的支持有限,只适合在聊天里使用。
Cursor 的自定义密钥只对聊天模型生效,Tab 补全和后台 Agent 仍使用 Cursor 自己的模型;所有请求会先经过 Cursor 的服务器。Agent 模式使用自定义地址时可能发送 Responses 格式请求,部分模型会失败。
- 打开 Settings → Models,在 OpenAI API Key 处填 sk- 密钥;如果你的版本有「Override OpenAI Base URL」,填 https://api.thklumi.com/v1。
- 点击「Add model」添加模型页里的模型 id,然后在聊天(Ask 模式)里选择它。
- 部分新版本和套餐已不显示「Override OpenAI Base URL」,这种情况下无法接入。
ChatGPT 网页版 / 桌面版
ChatGPT 的聊天功能(chatgpt.com 和桌面应用的普通对话)不支持自定义 API 地址或第三方密钥,无法接入 Thklumi。
- ChatGPT 桌面应用里的 Codex 模式会读取 ~/.codex/config.toml,可以按上面「Codex」一节配置后使用。
- 想要类似 ChatGPT 的聊天界面,可以用本站的「调试台」,或用 Cherry Studio 这类客户端接入。
凡是支持自定义 OpenAI Base URL 的客户端都可这样接入。如果工具是在界面里填写,把「API 地址 / Base URL」填 https://api.thklumi.com/v1,「密钥」填 sk- 开头的 Key 即可。
继续构建
上线前检查清单
密钥只放后端
不要把 sk- 密钥写到浏览器代码、App 客户端或公开 Git 仓库。前端应请求你自己的后端。
按模型选协议
Claude 走 /v1/messages,GPT 可用 chat.completions 或 responses,其余模型用 chat.completions。
给 429/502/503 加重试
推荐最多重试 2 到 3 次,并使用指数退避;用户取消请求时要及时停止流式连接。
放宽超时
大模型首字可能要几十秒,客户端读超时建议 300 秒以上,并优先使用流式。
上线后看请求日志
通过日志页检查模型、状态码、token 和花费。出现异常时用 request_id 快速定位。

