Character AI API:三行代码切换客户端
几分钟内将聊天机器人连接到无审查 LLM。使用我们的 OpenAI 兼容 API,本指南将引导你完成设置、基本请求和流式输出,无需配置麻烦。
https://api.characteraiapi.com/v1
前提条件
在编写代码之前,你需要在 characteraiapi.com 上拥有一个活跃账户。访问 获取 API 密钥 页面,只需使用邮箱和密码即可注册。开始使用无需信用卡,新账户会获得有效期为 7 天的 $0.50 免费试用额度。注册完成后,你的 API 密钥会立即显示。请妥善保管该密钥,因为它用于对所有请求进行身份验证。你还需要在开发环境中安装支持的语言 SDK。character ai api 接口接受标准的 OpenAI 参数,因此任何现有的 OpenAI 兼容客户端只需少量修改即可使用。
安装 SDK
对于 Python 项目,使用 pip 安装官方 OpenAI 包。该库会自动处理 JSON 序列化和 HTTP 请求。对于 Node.js 应用,使用 npm 添加openai包。这两个库都支持本指南后面描述的流式和工具调用功能。确保你的 SDK 版本足够新,以支持用于实时 token 流式输出的服务器发送事件 (SSE)。如果你使用的是自定义 HTTP 客户端而非 SDK,则必须根据 OpenAI API 规范手动处理 JSON 负载和 SSE 流解析。
身份验证
每个 API 请求必须在Authorization标头中包含你的 API 密钥。使用格式Bearer YOUR_API_KEY。所有请求的基础 URL 为https://api.characteraiapi.com/v1。使用 SDK 时,将base_url配置设置为该值,并通过api_key参数提供密钥。如果你丢失了密钥或怀疑泄露,可以从仪表板重新生成它;旧密钥将立即失效。每个账户只允许一个活跃密钥。请确保使用正确的基础 URL,因为向标准 OpenAI 接口发出的请求将返回 404 或 401 错误。
基本聊天补全
核心功能通过/v1/chat/completions接口提供。发送 POST 请求,模型名称为uncensored,并附带你的消息历史。该模型返回文本输出,不对合法的成人内容应用标准内容过滤器。下面是一个演示简单文本补全请求的 curl 示例。
curl https://api.characteraiapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
}'
此请求返回包含生成文本的补全对象。你可以调整temperature等参数来控制随机性,或调整max_tokens来限制输出长度。该模型支持 100,000 token 的上下文窗口,允许在单个请求中处理大量的对话历史或长文档。
流式响应
为了获得更好的用户体验,请在请求中设置stream: true以启用流式输出。API 会返回服务器发送事件 (SSE),其中包含生成时的部分 token 块。这降低了聊天机器人应用的感知延迟。如果你希望在最后一个事件中接收最终的使用统计信息,请使用stream_options参数。流式输出对于实时角色扮演的聊天机器人特别有用,因为逐字显示文本可以增强沉浸感。确保你的客户端代码正确处理 SSE 格式,以便按顺序解析每个块。
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 对每个密钥实施每分钟 300 次请求的限制。如果超出此限制,你将收到 429 Too Many Requests 错误。请求体限制为 8 MB。常见错误包括:密钥无效或缺失时返回 401,预付额度耗尽时返回 402。你可以使用加密货币(USDT 或 USDC)从 10 美元起充值,大额存款可获得额外额度。与某些提供商不同,这里没有隐藏费用或订阅锁定;你只需为消耗的 token 付费。价格透明:每 100 万输入 token $0.25,每 100 万输出 token $1.00。确保你的错误处理逻辑在遇到 429 错误时进行指数退避重试。
from openai import OpenAI
client = OpenAI(base_url="https://api.characteraiapi.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)Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.characteraiapi.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);API 技术参数
所有限制、功能与价格一览。
| 项目 | 说明 |
|---|---|
| 接口格式 | 兼容 OpenAI:任何 OpenAI SDK 或客户端只需更换 base URL 和密钥 |
| 接口 | POST /v1/chat/completions · GET /v1/models |
| 认证 | Authorization: Bearer YOUR_KEY |
| Base URL | https://api.characteraiapi.com/v1 |
| 模型 ID | uncensored |
| JSON 模式 | response_format: {"type": "json_object"} |
| 最大输出 | 不单独限制输出;提示+回复共 100,000 个 token 窗口内,max_tokens 可选 |
| 采样参数 | temperature、top_p、stop、seed、presence_penalty、frequency_penalty |
| 上下文窗口 | 100,000 tokens(输入与输出合计) |
| 流式输出 | 支持 SSE,最后一块包含 token 用量 |
| 函数调用 | 支持 tools、tool_choice;回复包含 tool_calls(流式同样支持),结果以 role: tool 消息返回 |
| 请求大小 | 每次请求不超过 8 MB |
| 响应头 | X-Request-Id、X-Balance-USD、X-RateLimit-Limit-Requests、X-RateLimit-Limit-Concurrency |
| 并发 | 每个密钥同时最多 8 个请求 |
| 速率限制 | 每个密钥每分钟 300 次请求 |
| 额度有效期 | 付费额度永不过期,无订阅 |
| 赠送额度 | 满 $50 送 5%,满 $100 送 10% |
| 充值 | USDT(TRC20)或 USDC(Base),$10–$500 任意整数金额 |
| 价格 | 输入 $0.25 / 百万 tokens · 输出 $1.00 / 百万 tokens |
| 计费 | 预付额度,按实际 token 用量扣费;错误和拒绝不收费 |
| 免费试用 | $0.50,有效期 7 天,无需银行卡 · 试用密钥:2 个并发请求,每分钟 60 次;首次充值后恢复完整限额(8 和 300) |
| 密钥 | 每个账户一个有效密钥;生成新密钥后旧密钥失效 |
| 登录 | Google 或邮箱 + 密码 |
| 内容政策 | 允许成人内容;涉及未成年人的性内容一律拒绝 |
错误代码
错误以 JSON 返回,type 字段固定;失败或被拒绝的请求不计费。
| 状态码 | 类型 | 含义 |
|---|---|---|
400 | bad_request | JSON 无效、消息为空、参数错误或超出上下文窗口 |
401 | missing_key · invalid_key · key_revoked | 缺少密钥、密钥错误或已被新密钥替换 |
402 | no_credit | 余额不足——充值后立即恢复 |
403 | content_blocked | 涉及未成年人的性内容——拒绝且不计费 |
404 | not_found | 未知接口 |
413 | request_too_large | 请求体超过 8 MB |
429 | rate_limited · concurrency | 超过每分钟 300 次或 8 个并发——稍后重试 |
503 | upstream_busy | 模型繁忙——几秒后重试 |
问答
这是官方的 Character.ai API 吗?
不是。这是一个托管在 characteraiapi.com 的独立服务。它提供自己的无审查模型,与 Character.AI 或其他任何大型 LLM 供应商均无关联。
该模型支持图像或音频生成吗?
不支持。API 仅支持文本。它接受文本输入并返回文本输出。不支持嵌入、微调或多模态输入/输出。
“无审查”是如何定义的?
该模型不会拒绝合法的成人、虚构或争议性话题。它仅屏蔽涉及未成年人的色情内容,这是对所有请求应用的硬性限制。
只差一张表单,即可获得密钥
创建账户,复制密钥,更改基础 URL。这就是全部设置。