基础 URL 和认证
认证需要一个在标头中传递的单个 API 密钥 Authorization 。
每次请求必须针对基础 URL https://api.dolphinaisincensura.com/v1 并将密钥作为 Bearer YOUR_API_KEY.
此配置适用于任何 OpenAI 兼容的 SDK,只需更新 base_url 配置。
错误如 401 表示密钥无效或缺失,而 402 表示预付费余额不足。
curl https://api.dolphinaisincensura.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "list the python imports for requests and json"}]
}'
发送聊天补全请求
向以下地址发送 POST 请求 /v1/chat/completions 带有 model field set to uncensored.
包含一个 messages 包含您的提示历史以维护对话上下文的数组。
API 直接在 content field of the first choice.
单模型方法消除了代理费用,并确保以每 1M 输入令牌 $0.15 的价格提供可预测的定价。
from openai import OpenAI
client = OpenAI(base_url="https://api.dolphinaisincensura.com/v1", api_key="YOUR_KEY")
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)
处理流式传输(SSE)
通过将 stream 到 true 在请求负载中。
服务器通过服务器发送事件(SSE)增量返回令牌。
解析每个 SSE 数据块以提取生成的文本,无需等待完整响应。
Token 用量统计信息在流的最后一个数据块中提供,以实现准确计费。
stream = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Tell the story in second person."}],
stream=True,
)
for chunk in stream:
if chunk.choices and chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
函数调用与 JSON 模式
使用 tools 用于定义用于结构化数据提取的函数模式。
设置 response_format 到 {"type": "json_object"} 以强制严格的 JSON 输出以便可靠解析。
指定 temperature 和 top_p 以控制结果中的创造力与确定性。
这些功能使您能够构建与外部 API 或数据库交互的自主代理。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.dolphinaisincensura.com/v1", apiKey: process.env.API_KEY });
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);
理解 Token 限制与上下文
上下文窗口支持提示和补全合计 100,000 个 token。
每次请求的最大输出为 16,000 个 token,如果 max_tokens 未设置。
每个 API 密钥每分钟允许 300 次请求和 8 个并发请求。
请求超过 8 MB 的主体大小限制或达到并发上限时将返回 429 错误。
错误响应和拒绝不会消耗您的预付费余额。
速率限制与并发
每个 API 密钥每分钟限 300 次请求,同时最多支持 8 个并发连接。
429 状态码表示您已超出这些并发或速率阈值。
您可以生成新密钥以替换现有密钥,但每个账户只允许一个活跃密钥。
通过响应头监控使用情况,以确保请求体不超过 8 MB 的限制。