# 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/json ``` Anthropic客户端也可按原生配置使用`x-api-key`和`anthropic-version: 2023-06-01`。密钥只保存在秘密字段或受限配置里,不放URL,不使用`curl -v`、完整请求头日志或公开前端代码传递密钥。 ## 免计费模型发现 下载 [本地请求示例 request.py](/docs/examples/request.py),在电脑终端运行: ```sh python3 request.py /v1/models ``` Windows可使用`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-charge ``` ### Chat 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-charge ``` ### Anthropic 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`,对结果不明的生成请求先查状态再决定是否重试。