主题
API与文本调用
主地址为 https://otz.si。下面给出完整标准路径,客户端Base URL是否带/v1以该客户端教程为准。本站常用无/v1路径兼容保留,但不要拼出/v1/v1/...。
接口速查
| 能力 | 方法与路径 |
|---|---|
| 当前密钥可见模型 | GET /v1/models |
| Chat Completions | POST /v1/chat/completions |
| Responses | POST /v1/responses |
| Anthropic Messages | POST /v1/messages |
| 图片生成 | POST /v1/images/generations |
| 提交视频 | POST /v1/videos |
| 查询视频 | GET /v1/videos/{id} |
| 下载视频 | GET /v1/videos/{id}/content |
不同模型可用的端点不同;这张表不是每个模型支持全部端点的承诺。
鉴权
JSON请求通常使用以下请求头,密钥替换为自己的调用密钥:
http
Authorization: Bearer YOUR_API_KEY
Content-Type: application/jsonAnthropic客户端也可按原生配置使用x-api-key和anthropic-version: 2023-06-01。密钥只保存在秘密字段或受限配置里,不放URL,不使用curl -v、完整请求头日志或公开前端代码传递密钥。
免计费模型发现
下载 本地请求示例 request.py,在电脑终端运行:
sh
python3 request.py /v1/modelsWindows可使用py -3替代python3。程序会隐藏输入密钥;只访问https://otz.si,不写任何客户端配置、不自动重试。
返回JSON的data[].id为模型ID。目录成功只是免计费配置检查,不是模型生成成功。
发起一次文本请求
把下面任意一种JSON保存为request.json,将模型名换为这枚密钥实际支持的完整名称。YOUR_MODEL_ID是占位符,不能原样发送。
Responses
json
{
"model": "gpt-6.1-sol",
"input": [{"role": "user", "content": [{"type": "input_text", "text": "只回复:连接成功"}]}],
"stream": false,
"max_output_tokens": 64
}sh
python3 request.py /v1/responses --json request.json --allow-chargeChat Completions
json
{
"model": "YOUR_MODEL_ID",
"messages": [{"role": "user", "content": "只回复:连接成功"}],
"stream": false,
"max_tokens": 64
}sh
python3 request.py /v1/chat/completions --json request.json --allow-chargeAnthropic Messages
json
{
"model": "YOUR_MODEL_ID",
"max_tokens": 64,
"messages": [{"role": "user", "content": "只回复:连接成功"}],
"stream": false
}sh
python3 request.py /v1/messages --json request.json --allow-charge--allow-charge表示你主动同意这一次生成,程序仍会要求确认。它不是价格预算器;设置Token上限不代表有总金额硬上限。请求失败、超时或输出不完整时,不自动重发。
接入实际程序
先选择协议和完整模型名,再按SDK字段配置地址。把密钥留在服务端秘密存储或用户本机,不写死到浏览器脚本。不要为接入改全局系统代理、清空客户端配置、重装编程工具或关闭TLS验证。
流式请求设置stream: true,使用支持SSE的客户端。上面的简易Python示例仅用于非流式JSON及单次视频查询,不用于读取长流。收到HTTP 200或首个事件不等于生成结束,按对应协议的完成事件判断。
保留响应头X-Oneapi-Request-Id及开始时间用于排障;不要记录密钥和完整提示词。取消任务应传播取消请求,不在后台继续无止境重试。429/503先尊重Retry-After,对结果不明的生成请求先查状态再决定是否重试。
