主题
快速开始
1. 创建令牌
登录控制台,进入「令牌」页面新建一个 API Key。创建时可以限定:
- 可用模型
- 可用分组
- IP 白名单
- 过期时间与额度上限
创建后只会显示一次完整 Key,请立即保存。
2. 设置基地址
下面所有示例都使用一个变量,替换成你自己的域名即可:
bash
export BASE_URL="https://api.nowhub.org"
export NEW_API_KEY="sk-..."Windows(PowerShell)
上面是 bash 写法。PowerShell 临时设置用 $env:BASE_URL="https://api.nowhub.org";持久化用 setx BASE_URL "https://api.nowhub.org"(需重开终端生效)。CMD 用 set BASE_URL=...。
关于路径
基地址不带 /v1。OpenAI 兼容接口是 /v1/chat/completions,Anthropic 兼容接口是 /v1/messages,Gemini 兼容接口是 /v1beta/models/<model>:generateContent。
3. 发第一个请求
关于 <模型ID>
示例里的 <模型ID> 都要替换成模型广场里的实际 ID。模型清单与单价随时调整,本文不写死任何模型名或价格。
bash
curl "$BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer $NEW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "<模型ID>",
"messages": [
{ "role": "user", "content": "用一句话解释什么是 TCP" }
]
}'python
import os
from openai import OpenAI
client = OpenAI(
base_url=f"{os.environ['BASE_URL']}/v1",
api_key=os.environ["NEW_API_KEY"],
)
resp = client.chat.completions.create(
model="<模型ID>",
messages=[{"role": "user", "content": "用一句话解释什么是 TCP"}],
)
print(resp.choices[0].message.content)ts
import OpenAI from 'openai'
const client = new OpenAI({
baseURL: `${process.env.BASE_URL}/v1`,
apiKey: process.env.NEW_API_KEY,
})
const resp = await client.chat.completions.create({
model: '<模型ID>',
messages: [{ role: 'user', content: '用一句话解释什么是 TCP' }],
})
console.log(resp.choices[0]?.message.content)4. 流式返回
在请求体里加 "stream": true,服务端用 SSE 逐块返回:
bash
curl -N "$BASE_URL/v1/chat/completions" \
-H "Authorization: Bearer $NEW_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "<模型ID>",
"stream": true,
"messages": [{ "role": "user", "content": "写一首四行诗" }]
}'5. 确认可用模型
bash
curl "$BASE_URL/v1/models" -H "Authorization: Bearer $NEW_API_KEY"返回值只包含你这个令牌有权限使用的模型;完整清单、分组与实时价格见模型广场。