Tại sao nên sử dụng API Uncensored.chat?
Các API LLM tiêu chuẩn thường áp dụng các bộ lọc nội dung cứng nhắc, từ chối nội dung người trưởng thành hợp pháp, tiểu thuyết sáng tạo hoặc các chủ đề gây tranh cãi. Một API chat không kiểm duyệt loại bỏ các rào chắn này, cho phép mô hình phản hồi dựa trên độ liên quan thay vì tuân thủ chính sách. Điều này rất quan trọng đối với các ứng dụng cần khả năng mô hình thô mà không có ràng buộc nhân tạo.
API của chúng tôi phục vụ một mô hình trọng số mở duy nhất được tinh chỉnh đặc biệt cho hành vi này. Nó không chuyển hướng giữa các nhà cung cấp hoặc cung cấp nhiều lựa chọn mô hình. Bạn nhận được các đầu ra nhất quán, dự đoán được từ một động cơ tinh chỉnh. Điều này đơn giản hóa việc gỡ lỗi và tinh chỉnh hiệu suất vì bạn không phải xử lý các tính cách mô hình khác nhau hoặc các lớp lọc ẩn.
Khác với các nhà cung cấp đa năng, chúng tôi không tích hợp sẵn embedding, tạo ảnh hay xử lý âm thanh. Điều này giữ cho API nhẹ và nhanh. Nếu ứng dụng của bạn cần khả năng đa phương tiện, hãy tích hợp riêng các tính năng đó và sử dụng API này chỉ để tạo văn bản. Trọng tâm ở đây là hoàn toàn vào việc tạo ra văn bản không kiểm duyệt với chất lượng cao và cửa sổ ngữ cảnh 100.000 token.
Thiết lập môi trường của bạn
Việc tích hợp bắt đầu bằng cách cấu hình môi trường phát triển của bạn để trỏ đến base URL của chúng tôi. Đây là một endpoint tương thích chuẩn với OpenAI, vì vậy bạn có thể sử dụng bất kỳ SDK OpenAI chính thức hoặc thư viện client tương thích nào. Bạn chỉ cần thay đổi base URL và cung cấp khóa API.
Base URL là https://api.nofilteraichat.com/v1. ID mô hình để gửi trong các yêu cầu của bạn là uncensored. Mô hình này chạy trên máy chủ của chúng tôi và không phải là GPT, Claude hoặc bất kỳ mô hình của nhà cung cấp nào khác. Đây là một mô hình trọng số mở được tinh chỉnh cho các phản hồi không kiểm duyệt.
Đảm bảo môi trường của bạn hỗ trợ streaming qua Sự kiện gửi qua máy chủ (SSE) nếu bạn dự định sử dụng đầu ra thời gian thực. API hỗ trợ các tham số chuẩn như temperature, top_p, stop và seed. Bạn cũng có thể bật chế độ JSON bằng cách đặt response_format thành {"type": "json_object"}.
Cửa sổ ngữ cảnh: tổng cộng 100,000 token (prompt + completion). Không có giới hạn output riêng biệt, và nếu max_tokens không được đặt, phản hồi có thể chạy đến hết cửa sổ.
Xác thực với Khóa API
Xác thực được xử lý thông qua khóa API được chuyển trong tiêu đề Authorization. Bạn có thể đăng ký bằng Tiếp tục với Google hoặc email và mật khẩu trên trang Lấy khóa API. Không cần số điện thoại.
Khi bạn tạo tài khoản, bạn nhận được một khóa API hoạt động. Khóa này được hiển thị ngay lập tức khi tạo. Nếu bạn tạo khóa mới, khóa cũ sẽ bị thay thế; chúng tôi không hỗ trợ nhiều khóa đồng thời cho mỗi tài khoản. Điều này giúp đơn giản hóa việc quản lý khóa nhưng có nghĩa là bạn không thể có các khóa riêng biệt cho các môi trường khác nhau trên cùng một tài khoản.
Khóa API được dùng để xác thực các yêu cầu đến endpoint /v1/chat/completions. Lỗi và từ chối (ngoại trừ trường hợp vượt giới hạn cứng về nội dung tình dục vị thành niên) không tiêu tốn tín dụng trả trước của bạn. Tín dụng chỉ được tính dựa trên lượng token thực tế sử dụng.
Quyền riêng tư: Prompt không được sử dụng để huấn luyện. Tài khoản chỉ cần địa chỉ email.
Gửi yêu cầu đầu tiên của bạn
Yêu cầu đầu tiên của bạn nên là một yêu cầu hoàn thành trò chuyện đơn giản để xác minh kết nối. Sử dụng endpoint POST /v1/chat/completions với ID mô hình uncensored.
Dưới đây là ví dụ về một yêu cầu cơ bản:
curl https://api.nofilteraichat.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 gửi một prompt và nhận phản hồi văn bản. Mô hình sẽ trả lời mà không lọc nội dung người trưởng thành hợp pháp. Nếu bạn cần buộc một giọng điệu hoặc định dạng cụ thể, hãy sử dụng tin nhắn system để đặt hướng dẫn.
Lưu ý rằng API có giới hạn 300 yêu cầu mỗi phút trên mỗi khóa và cho phép 8 yêu cầu đồng thời. Nếu bạn vượt quá các giới hạn này, bạn sẽ nhận được lỗi giới hạn tốc độ. Kích thước thân yêu cầu được giới hạn ở 8 MB. Hãy đảm bảo client của bạn xử lý các giới hạn này một cách mượt mà bằng cách triển khai cơ chế backoff theo cấp số nhân cho các lần thử lại.
Triển khai phản hồi streaming
Streaming được hỗ trợ qua Sự kiện gửi qua máy chủ (SSE). Điều này cho phép bạn nhận token khi chúng được tạo, cung cấp trải nghiệm người dùng tốt hơn cho các phản hồi dài. Mỗi chunk chứa một phần delta của phản hồi.
Quan trọng: Thống kê sử dụng token (token đầu vào và đầu ra) chỉ được bao gồm trong chunk cuối cùng của luồng. Bạn phải tổng hợp các delta và sau đó xử lý chunk cuối cùng để có dữ liệu sử dụng chính xác cho mục đích thanh toán.
Dưới đây là ví dụ về cách xử lý streaming trong mã của bạn:
from openai import OpenAI
client = OpenAI(base_url="https://api.nofilteraichat.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)Cách tiếp cận này đảm bảo bạn có thể hiển thị văn bản theo thời gian thực trong khi vẫn theo dõi việc tiêu thụ token một cách chính xác. Nếu xảy ra lỗi trong quá trình streaming, luồng có thể kết thúc sớm. Hãy kiểm tra chunk cuối cùng hoặc trạng thái lỗi để biết chi tiết.
Sử dụng gọi hàm
Gọi hàm được hỗ trợ thông qua các tham số tools và tool_choice. Điều này cho phép mô hình xuất dữ liệu có cấu trúc mà ứng dụng của bạn có thể thực thi. Xác định các hàm của bạn trong mảng tools, và mô hình sẽ trả về trường tool_calls trong phản hồi khi thích hợp.
Đặt tool_choice thành "auto" để cho phép mô hình quyết định khi nào gọi một hàm, hoặc chỉ định một ID hàm cụ thể để buộc gọi. Mô hình sẽ trả về tên hàm và đối số ở định dạng JSON.
Cấu trúc ví dụ:
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nofilteraichat.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);Đảm bảo client của bạn phân tích mảng tool_calls và thực thi các hàm. Mô hình không tự thực thi các hàm; nó chỉ tạo ra các hướng dẫn gọi. Đây là một mẫu tương thích chuẩn với OpenAI, vì vậy bất kỳ thư viện nào hỗ trợ gọi hàm với OpenAI đều sẽ hoạt động ở đây.
Xử lý chế độ JSON
Chế độ JSON đảm bảo mô hình xuất ra JSON hợp lệ nghiêm ngặt. Điều này hữu ích cho các ứng dụng cần dữ liệu có cấu trúc, chẳng hạn như phản hồi API hoặc tệp cấu hình. Đặt response_format thành {"type": "json_object"} trong yêu cầu của bạn.
Khi chế độ JSON được bật, mô hình sẽ cố gắng xuất một đối tượng JSON hợp lệ duy nhất. Nếu đầu ra không hợp lệ, API có thể trả về lỗi hoặc phản hồi bị lỗi. Luôn xác thực JSON ở phía client.
Ví dụ:
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)Chế độ này đặc biệt hữu ích để xây dựng các agent hoặc ứng dụng yêu cầu định dạng đầu ra xác định. Nó giảm nhu cầu xử lý sau để trích xuất dữ liệu có cấu trúc từ văn bản tự do. Lưu ý rằng chế độ JSON có thể làm tăng độ trễ nhẹ do ràng buộc bổ sung trên đầu ra của mô hình.
Quản lý giới hạn tốc độ và lỗi
Giới hạn tốc độ được thực thi ở mức 300 yêu cầu mỗi phút cho mỗi khóa và 8 yêu cầu đồng thời cho mỗi khóa. Thân yêu cầu bị giới hạn ở 8 MB. Nếu bạn vượt quá các giới hạn này, bạn sẽ nhận được mã trạng thái 429. Triển khai backoff theo cấp số nhân trong client của bạn để xử lý các lần thử lại.
Các lỗi như tham số không hợp lệ hoặc sự cố máy chủ không tiêu thụ tín dụng. Việc từ chối nội dung người trưởng thành hợp pháp cũng không tiêu thụ tín dụng. Giới hạn cứng duy nhất luôn áp dụng là việc từ chối nội dung tình dục liên quan đến trẻ vị thành niên, điều này sẽ tiêu thụ token nếu yêu cầu được xử lý.
Giá cả minh bạch: $0,15 cho mỗi 1 triệu token đầu vào và $0,50 cho mỗi 1 triệu token đầu ra. Tín dụng là trả trước và không bao giờ hết hạn. Lỗi là miễn phí, vì vậy bạn có thể thử nghiệm mà không cần lo lắng về chi phí. Nếu bạn gặp sự cố về thanh toán, hãy sử dụng trang Hỗ trợ để được trợ giúp.
