Xác thực và Thiết lập Base URL
Khóa API của bạn xác thực mọi yêu cầu đến máy chủ của chúng tôi. Chỉ cần đăng ký bằng Google hoặc địa chỉ email và sao chép khóa từ bảng điều khiển của bạn. Dán nó vào biến môi trường của bạn dưới dạng DEEPSEEK_API_KEY và trỏ khách hàng của bạn đến https://api.keyapideepseek.com/v1. URL cơ sở này hoạt động với bất kỳ thư viện tương thích OpenAI tiêu chuẩn nào.
curl https://api.keyapideepseek.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Check the system health and confirm uptime status"}]
}'Bạn có thể xác minh cài đặt của mình bằng cách liệt kê các mô hình có sẵn. Phản hồi xác nhận khóa của bạn là hợp lệ và đang hoạt động. Bước này đảm bảo tích hợp của bạn trỏ đến điểm cuối không lọc chính xác trước khi bạn gửi các prompt.
Endpoint Hoàn thành Trò chuyện
The POST /v1/chat/completions điểm cuối chấp nhận lời nhắc của bạn và trả về phản hồi của mô hình. Bạn gửi một thân JSON chứa các thông điệp, hướng dẫn hệ thống của bạn và các tham số như nhiệt độ. ID mô hình luôn là uncensored. Mô hình đơn lẻ này xử lý tất cả nhu cầu tạo văn bản của bạn mà không có độ phức tạp về định tuyến.
from openai import OpenAI
client = OpenAI(base_url="https://api.keyapideepseek.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)SDK Python xử lý các yêu cầu HTTP một cách tự động. Bạn truyền khóa và URL cơ sở của mình vào hàm tạo máy khách. Phần còn lại của mã sao chép các mẫu OpenAI tiêu chuẩn. Điều này đảm bảo bạn có thể chuyển đổi nhà cung cấp sau này mà không cần viết lại toàn bộ logic ứng dụng của mình.
Phản hồi luồng và sử dụng token
Bật phát trực tiếp bằng cách đặt stream: true trong yêu cầu của bạn. API trả về luồng Server-Sent Events (SSE) gồm các chunk. Mỗi chunk chứa văn bản từng phần và thống kê sử dụng. Chunk cuối cùng bao gồm tổng số token cho yêu cầu.
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)Streaming giảm độ trễ cảm nhận cho người dùng. Bạn có thể hiển thị token khi chúng đến. Điều này rất quan trọng cho việc tạo nội dung dài hoặc các giao diện trò chuyện tương tác. Theo dõi sử dụng token trong chunk cuối cùng để theo dõi chính xác việc tiêu thụ tín dụng trả trước của bạn.
Chế độ JSON và Gọi hàm
Bắt buộc đầu ra có cấu trúc bằng cách đặt response_format để {"type": "json_object"}. Mô hình sẽ trả về JSON thay vì văn bản tự do. Điều này lý tưởng cho các tích hợp API hoặc các tác vụ trích xuất dữ liệu. Bạn cũng có thể định nghĩa các định nghĩa hàm trong prompt của mình để sử dụng công cụ.
Mô hình hỗ trợ tool_choice tham số. Bạn có thể buộc các hàm cụ thể hoặc để mô hình tự quyết định. Sự linh hoạt này cho phép bạn xây dựng các tác nhân phức tạp. Đảm bảo lược đồ hàm của bạn được gõ chặt chẽ để tránh lỗi phân tích cú pháp trong mã máy khách của bạn.
Giới hạn tốc độ và Độ đồng thời
Mỗi khóa API được giới hạn ở 300 yêu cầu mỗi phút. Bạn có thể có tối đa 8 yêu cầu đồng thời hoạt động cùng lúc. Kích thước tối đa của thân yêu cầu là 8 MB. Các giới hạn này ngăn chặn lạm dụng và đảm bảo hiệu suất ổn định cho tất cả người dùng. Vượt quá các giới hạn này sẽ trả về lỗi 429.
Triển khai cơ chế tăng dần thời gian chờ (exponential backoff) trong mã máy khách của bạn. Thử lại các yêu cầu bị lỗi sau một khoảng thời gian ngắn. Điều này xử lý các sự cố mạng tạm thời một cách mượt mà. Tín dụng trả trước của bạn chỉ được tính phí cho các lần hoàn tất thành công, không phải cho các lần thử lại bị giới hạn tốc độ.
Xử lý lỗi và Từ chối
Lỗi 401 có nghĩa là khóa của bạn không hợp lệ hoặc đã hết hạn. Lỗi 402 cho biết số dư trả trước không đủ. Lỗi 429 báo hiệu bạn đã đạt giới hạn tốc độ. Mô hình từ chối các yêu cầu chứa nội dung tình dục liên quan đến trẻ vị thành niên. Tất cả các nội dung người trưởng thành hợp pháp khác đều được phép.
Kiểm tra thân phản hồi lỗi để biết các thông báo chi tiết. Hãy ghi log các lỗi này để gỡ lỗi các vấn đề tích hợp. Tín dụng của bạn không bị tiêu hao cho các yêu cầu thất bại. Mô hình tính phí minh bạch này giúp bạn dự đoán chi phí một cách chính xác mà không có phí ẩn.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.keyapideepseek.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);