Prerequisites: API Key and SDK
首先创建账户并生成 API 密钥。在“获取 API 密钥”页面上,使用 使用 Google 继续 或通过电子邮件和密码注册。无需电话号码。每个账户仅有一个有效密钥;创建新密钥将立即替换旧密钥。请妥善保管此密钥,因为它用于对所有请求到我们的 base URL 进行身份验证:https://api.chatbotnsfw.com/v1。
我们建议您安装首选语言的官方 SDK。我们的 API 遵循标准的 OpenAI 接口,因此您可能已经具备所需的工具。您只需将 SDK 指向我们的特定 base_url,并将您的密钥注入到 authorization header 中即可。
初始化客户端
配置您的客户端库以与我们的无审查 LLM 服务进行通信。将 base_url 设置为我们的端点,并分配您生成的 API 密钥。这确保所有后续调用正确路由到我们的服务器。您无需配置复杂的路由或从多个模型中进行选择。
- Base URL:
https://api.chatbotnsfw.com/v1 - 模型 ID:
uncensored - Authentication: Bearer token via API key
此配置适用于任何与 OpenAI 兼容的客户端。调整配置对象以匹配您的 SDK 要求。模型 uncensored 是一个开放权重模型,针对成人内容进行了调整,在合法使用时不会拒绝。
发送简单的聊天补全
发起首次请求以生成文本。使用 POST /v1/chat/completions 端点。发送包含用户提示的消息数组。模型将返回文本响应。这是一个标准的 chat-completions 调用。不涉及嵌入或图像生成。
curl https://api.chatbotnsfw.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Run the user verification script on test account 77"}]
}'检查返回的生成文本。如果遇到 401 错误,说明您的密钥无效。402 错误表示您需要更多预付费额度。错误不会消耗令牌。因涉及未成年人内容而拒绝的请求是免费的。先用一个简单的提示词来验证连接。
处理流式响应
使用服务器发送事件(SSE)进行实时令牌传递。流式传输为长响应提供更好的用户体验。在请求中将 stream 参数设置为 true。API 会在生成时返回数据块。处理每个数据块以逐步更新您的 UI。
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)最后一个 chunk 包含请求的总 token 用量。这使您可以准确跟踪成本。流式传输适用于所有标准参数。它非常适合对延迟敏感的角色扮演场景。处理流结束事件以正确关闭连接。
配置 NSFW 内容参数
使用标准参数调整模型行为。调整 temperature 以控制创造性。使用 top_p 进行核采样。设置 stop 序列以控制输出长度。使用 seed 以获得可复现的结果。这些参数会影响无审查模型生成文本的方式。
from openai import OpenAI
client = OpenAI(base_url="https://api.chatbotnsfw.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)通过将 response_format 设置为 {"type": "json_object"} 来启用 JSON 模式。这对于结构化数据输出非常有用。函数调用也通过 tools 参数得到支持。你可以指定 tool_choice 以实现特定行为。这些功能与我们的 API 无缝协作。
错误处理和令牌限制
了解限制和错误代码。上下文窗口总计为 100,000 个 token。没有单独的输出上限:响应可以使用窗口中剩余的所有空间。如果您未设置 max_tokens,响应可以一直运行到窗口末尾。每分钟允许 300 次请求。每个密钥的并发请求限制为 8 个。请求体不能超过 8 MB。
常见错误包括 401(无效密钥)、402(余额不足)和 429(速率限制)。信用额度为预付费且永不过期。错误不会消耗令牌。涉及未成年人内容的拒绝请求免费。请根据这些限制规划应用的扩展策略。通过响应头监控您的使用情况。
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.chatbotnsfw.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);