快速入门:您的第一个请求
立即向无审查模型发送第一条消息。使用标准的 chat-completions 端点生成文本。该模型针对合法成人用途,不会对自然语言提示进行内容审查。此设置适用于任何 OpenAI 兼容客户端。
安装您首选语言的 SDK。然后配置您的 API 密钥。以下示例展示了用于测试连通性的基本 curl 请求。
您可以调整 temperature 等参数来控制随机性。响应直接返回生成的文本。这种简单的流程让您在构建复杂逻辑之前即可验证 API 是否正常工作。
curl https://api.apiaicharacter.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "What is the current API rate limit status?"}]
}'
基础 URL 和认证
使用此 API 的专用基地址进行连接。将默认端点替换为我们托管的服务器地址。这确保您的请求直接到达无限制模型。身份验证依赖于每个账户的单个 API 密钥。
通过仪表板生成密钥。将其作为 Bearer 令牌传递在 Authorization 头部中。此方法兼容标准的 OpenAI SDK。您可以通过仅更改基础 URL 和密钥来切换提供商。
保持密钥安全。它授予你预付费额度的完全访问权限。生成新密钥后,该密钥将立即替换任何之前的活跃密钥。
端点:聊天补全
通过 chat completions 端点与模型交互。这是唯一的文本生成端点。它接受消息并返回生成的文本。不支持嵌入、图像或音频。
向聊天路由发送 POST 请求。在请求体中包含系统和用户消息。模型处理上下文并生成响应。您可以使用 JSON 模式获取结构化输出。
同样支持函数调用。定义工具,让模型自行决定何时使用。这种灵活性适用于复杂的智能体工作流。响应内容包括生成的内容和 token 使用情况。
from openai import OpenAI
client = OpenAI(base_url="https://api.apiaicharacter.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)
参数:Temperature、Top P 和 Stop
使用标准参数控制输出风格。调整 temperature 以改变创造性。较低的值使响应更具确定性。较高的值引入更多变化。
使用 top P 过滤不太可能的词汇。这有助于在保持连贯性的同时允许创造性。设置 stop 序列以在特定标记处结束生成。这对于控制对话结构非常有用。
seed 参数可确保结果可复现。在调试提示词时使用它。这些参数让您对模型行为拥有精确控制。调整它们以匹配您的应用需求。
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apiaicharacter.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);
流式传输与 token 使用情况
通过服务器发送事件实时接收响应。流式传输降低了用户的感知延迟。API 在生成令牌时发送令牌。这创造了更流畅的阅读体验。
Token 用量在最后一个数据块中报告。这使您能够准确跟踪成本。计费基于实际消耗的 Token。错误和拒绝请求不会产生费用。
实现流处理器来处理数据。在令牌到达时更新您的 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)
速率限制与约束
理解限制以避免服务中断。每个密钥每分钟可发起 300 次请求。并发请求上限为同时 8 个。请求体不得超过 8 MB。
优雅地处理错误。401 状态表示您的密钥无效。402 状态表示信用额度不足。429 状态表示您已达到速率限制。
上下文窗口总共支持 100,000 个 token。这包括提示词和补全部分。每次请求的最大输出为 16,000 个 token。设置 max_tokens 以控制输出长度。错误请求不收费,因此重试逻辑是安全的。
常见问题
适用于无审查应用的 character.ai API 替代方案是什么?
本 API 提供无审查的 LLM 替代方案,用于构建支持 NSFW 的应用。它采用与 character.ai API 相同的 chat-completions 结构,但提供对审查和提示词的直接控制。您可以通过更新 base_url 将其集成到现有项目中。
如何处理速率限制和错误?
限制为每分钟 300 次请求和八个并发请求。401(密钥无效)或 402(无余额)等错误需要采取行动。429 错误表示您应等待后再重试。错误不会消耗信用额度,因此您可以安全重试。
上下文窗口大小是多少?
该模型支持 100,000 token 的上下文窗口。此总数包括输入和输出 token。您可以指定 16,000 token 的最大输出。这允许在长对话中不丢失上下文。
立即获取 API 密钥
注册,复制密钥,并更新基础 URL。所需配置仅此而已。