快速入门:集成 无限制 API
将我们的无审查 API 放入现有代码中。更改一个基础 URL,保留您的逻辑。
前提条件:SDK 与环境配置
为您的语言安装官方 SDK。我们支持任何 openai 兼容客户端。我们的服务作为标准 OpenAI 集成的即插即用替代品。
立即设置您的环境变量。这避免了在源文件中硬编码凭据。您的 API 密钥标识您的账户并跟踪使用情况。
使用标准库版本。大多数开发者已安装这些库。如果尚未安装,请将包添加到您的依赖项中。
认证:设置 API 密钥
通过 Authorization 头部,我们要求每个请求都使用 Bearer 令牌。此方法在所有 OpenAI 兼容端点中均为标准做法。
从仪表板生成您的密钥。每个账户仅接收一个活跃密钥。替换密钥将立即使旧密钥失效。
保持密钥安全。不要在客户端代码中暴露它。我们的端点在处理 token 之前验证凭据。
端点:POST /v1/chat/completions
将提示发送到聊天端点。使用 model field set to uncensored. 这确保请求路由到我们的特定模型。
通过 SSE 实现流式响应
通过将 stream: true. 您会收到生成的数据块。这降低了长输出的感知延迟。
解析服务器发送事件(SSE)格式。每个数据块包含部分文本。聚合这些数据块以重建完整响应。
在最后一个数据块中监控令牌用量。最后一个事件包含完整的用量统计信息。这有助于您准确跟踪成本。
函数调用与工具使用
在请求体中定义工具。模型返回结构化参数。在你的应用逻辑中解析这些参数。
支持标准工具定义。使用 tool_choice 以强制特定行为。这适用于任何 OpenAI 兼容的 SDK。
验证输出格式。确保您的代码能优雅地处理缺失的参数。如果不需要,模型可能会省略字段。
JSON 模式与结构化输出
设置 response_format 到 json_object. 该模型返回严格格式的 JSON。这消除了结构化数据的解析错误。
清晰地定义你的模式。模型精确遵循你的指令。这适用于数据提取或配置生成。
处理 JSON 解析错误。偶尔仍会出现无效结构。为健壮的应用程序实现回退逻辑。
错误处理和速率限制
适当处理 HTTP 状态码。A 401 表示您的密钥无效。A 402 表示余额不足。A 429 表示速率限制。
遵守每分钟 300 个请求的限制。您可以发送 8 个并发请求。超出这些限制将返回 429 错误。等待后重试。
您的上下文窗口为 100,000 个令牌,包括输入和输出。仔细管理令牌预算。每次请求的最大输出为 16,000 个令牌。错误不消耗额度。
cURL
curl https://api.alternativeapiopenai.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the primary functions in this module"}]
}'Python
from openai import OpenAI
client = OpenAI(base_url="https://api.alternativeapiopenai.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.alternativeapiopenai.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);流式传输
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)常见问题
这是真正的 OpenAI API 替代品吗?
是的,它完全遵循 OpenAI 协议。您只需更改 base URL 和模型名称。现有代码无需修改即可运行。
上下文窗口限制是多少?
上下文窗口总计 100,000 个 token。这包括您的输入和模型的输出。每次请求的最大输出为 16,000 个 token。
如何处理速率限制?
您的请求频率限制为每分钟 300 次。您可以进行 8 个并发请求。若超出此限制,您将收到 429 错误。请稍作等待后再重试。
密钥生成只需填写表单
注册,复制你的密钥,并更新你的基础 URL。这就是所需的全部配置。