Base URL và Xác thực
Kết nối với API bằng cách sử dụng URL cơ sở được cung cấp và khóa API của bạn. Điểm cuối này hoạt động với các SDK OpenAI tiêu chuẩn chỉ bằng cách cập nhật cấu hình. Bạn nhận được một khóa hoạt động cho mỗi tài khoản, được tạo ra thông qua Google hoặc email khi đăng ký. Khóa này xác thực mọi yêu cầu bạn thực hiện với dịch vụ.
curl https://api.hubuncensored.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Generate a JSON object with user id and role"}]
}'Giữ khóa của bạn an toàn. Nếu bạn tạo một khóa mới, khóa trước đó sẽ trở nên vô hiệu ngay lập tức. Điều này đảm bảo bạn luôn kiểm soát quyền truy cập vào khoản tín dụng trả trước của mình mà không có các quyền hạn tồn dư.
Endpoint Hoàn thành Trò chuyện
Gửi dữ liệu lời nhắc của bạn đến điểm cuối hoàn thành trò chuyện để tạo văn bản. Đây là giao diện chính cho các ứng dụng của bạn, xử lý tất cả đầu vào và đầu ra văn bản. Bạn phải chỉ định mô hình là 'uncensored' để đảm bảo hành vi nhất quán. API xử lý yêu cầu của bạn và trả về phản hồi văn bản đã tạo.
from openai import OpenAI
client = OpenAI(base_url="https://api.hubuncensored.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)Lỗi như 401 cho biết khóa không hợp lệ, trong khi 402 nghĩa là bạn cần thêm tín dụng. Các yêu cầu được tính phí dựa trên việc sử dụng token thực tế, nên lỗi không làm cạn kiệt số dư của bạn.
Phản hồi luồng qua SSE
Nhận token theo thời gian thực bằng cách sử dụng Server-Sent Events (SSE). Phương pháp này làm giảm độ trễ cảm nhận cho các đầu ra dài bằng cách cung cấp dữ liệu khi chúng được tạo. Bạn có thể phân tích chunk cuối cùng để lấy thống kê sử dụng token chính xác cho việc tính phí. Streaming lý tưởng cho các giao diện người dùng nơi phản hồi ngay lập tức rất quan trọng.
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)Cửa sổ ngữ cảnh cho phép tổng cộng 100.000 token, bao gồm cả prompt và completion. Việc phát trực tiếp (streaming) không thay đổi các giới hạn token cơ bản hoặc cấu trúc giá.
Function Calling và chế độ JSON
Sử dụng gọi hàm để tích hợp các đầu ra có cấu trúc vào quy trình làm việc của bạn. Chỉ định các công cụ và tool_choice để hướng định dạng phản hồi của mô hình. Bạn cũng có thể ép chế độ JSON nghiêm ngặt bằng tham số response_format để phân tích đáng tin cậy. Điều này đảm bảo ứng dụng của bạn nhận được dữ liệu chính xác theo cấu trúc bạn xác định.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.hubuncensored.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);Những tính năng này hoạt động trong mô hình không kiểm duyệt đơn lẻ. Không có định tuyến mô hình hoặc lựa chọn giữa các nhà cung cấp khác nhau. Bạn dựa vào một mô hình trọng lượng mở được tinh chỉnh cho nội dung không giới hạn.
Tham số: Nhiệt độ, Top P và Dừng
Kiểm soát hành vi sinh văn bản bằng các tham số tiêu chuẩn như temperature và top_p. Điều chỉnh các giá trị này để cân bằng giữa sáng tạo và tính xác định trong các đầu ra của bạn. Tham số stop cho phép bạn dừng sinh văn bản tại các chuỗi cụ thể. Bạn cũng có thể đặt presence_penalty và frequency_penalty để tinh chỉnh phong cách đầu ra.
Đặt max_tokens thành 16,000 cho các phản hồi dài. Nếu bạn bỏ qua max_tokens, giá trị mặc định là 2,048 token mỗi yêu cầu. Các cài đặt này cho bạn quyền kiểm soát chính xác quá trình tạo dữ liệu.
Giới hạn, Lỗi và Cửa sổ ngữ cảnh
Theo dõi mức sử dụng dựa trên các giới hạn tốc độ nghiêm ngặt để đảm bảo hoạt động trơn tru. Bạn được phép 300 yêu cầu mỗi phút và 8 yêu cầu đồng thời mỗi khóa. Kích thước thân yêu cầu tối đa là 8 MB. Vượt quá các giới hạn này sẽ trả về lỗi giới hạn tốc độ 429. Hiểu các ràng buộc này giúp bạn thiết kế logic thử lại mạnh mẽ.
Cửa sổ ngữ cảnh hỗ trợ tối đa 100,000 token cho tổng cộng. Điều này bao gồm cả prompt đầu vào và completion được tạo ra. Hãy lên kế hoạch sử dụng token phù hợp để tránh bị cắt ngắn hoặc lỗi.