跳到正文

开始使用

接口约定

Base URL、路径与协议差异。

按客户端的兼容协议选择 Base URL,直接使用 curl 时写完整路径。

地址与请求头

协议SDK Base URL完整请求地址认证头
OpenAI 兼容https://xtemapi.com/v1https://xtemapi.com/v1/chat/completionsAuthorization: Bearer $API_KEY
Anthropic 兼容https://xtemapi.comhttps://xtemapi.com/v1/messagesx-api-key: $API_KEY

JSON 请求使用 Content-Type: application/json。Anthropic 请求还需 anthropic-version 请求头,下面使用 Anthropic 协议版本值。SDK 会拼接路径,不要将完整端点地址当作 Base URL。

Anthropic 请求示例

在 Bash 中复制整段,输入令牌与模型名。模型必须支持 Anthropic 协议,名称从 模型广场 复制。

Bash
export ANTHROPIC_BASE_URL='https://xtemapi.com'
read -r -s -p 'API Key: ' API_KEY; printf '\n'
read -r -p 'Model: ' MODEL
export API_KEY MODEL
curl "$ANTHROPIC_BASE_URL/v1/messages" \
  -H "x-api-key: $API_KEY" \
  -H 'anthropic-version: 2023-06-01' \
  -H 'Content-Type: application/json' \
  --data "$(python3 -c 'import json,os; print(json.dumps({"model":os.environ["MODEL"],"max_tokens":1024,"messages":[{"role":"user","content":"Hello"}]}))')"

max_tokens 是示例的输出上限,不表示模型限制;按所选模型的要求调整。此示例需要 Bash、curl 和 Python 3。

响应与请求标识

非流式请求返回所选协议的 JSON:OpenAI 文本位于 choices[0].message.content,Anthropic 文本位于 content 数组的文本块。不要假定两种协议使用统一响应信封。

排查时用 curl 的 -D response-headers.txt 保存响应头。如果响应带有请求标识,反馈时原样附上;目前文档未确认统一的请求 ID 头名称,也不承诺所有响应都有该标识。不要把响应体的 id 直接当成网关请求 ID。

本站尚未在文档中确认幂等键约定,不能假定重发生成请求会被去重。失败处理见 报错码,增量响应见 流式输出。