VI ▾
Lấy khóa API

Hướng dẫn nhanh cho người dùng OpenRouter

Di chuyển các lệnh gọi API OpenRouter sang endpoint không kiểm duyệt của chúng tôi trong vài phút bằng cách thay đổi URL cơ sở và khóa API. Hướng dẫn này bao gồm các tích hợp thiết yếu cho tạo văn bản, truyền phát và đầu ra có cấu trúc.

Bắt đầu với tín dụng dùng thử

Email và mật khẩu, khóa hiện ngay trên màn hình.

Lấy khóa API

Cài đặt & Thiết lập

API của chúng tôi tương thích hoàn toàn với các SDK OpenAI tiêu chuẩn. Để chuyển từ OpenRouter, bạn chỉ cần cập nhật hai giá trị cấu hình: base_url và api_key. Hãy trỏ client của bạn đến https://api.openrouterapi.cc/v1 và sử dụng khóa được tạo trên bảng điều khiển của chúng tôi. Không cần tiêu đề tùy chỉnh hoặc logic định tuyến phức tạp. ID mô hình để yêu cầu là uncensored.

Đảm bảo phiên bản SDK của bạn hỗ trợ tham số base_url. Nếu bạn đang sử dụng client HTTP thô, chỉ cần cập nhật URL đích. Cấu hình này đảm bảo mã client hiện có của bạn hoạt động mà không cần sửa đổi, miễn là bạn chỉ gửi các yêu cầu hoàn thành văn bản.

Xác thực

Xác thực được xử lý qua tiêu đề Authorization tiêu chuẩn. Hãy truyền khóa API của bạn dưới dạng token Bearer. Nếu khóa không hợp lệ hoặc hết hạn, API sẽ trả về lỗi 401. Không giống như một số nhà cung cấp khác, chúng tôi không tính phí cho các yêu cầu thất bại; lỗi và từ chối đều miễn phí, vì vậy bạn có thể kiểm tra xác thực mà không tiêu tốn tín dụng.

Mỗi tài khoản chỉ hỗ trợ một khóa hoạt động tại một thời điểm. Tạo khóa mới sẽ vô hiệu hóa ngay lập tức khóa trước đó. Hãy giữ khóa của bạn an toàn và xoay vòng nếu bạn nghi ngờ bị lộ. Khóa được hiển thị ngay sau khi đăng ký, vì vậy hãy sao chép nó trước khi rời khỏi trang.

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

Chức năng cốt lõi là POST /v1/chat/completions. Gửi prompt dưới dạng danh sách tin nhắn và nhận phản hồi văn bản. Mô hình được tinh chỉnh để trả lời mà không từ chối nội dung cho mục đích người trưởng thành hợp pháp, phù hợp cho các chủ đề sáng tạo, gây tranh cãi hoặc nghiên cứu bảo mật.

Đặt trường model thành uncensored. Bạn có thể kiểm soát hành vi bằng các tham số như temperature, top_p và stop. API hỗ trợ chế độ JSON qua response_format và gọi hàm qua tools. Tất cả yêu cầu được xử lý không đồng bộ và bạn nhận được kết quả đầy đủ khi mô hình hoàn tất.

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

Bật truyền phát bằng cách đặt stream: true trong yêu cầu. API trả về các sự kiện do máy chủ gửi (SSE) với các phản hồi từng phần. Bạn nhận được các đoạn văn bản khi chúng được tạo, cho phép hiển thị thời gian thực trong ứng dụng của bạn.

Thông tin sử dụng token được cung cấp trong chunk cuối cùng của luồng. Điều này cho phép bạn theo dõi chi phí chính xác mà không cần phân tích từng token riêng lẻ. Truyền phát lý tưởng cho các giao diện trò chuyện nơi độ trễ quan trọng. Đảm bảo client của bạn xử lý SSE đúng cách và đóng kết nối khi luồng kết thúc.

Gọi hàm

API hỗ trợ gọi hàm qua tham số tools. Định nghĩa các hàm của bạn trong mảng tools và đặt tool_choice thành auto hoặc tên hàm cụ thể. Mô hình sẽ trả về các đối số JSON có cấu trúc nếu một hàm được kích hoạt.

Tính năng này hữu ích để tích hợp LLM với các API hoặc cơ sở dữ liệu bên ngoài. Đảm bảo các định nghĩa hàm của bạn chính xác, vì mô hình dựa vào chúng để tạo các đối số hợp lệ. API không thực thi các hàm; bạn phải xử lý logic thực thi trong mã ứng dụng của mình.

Chế độ JSON

Để đầu ra có cấu trúc, sử dụng response_format: {"type": "json_object"}. Điều này buộc mô hình trả về JSON hợp lệ, rất cần thiết để phân tích cú pháp dữ liệu trong các ứng dụng xử lý sau. Chế độ JSON thường đáng tin cậy hơn gọi hàm cho các nhiệm vụ trích xuất dữ liệu đơn giản.

Đảm bảo các prompt của bạn hướng dẫn rõ ràng mô hình trả về JSON. Các phản hồi JSON không hợp lệ có thể xảy ra nếu prompt không rõ ràng. Chế độ JSON được hỗ trợ trong cả chế độ tiêu chuẩn và chế độ truyền phát. Hãy sử dụng nó khi bạn cần các đầu ra có thể dự đoán và đọc được bằng máy.

Giới hạn, Lỗi và Ngữ cảnh

Cửa sổ ngữ cảnh là 100,000 token cho prompt và phần hoàn tất cộng lại. Đầu ra tối đa là 32,000 token mỗi yêu cầu (2,048 nếu max_tokens không được đặt). Giới hạn tốc độ là 300 yêu cầu mỗi phút và 8 yêu cầu đồng thời mỗi khóa. Thân yêu cầu được giới hạn ở 8 MB.

Lỗi trả về mã HTTP chuẩn: 401 cho khóa không hợp lệ, 402 cho tín dụng không đủ, và 429 cho giới hạn tốc độ. Tín dụng là trả trước, nên lỗi 402 có nghĩa là bạn cần nạp tiền. Lỗi và từ chối đều miễn phí, nên bạn có thể thử lại mà không tốn chi phí. Giới hạn cứng về nội dung chặn nội dung tình dục liên quan đến trẻ vị thành niên.

cURL

curl https://api.openrouterapi.cc/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."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.openrouterapi.cc/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.openrouterapi.cc/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);

Truyền phá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)

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
ID mô hìnhuncensored
Xác thựcAuthorization: Bearer YOUR_KEY
EndpointPOST /v1/chat/completions · GET /v1/models
Base URLhttps://api.openrouterapi.cc/v1
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
Tham sốtemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Cửa sổ ngữ cảnh100.000 token (đầu vào + đầu ra)
Đầ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)
Chế độ JSONresponse_format: {"type": "json_object"}
Giới hạn tốc độ300 yêu cầu mỗi phút cho mỗi khóa
Yêu cầu đồng thờitối đa 8 cùng lúc cho mỗi khóa
Header phản hồiX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Kích thước yêu cầutối đa 8 MB
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í
Thưởng+5% từ $50, +10% từ $100
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
Thời hạntín dụng đã trả không hết hạn, không đăng ký định kỳ
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
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 chính thức của OpenRouter không?

Không, đây là dịch vụ độc lập. Chúng tôi cung cấp một mô hình không kiểm duyệt tương thích với cấu trúc URL cơ sở của OpenRouter. Chúng tôi không cung cấp các mô hình tổng hợp hoặc logic định tuyến của OpenRouter.

Tôi thanh toán cho API như thế nào?

Chúng tôi chỉ chấp nhận thanh toán bằng tiền điện tử: USDT (TRC20) hoặc USDC (Base). Bạn có thể nạp tiền với số nguyên từ $10 đến $500. Không chấp nhận thẻ tín dụng hoặc PayPal.

Prompt có được dùng để huấn luyện không?

Không, prompt của bạn không được dùng để huấn luyện. Chúng tôi chỉ yêu cầu địa chỉ email để tạo tài khoản và không lưu trữ hay sử dụng dữ liệu của bạn để cải thiện mô hình.

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