文档OriHub
首次调用 API
先跑通一次,之后换模型只改 model。
一条 curl
以 OpenAI 兼容协议为例,模型 deepseek-v4.1-flash:
curl https://api.lk888.ai/v1/chat/completions \
-H "Authorization: Bearer $OPENAI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4.1-flash",
"messages": [{ "role": "user", "content": "介绍一下你自己" }]
}'
换协议只改端点和鉴权头:
- Anthropic Messages ——
POST /v1/messages,鉴权头x-api-key - OpenAI Responses ——
POST /v1/responses,请求体用input字段 - Gemini generateContent ——
POST /v1beta/models/{model}:generateContent,鉴权头x-goog-api-key
用 SDK
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ["OPENAI_API_KEY"],
base_url="https://api.lk888.ai/v1",
)
reply = client.chat.completions.create(
model="deepseek-v4.1-flash",
messages=[{"role": "user", "content": "介绍一下你自己"}],
)
print(reply.choices[0].message.content)
流式
请求体里加 stream: true。
- OpenAI 协议返回标准
text/event-stream,每条data: {...},结束时发data: [DONE] - Anthropic 协议是
message_start/message_delta/message_stop事件 - Gemini 协议走
:streamGenerateContent端点,加?alt=sse
查这次花了多少
响应头 X-Task-Id 是这次调用的任务号,流式与非流式都带。拿它调 GET /v1/skills/task-status?task_id=…,is_final = true 时的 cost 就是结算金额,input_tokens / output_tokens 一并返回。
响应体里的 id 由上游生成,不能拿来查。平台先把响应交给你、随后才结算,刚收到响应时 is_final 可能还是 false,隔一两秒重查即可。
图片、视频、音频
走统一的异步入口:提交任务后轮询取结果。
传图用公网直链。image_url 里塞整段 base64,上游会按文本计 token,用量会异常放大;一次塞多张图也更容易遇到上游下载超时。
现成工具
Claude Code、Cursor、Cline / Roo Code、Cherry Studio、LobeChat / NextChat、OpenWebUI、Continue 都能接。开放 API 文档里选好工具,一键复制配置。
Claude Code 直接这样起:
ANTHROPIC_API_KEY="" \
ANTHROPIC_BASE_URL="https://api.lk888.ai" \
ANTHROPIC_AUTH_TOKEN="你的APIKEY" \
ANTHROPIC_MODEL="fb-5-1" \
claude
换一个模型
model 换成模型名就行。有的模型同时兼容多种协议,按顺手的选。
出了错
- 401 —— 密钥不对;也可能是 base_url 少了一段,OpenAI 协议要带
/v1 - 403 且
error.code = ip_not_allowed—— 来源 IP 不在白名单里,不扣费,把 IP 加进去或清空白名单即可 - 404 —— 路径不对,四种协议的端点不一样