1. 选择一个无审查的 LLM API
从模型对你自己提示词的反应开始。发送一组固定的合法成人和虚构请求,并记录每一次拒绝。如果一个端点拒绝了合法的创意作品,就会迫使你添加会破坏产品体验的变通方案。
我们的端点直接回答合法的成人、虚构和争议性请求,ID 为 uncensored.
2. 验证 OpenAI 兼容性
将官方 OpenAI SDK 指向基础 URL https://nsfwollama.com/v1 并发送一条简短消息。如果回复在 choices[0].message.content, 您现有的聊天代码无需更改即可工作。
- 检查流式传输是否返回服务器发送事件。
- 检查错误是否以 JSON 格式返回,并包含状态码。
3. 实现流式传输以改善用户体验
用户通过首字出现速度来评判聊天机器人。设置 stream: true, 显示每个到达的块,并将完整文本保留在缓冲区中以供存储。
测量不同长度对话的首 token 时间。在短对话中启动迅速的回复,随着历史记录增长可能会变慢,因此也要测试长对话的情况。
4. 准确计算 Token 成本
角色扮演会话在每次请求时都携带其完整历史,因此输入 token 会随着每轮对话而增长。上下文窗口为 100,000 token,长会话的成本主要是输入。
| 会话 | 输入 token | 输出 token | 成本 |
|---|---|---|---|
| 单一简短回复 | 1,200 | 300 | $0.0003 |
| 长角色扮演回合 | 70,000 | 1,500 | $0.0113 |
在窗口填满之前修剪或总结旧轮次,并存储每次对话的使用量。
5. 优雅处理速率限制
每个密钥允许每分钟 300 次请求和 8 个同时请求。聊天应用单独使用时很少达到该限制,但大量用户的突发流量可能会。按用户排队请求,并对 429 响应使用指数退避进行重试。
在界面中显示简短的等待消息,而不是静默延迟。
6. 定义你的内容边界
在发布前决定您的产品接受什么,并在自己的代码中强制执行。年龄检查、角色扮演角色的同意规则以及您拒绝的所有类别的黑名单都应属于您的应用程序,而不仅仅是在提示词中。
写下规则,并用来自每个类别的提示进行测试。
7. 设置加密支付以进行扩展
预充值信用额度适合流量不均的聊天产品。充值通过 TRC20 上的 USDT 或 Base 上的 USDC 支付,最低 $20,且从 $50 起适用额外信用额度。余额不会低于零,因此失控的循环会在您充值的金额处停止。
将余额连接到您的自定义警报,以便在服务停止前看到余额不足。
8. 使用真实的 NSFW 提示词进行测试
在发布之前,运行一组来自用户的真实提示测试,使用相同的系统消息和相同的对话历史长度。阅读回复,检查每次对话的成本,并记录产品以您未预期的方式运行的每种情况。
每次更改系统提示后重复测试,因为细微的措辞变化可能会极大地改变行为。