VI ▾
Lấy khóa API

API Character AI: Chuyển đổi client của bạn trong ba dòng

Kết nối chatbot của bạn với LLM không kiểm duyệt trong vài phút bằng API tương thích OpenAI của chúng tôi. Hướng dẫn này hướng dẫn bạn thiết lập, các yêu cầu cơ bản và truyền phát mà không gặp rắc rối về cấu hình.

https://api.characteraiapi.com/v1

Yêu cầu tiên quyết

Trước khi viết mã, bạn cần một tài khoản hoạt động trên characteraiapi.com. Truy cập trang Lấy khóa API và đăng ký chỉ bằng email và mật khẩu. Không cần thẻ tín dụng để bắt đầu, và tài khoản mới nhận được $0,50 tín dụng dùng thử có hiệu lực trong 7 ngày. Sau khi đăng ký, khóa API của bạn sẽ được hiển thị ngay lập tức. Hãy giữ khóa này an toàn vì nó xác thực mọi yêu cầu đến endpoint. Bạn cũng cần cài đặt SDK ngôn ngữ được hỗ trợ trong môi trường phát triển của bạn. Endpoint character ai api chấp nhận các tham số OpenAI tiêu chuẩn, vì vậy bất kỳ client tương thích OpenAI nào cũng có thể hoạt động với ít thay đổi.

Cài đặt SDK

Đối với dự án Python, hãy cài đặt gói OpenAI chính thức bằng pip. Thư viện này tự động xử lý tuần tự hóa JSON và các yêu cầu HTTP. Đối với ứng dụng Node.js, hãy sử dụng npm để thêm gói openai. Cả hai thư viện đều hỗ trợ các tính năng truyền phát và gọi công cụ được mô tả sau trong hướng dẫn này. Đảm bảo phiên bản SDK của bạn đủ mới để hỗ trợ Sự kiện gửi qua máy chủ (SSE) cho việc truyền phát token theo thời gian thực. Nếu bạn đang sử dụng máy khách HTTP tùy chỉnh thay vì SDK, bạn phải tự xử lý tải trọng JSON và phân tích luồng SSE theo đặc tả API OpenAI.

Xác thực

Mọi yêu cầu đến API đều phải bao gồm khóa API của bạn trong tiêu đề Authorization. Sử dụng định dạng Bearer YOUR_API_KEY. URL cơ sở cho mọi yêu cầu là https://api.characteraiapi.com/v1. Khi sử dụng SDK, hãy đặt cấu hình base_url thành giá trị này và cung cấp khóa của bạn qua tham số api_key. Nếu bạn mất khóa hoặc nghi ngờ bị rò rỉ, bạn có thể tạo lại khóa đó từ bảng điều khiển; khóa cũ sẽ bị thu hồi ngay lập tức. Chỉ cho phép một khóa hoạt động mỗi tài khoản. Đảm bảo bạn đang sử dụng URL cơ sở đúng, vì các yêu cầu đến endpoint OpenAI tiêu chuẩn sẽ thất bại với lỗi 404 hoặc 401.

Hoàn thành trò chuyện cơ bản

Chức năng cốt lõi được cung cấp thông qua endpoint /v1/chat/completions. Gửi yêu cầu POST với tên mô hình là uncensored và lịch sử tin nhắn của bạn. Mô hình trả về đầu ra văn bản mà không áp dụng các bộ lọc nội dung tiêu chuẩn cho nội dung người trưởng thành hợp pháp. Dưới đây là ví dụ curl minh họa một yêu cầu hoàn thành văn bản đơn giản.

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."}]
  }'

Yêu cầu này trả về một đối tượng hoàn thành chứa văn bản được tạo. Bạn có thể điều chỉnh các tham số như temperature để kiểm soát độ ngẫu nhiên hoặc max_tokens để giới hạn độ dài đầu ra. Mô hình hỗ trợ cửa sổ ngữ cảnh 100.000 token, cho phép xử lý lịch sử hội thoại đáng kể hoặc tài liệu dài trong một yêu cầu.

Phản hồi truyền phát

Để có trải nghiệm người dùng tốt hơn, hãy bật chế độ truyền phát bằng cách đặt stream: true trong yêu cầu của bạn. API trả về các sự kiện gửi qua máy chủ (SSE) chứa các khối token riêng lẻ khi chúng được tạo ra. Điều này làm giảm độ trễ cảm nhận đối với các ứng dụng chatbot. Sử dụng tham số stream_options nếu bạn muốn nhận thống kê sử dụng cuối cùng trong sự kiện cuối cùng. Chế độ truyền phát đặc biệt hữu ích cho việc nhập vai nhân vật theo thời gian thực, nơi việc hiển thị văn bản từng từ một sẽ tăng cường sự đắm chìm. Hãy đảm bảo mã client của bạn xử lý đúng định dạng SSE để phân tích từng khối theo thứ tự.

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)

Giới hạn tốc độ và lỗi

API áp dụng giới hạn 300 yêu cầu mỗi phút mỗi khóa. Nếu bạn vượt quá giới hạn này, bạn sẽ nhận được lỗi 429 Quá nhiều yêu cầu. Thân yêu cầu được giới hạn ở 8 MB. Các lỗi phổ biến bao gồm 401 cho khóa không hợp lệ hoặc bị thiếu, và 402 nếu tín dụng trả trước của bạn đã hết. Bạn có thể nạp tiền từ $10 bằng tiền điện tử (USDT hoặc USDC), với tín dụng bổ sung có sẵn cho các khoản gửi lớn hơn. Không giống như một số nhà cung cấp khác, không có phí ẩn hoặc khóa đăng ký; bạn chỉ trả tiền cho các token bạn sử dụng. Giá cả minh bạch: $0,25 cho mỗi 1 triệu token đầu vào và $1,00 cho mỗi 1 triệu token đầu ra. Đảm bảo logic xử lý lỗi của bạn thử lại khi gặp lỗi 429 với độ trễ tăng dần theo cấp số nhân.

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);

Thông số API

Toàn bộ giới hạn và tính năng thực tế của API ở một nơi — hãy kiểm tra trước khi nạp tiền.

MụcGiá trị
Định dạngtương thích OpenAI: mọi SDK OpenAI đều chạy được, chỉ cần đổi base URL và khóa
EndpointPOST /v1/chat/completions · GET /v1/models
Xác thựcAuthorization: Bearer YOUR_KEY
Base URLhttps://api.characteraiapi.com/v1
ID mô hìnhuncensored
Chế độ JSONresponse_format: {"type": "json_object"}
Đầu ra tối đatối đa phần còn lại của cửa sổ 100.000 token; max_tokens tùy chọn (không giới hạn riêng)
Tham sốtemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Cửa sổ ngữ cảnh100.000 token (đầu vào + đầu ra)
Streamingcó — server-sent events; phần cuối chứa lượng token đã dùng
Gọi hàmcó — tools, tool_choice; phản hồi có tool_calls, kể cả khi streaming; kết quả gửi lại bằng role: tool
Kích thước yêu cầutối đa 8 MB
Header phản hồiX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Yêu cầu đồng thờitối đa 8 cùng lúc cho mỗi khóa
Giới hạn tốc độ300 yêu cầu mỗi phút cho mỗi khóa
Thời hạntín dụng đã trả không hết hạn, không đăng ký định kỳ
Thưởng+5% từ $50, +10% từ $100
Nạp tiềnUSDT (TRC20) hoặc USDC (Base), số tiền nguyên bất kỳ từ $10 đến $500
Giá$0,25 cho 1 triệu token đầu vào · $1,00 cho 1 triệu token đầu ra
Tính phítín dụng trả trước theo mức dùng thực tế; lỗi và từ chối miễn phí
Dùng thử miễn phí$0,50 trong 7 ngày, không cần thẻ · Khóa dùng thử: 2 yêu cầu song song, 60 yêu cầu/phút; hạn mức đầy đủ (8 và 300) sau lần nạp đầu
Khóamỗi tài khoản một khóa đang hoạt động; khóa mới thay thế khóa cũ
Đăng nhậpGoogle hoặc email và mật khẩu
Nội dungcho phép nội dung người lớn; từ chối nội dung tình dục liên quan đến trẻ vị thành niên

Mã lỗi

Lỗi trả về dạng JSON với type cố định; yêu cầu lỗi hoặc bị từ chối không bị tính phí.

MãLoạiÝ nghĩa
400bad_requestJSON sai, tin nhắn trống, tham số sai hoặc vượt cửa sổ ngữ cảnh
401missing_key · invalid_key · key_revokedthiếu khóa, sai khóa hoặc khóa đã bị thay
402no_credithết tín dụng — nạp tiền là dùng tiếp ngay
403content_blockednội dung tình dục liên quan trẻ vị thành niên — từ chối, không tính phí
404not_foundendpoint không tồn tại
413request_too_largenội dung lớn hơn 8 MB
429rate_limited · concurrencyvượt 300/phút hoặc 8 đồng thời — chờ rồi thử lại
503upstream_busymô hình đang bận — thử lại sau vài giây

Hỏi đáp

Đây có phải là API Character.ai chính thức không?

Không, đây là dịch vụ độc lập được lưu trữ tại characteraiapi.com. Nó cung cấp mô hình không kiểm duyệt của riêng mình và không liên kết với Character.AI hoặc bất kỳ nhà cung cấp LLM lớn nào khác.

Mô hình có hỗ trợ tạo hình ảnh hoặc âm thanh không?

Không. API chỉ xử lý văn bản. Nó nhận đầu vào văn bản và trả về đầu ra văn bản. Nó không hỗ trợ embedding, tinh chỉnh hoặc đầu vào/đầu ra đa phương tiện.

Thuật ngữ 'không kiểm duyệt' được định nghĩa như thế nào?

Mô hình không từ chối các chủ đề người trưởng thành hợp pháp, hư cấu hoặc gây tranh cãi. Nó chỉ chặn nội dung tình dục liên quan đến trẻ vị thành niên, đây là giới hạn cứng được áp dụng cho mọi yêu cầu.

Khóa của bạn chỉ cách một biểu mẫu

Tạo tài khoản, sao chép khóa, thay đổi URL cơ sở. Đó là toàn bộ quá trình thiết lập.

Lấy khóa API