为什么为您的应用选择 NSFW LLM
直接集成消除了复杂模型路由或多个供应商密钥的需求。单一无审查模型处理标准提示和成人提示,无需任意拒绝。这种方法显著简化了您的架构。您避免了管理来自不同提供商的多个 API 密钥的开销。
开发者通常难以应对标准模型中不一致的内容过滤。NSFW LLM API 为角色扮演和创意写作提供了可预测的行为。该模型经过调优,能够无屏蔽地回答问题。对于依赖一致响应的用户体验的应用程序来说,这种可靠性至关重要。
- 单一模型降低复杂性。
- 成人主题不会被任意拒绝。
- 标准 OpenAI 兼容端点。
了解 OpenAI 兼容端点
我们的 API 使用标准的 /v1/chat/completions 端点,确保与现有工具的兼容性。您可以使用官方 OpenAI SDK 或任何 OpenAI 兼容客户端库。只需更改 base URL 并提供 API 密钥即可。这种兼容性意味着您可以以最小的改动迁移现有代码。
该端点支持文本输入、文本输出交互。它不提供嵌入、图像生成或音频处理。这种专注的设计使 API 快速且具有成本效益。你可以直接访问模型的功能,而无需不必要的开销。
以下是如何构建您的请求:
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"}]
}'- 基础 URL:HTTPS://api.chatbotnsfw.com/v1
- 方法:POST
- 端点:/chat/completions
设置您的开发环境
安装您首选语言的 OpenAI SDK。SDK 会自动处理身份验证和请求格式化。您只需配置基础 URL 和 API 密钥。此设置适用于 Python、Node.js 和其他流行语言。
确保您的环境变量设置正确。安全存储您的 API 密钥以防止未经授权使用。API 密钥在注册后立即生成。您可以通过开发者仪表板管理您的密钥。
考虑使用虚拟环境以避免依赖冲突。这种做法使你的项目保持整洁且易于管理。它也更容易与其他开发者共享你的代码。
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)
配置 API 客户端
配置你的客户端指向我们的基础 URL。在授权头中设置 API 密钥。SDK 将处理其余通信。此配置确保你的请求被正确路由。
您可以调整诸如 temperature 和 top_p 等参数来控制回复的多样性。这些设置允许您微调模型的行为。较高的 temperature 值会产生更具创造性的输出。较低的值则产生更具确定性的回复。
使用简单的提示词测试您的配置。验证您是否收到有效的响应。此步骤可在您进行更复杂的交互之前确认您的设置正确无误。
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);
发送你的第一个 NSFW 提示词
构造包含系统消息和用户提示的请求。系统消息用于定义模型的行为。用户提示包含您希望处理的实际内容。将此请求发送到 /v1/chat/completions 端点。
该模型将直接返回文本。您可以解析响应以提取生成的内容。此内容可以显示给用户或进行进一步处理。
请记住,该模型是无审查的。它将响应成人主题而无需拒绝。这使其成为角色扮演和创意写作应用的理想选择。您无需担心内容过滤器会阻止您的提示。
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)
处理实时聊天的流式响应
通过设置 stream 参数为 true 启用流式传输。API 将逐个 token 发送响应。这允许在聊天应用中提供更流畅的用户体验。用户可以看到文本在生成时实时出现。
解析流式响应以提取每个 token。累积这些 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)
为成本效率优化令牌使用
监控您的令牌使用情况以有效管理成本。API 每 1M 输入令牌收费 $0.15,每 1M 输出令牌收费 $0.50。保持提示简洁以减少输入令牌的使用。截断冗长的对话历史以保持在上下文窗口内。
上下文窗口为 100,000 个 token。这支持在不丢失上下文的长对话。然而,较长的对话会消耗更多 token。请注意 token 数量,以避免意外费用。
使用 /v1/models 端点查看模型详情。此端点提供关于模型功能的信息。它帮助您了解可用的限制和功能。
高级参数:temperature 和 top_p
调整 temperature 参数以控制随机性。temperature 0.7 是一个良好的起点。较高的值增加创意但可能降低连贯性。较低的值使输出更可预测。
使用 top_p 参数控制响应的多样性。它将模型限制在最高的概率质量内。这种技术有助于避免低概率、无意义的输出。将其与 temperature 结合使用以实现细粒度控制。
实验这些参数以找到最佳平衡。不同的应用可能需要不同的设置。角色扮演可能受益于较高的 temperature。事实性查询可能需要较低的 temperature。
排查常见的集成错误
常见错误包括无效 API 密钥和速率限制。请检查 API 密钥是否有拼写错误并确保其处于活动状态。速率限制设置为每分钟 300 次请求。超过此限制将导致 429 错误。
验证您的请求体是否小于 8 MB。大型负载可能导致超时或错误。确保您的 JSON 格式良好且有效。无效的 JSON 将导致 400 错误。
查看文档以获取详细的错误代码。API 返回清晰的错误消息,帮助你诊断问题。使用这些消息快速识别和解决问题。