API 文档 & 快速入门
几分钟内即可开始使用无审查 LLM API。将此即插即用替换项放入现有代码库中,并开始在没有内容过滤器的情况下生成文本。
基础 URL 和认证
使用我们的 base URL 和单个 API 密钥进行连接。该端点接受标准标头。替换 YOUR_API_KEY 使用仪表板中的字符串。
- 基础 URL:
https://api.ollamaopenaicompatibleapi.com/v1 - 模型 ID:
uncensored
认证依赖于 Bearer 令牌。将其传递到 Authorization header. 这确保了与任何 OpenAI SDK 兼容客户端的兼容性。您可以通过 Google 或电子邮件即时生成新密钥。无需手机号码。
聊天完成端点
向以下地址发送 POST 请求 /v1/chat/completions包含您的 messages 数组和模型名称。API 根据您的提示返回文本输出。这适用于使用标准参数的任何提供商。
设置 temperature 以控制创造性,或将其保持较低值以获得精确性。你还可以定义 stop sequences。服务器处理请求并返回补全结果。这是大多数集成的核心交互。
请记住,错误不会消耗您的预付费信用额度。仅对成功的补全进行计费。这在调试阶段保护您的预算。
curl https://api.ollamaopenaicompatibleapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "List the top 10 Linux kernel security patches from 2023"}]
}'
通过 SSE 实现流式响应
通过将 stream: true服务器在生成时发送块。这显著降低了感知延迟。您实时接收部分响应。
解析服务器发送事件(SSE)流。最后一个数据块包含用量统计信息。其中包括输入和输出的令牌计数。您可以在生成过程中动态追踪成本。
此方法非常适合聊天界面。用户可以看到文本逐字出现。它比等待完整响应感觉更灵敏。API 自动处理连接稳定性。
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 模式
在请求体中定义工具。模型可以输出结构化数据。使用 response_format 与 {"type": "json_object"} 适用于严格的 JSON 格式。这确保每次都能输出可解析的内容。
工具定义包括名称、描述和参数。模型决定调用哪个工具。您执行函数并将结果反馈回去。这实现了复杂的智能体工作流。
JSON 模式禁用自由文本生成。它强制模型遵循您的 schema。在集成数据库或 API 时使用此功能。它减少结构化字段中的幻觉。
from openai import OpenAI
client = OpenAI(base_url="https://api.ollamaopenaicompatibleapi.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)
速率限制与请求体
每个密钥每分钟 300 次请求。并发限制为 8 个同时请求。最大请求体大小为 8 MB。这适合大多数文本密集型应用程序。
上下文窗口允许总共 100,000 token。这包括提示和补全。每次请求的最大输出为 16,000 token。如果你省略 max_tokens, 默认值为 2,048。
优雅处理 HTTP 429 错误。它们表示您达到了速率限制。在客户端代码中实现指数退避。这可以防止在流量高峰期间使服务器过载。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.ollamaopenaicompatibleapi.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);
认证错误与限制
401 状态表示您的密钥无效。请检查是否有拼写错误或会话已过期。402 状态表示余额不足。通过加密货币充值以恢复服务。
429 状态表示限流。您已超出每分钟 300 次请求的限制。请降低吞吐量或升级您的密钥。API 会返回清晰的错误消息。
余额永不过期。您可以随时充值。最低充值额为 $20。大额充值适用额外余额。这有助于您的项目平稳运行。
常见问题解答
uncensored LLM API 的基础 URL 是什么?
基础 URL 为 HTTPS://api.ollamaopenaicompatibleapi.com/v1。使用此端点处理所有聊天补全请求。它与标准的 OpenAI SDK 兼容。
模型支持多少上下文窗口?
该模型支持 100,000 token 的上下文窗口。这涵盖了提示 token 和补全 token。每次请求的最大输出为 16,000 个 token。
如果我触及速率限制会怎样?
您收到 429 HTTP 状态码。这意味着您超过了每分钟 300 次请求的限制。等待几秒后,使用退避策略重试。