API

用一把密钥调用已开通的模型

鉴权统一为 Authorization: Bearer sk-...。实际能打通的能力和字段取决于该模型在开放平台上的配置,而不是某一份 SDK 的全部功能清单。

根地址

用途地址
服务根https://api.madeapi.com
OpenAI SDK Base URLhttps://api.madeapi.com/v1

列出模型

curl https://api.madeapi.com/v1/models \
  -H "Authorization: Bearer $MADEAPI_KEY"

返回里的 id 原样填进后续请求的 model。

Chat Completions

curl https://api.madeapi.com/v1/chat/completions \
  -H "Authorization: Bearer $MADEAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "你的模型 ID",
    "stream": true,
    "messages": [
      {"role": "system", "content": "回答简洁。"},
      {"role": "user", "content": "2+2 等于几?"}
    ]
  }'

Python

from openai import OpenAI

client = OpenAI(
    api_key="sk-你的密钥",
    base_url="https://api.madeapi.com/v1",
)
r = client.chat.completions.create(
    model="你的模型 ID",
    messages=[{"role": "user", "content": "你好"}],
)
print(r.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.MADEAPI_KEY,
  baseURL: "https://api.madeapi.com/v1",
});
const r = await client.chat.completions.create({
  model: "你的模型 ID",
  messages: [{ role: "user", content: "你好" }],
});
console.log(r.choices[0].message.content);

其他常用入口

协议方法
OpenAI ResponsesPOST /v1/responses
Anthropic MessagesPOST /v1/messages,请求头同时带 x-api-key 或 Bearer,以及 anthropic-version
GeminiPOST /v1beta/models/{model}:generateContent 及对应 stream 接口
图片POST /v1/images/generations、/v1/images/edits
语音/v1/audio/speech、/v1/audio/transcriptions、/v1/audio/translations
向量 / 重排POST /v1/embeddings、POST /v1/rerank
同一模型未必实现全部入口。先看开放平台该模型说明,再用 Playground 或最小请求验证。流式输出需要客户端与反向代理允许 chunked / SSE,不要在中间层把响应缓冲完再返回。

错误怎么读