Định dạng tương thích OpenAI của Claude
Fast-Token hỗ trợ gọi các mô hình Anthropic Claude qua giao thức API OpenAI. Nếu bạn đã có ứng dụng dùng OpenAI SDK hoặc /v1/chat/completions, thường chỉ cần đổi base_url và model để kết nối Claude, không cần viết lại sang API Messages gốc của Anthropic.
Trang này tập trung vào hướng dẫn sử dụng. Về body request, trường response và gỡ lỗi trực tuyến từng endpoint, xem tài liệu ChatGPT và các liên kết trong bảng năng lực bên dưới.
Hai cách tích hợp
| So sánh | Định dạng tương thích OpenAI (trang này) | API Claude gốc (tài liệu khác trong thư mục) |
|---|---|---|
| Đường dẫn điển hình | POST /v1/chat/completions | POST /v1/messages |
| Body request | Trường OpenAI như messages, model, stream | Trường Anthropic như messages, system, thinking |
| Phù hợp khi | Đã có client OpenAI, cổng đa mô hình, di chuyển nhanh | Tính năng riêng Claude (ngân sách suy nghĩ mở rộng, Tool Use, PDF, tìm kiếm web, v.v.) |
| Tài liệu | Trang này + nhóm Trò chuyện | Trang API trong nhóm Trò chuyện của thư mục |
Hai cách dùng chung API Key và URL cổng. Thanh toán theo mô hình tương ứng trên chợ mô hình.
Cấu hình
Cổng và xác thực
- Base URL:
https://fast-token.com/v1(giống Bắt đầu nhanh) - Xác thực: header
Authorization: Bearer <Fast-Token_API_KEY> - Tên mô hình: sao chép ID có
claudetừ chợ mô hình vào trườngmodel
Dùng OpenAI SDK (khuyến nghị)
Trỏ base_url của SDK chính thức tới Fast-Token; phần còn lại giống OpenAI:
from openai import OpenAI
client = OpenAI(
base_url="https://fast-token.com/v1",
api_key="<Fast-Token_API_KEY>",
)
completion = client.chat.completions.create(
model="claude-sonnet-4-20250514", # theo chợ mô hình
messages=[
{"role": "user", "content": "用一句话介绍你自己"},
],
)
print(completion.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://fast-token.com/v1",
apiKey: "<Fast-Token_API_KEY>",
});
const completion = await client.chat.completions.create({
model: "claude-sonnet-4-20250514",
messages: [{ role: "user", content: "用一句话介绍你自己" }],
});
console.log(completion.choices[0].message.content);Đặt stream: true cho hội thoại luồng. Xem Tạo hoàn thành trò chuyện (luồng).
Tổng quan năng lực định dạng chat tương thích
Các năng lực sau đều qua đường tương thích OpenAI. Trên console hoặc Apifox thường được gom là 「định dạng tương thích chat」. Thực tế chủ yếu cùng POST /v1/chat/completions, phân biệt theo mô hình, luồng và cấu trúc tin nhắn.
| Năng lực | Mô tả | Tham khảo |
|---|---|---|
| Tạo trò chuyện suy nghĩ | Hội thoại có quá trình «suy nghĩ» của mô hình | Luồng (extra_body.enable_thinking) |
| Tạo hoàn thành trò chuyện (luồng) | Chat văn bản đa lượt chuẩn, SSE | Tạo hoàn thành trò chuyện (luồng) |
| Tạo hoàn thành trò chuyện (không luồng) | Chat văn bản đa lượt, trả một lần | Tạo hoàn thành trò chuyện (không luồng) |
| Tạo nhận diện hình ảnh chat (luồng) | Tải ảnh để hiểu, mô tả hoặc hỏi đáp | Tạo nhận diện hình ảnh chat (luồng) |
| Tạo nhận diện hình ảnh chat (không luồng) | Nhận diện ảnh, phản hồi đầy đủ không luồng | Tạo nhận diện hình ảnh chat (không luồng) |
Chọn mô hình
ID mô hình cho từng kịch bản lấy từ chợ mô hình. Thử mô hình Claude có claude trong tên và ghi hỗ trợ chat / nhận diện ảnh / suy nghĩ tương ứng. Nếu báo «không tìm thấy mô hình» hoặc không hỗ trợ, đổi sang mục Claude khác cùng kịch bản.
Ghi chú theo kịch bản
Chat chuẩn (luồng / không luồng)
- Endpoint:
POST /v1/chat/completions - Mảng
messagescho hội thoại đa lượt;role:system/user/assistant(giống OpenAI) - Không luồng:
stream: falsehoặc bỏstream→ Tạo hoàn thành trò chuyện (không luồng) - Luồng:
stream: true→ Tạo hoàn thành trò chuyện (luồng) - Tham số chung (
temperature,max_tokens,top_p, v.v.) như tài liệu OpenAI
Vai trò system
Định dạng OpenAI: prompt hệ thống trong messages với role: "system". API Claude gốc thường dùng trường system cấp cao; xem Tạo hoàn thành trò chuyện (luồng).
Chế độ suy nghĩ
Một số mô hình Claude suy nghĩ bật đầu ra suy nghĩ trong request luồng qua trường mở rộng:
{
"model": "claude-sonnet-4-20250514",
"messages": [{ "role": "user", "content": "逐步推导:为什么天空是蓝色的?" }],
"stream": true,
"extra_body": {
"enable_thinking": true
}
}- Cách hiển thị suy nghĩ ở định dạng tương thích phụ thuộc cổng và mô hình; chọn Claude hỗ trợ «suy nghĩ» trên chợ mô hình
- Để kiểm soát chính xác ngân sách token suy nghĩ (
thinking.budget_tokens) và tách khối suy nghĩ / nội dung, dùng API gốc Tạo trò chuyện suy nghĩ mở rộng (POST /v1/messages)
Nhận diện hình ảnh (thị giác)
Trong content tin user, dùng mảng đa phương thức: text + image_url (URL hoặc Base64).
{
"model": "claude-sonnet-4-20250514",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "描述这张图片中的主要内容" },
{
"type": "image_url",
"image_url": { "url": "https://example.com/photo.jpg" }
}
]
}
],
"stream": true
}- Nhận diện luồng:
stream: true— Tạo nhận diện hình ảnh chat (luồng) - Không luồng:
stream: false— Tạo nhận diện hình ảnh chat (không luồng) - Base64: Tạo nhận diện hình ảnh chat (luồng) Base64
Chọn định dạng tương thích OpenAI hay API Claude gốc
| Nhu cầu | Khuyến nghị |
|---|---|
| Tích hợp nhanh, tái sử dụng OpenAI SDK / code hiện có | Định dạng tương thích OpenAI (trang này) |
Suy nghĩ mở rộng, budget_tokens, cấu trúc SSE khối suy nghĩ | API gốc — Tạo trò chuyện suy nghĩ mở rộng |
| Tool Use / gọi hàm | API gốc — Tạo gọi hàm (luồng) |
| Đầu ra có cấu trúc (JSON Schema) | API gốc — Tạo đầu ra có cấu trúc |
| PDF, tìm kiếm web | API gốc — Hỗ trợ PDF, Tìm kiếm web |
| Chỉ cần chat + nhận diện ảnh + suy nghĩ với client OpenAI | Định dạng tương thích OpenAI đủ cho luồng chính |
Câu hỏi thường gặp
H: Sao không giống hệt tài liệu OpenAI chính thức?
Đ: Lớp tương thích căn request/response theo OpenAI, bên dưới chạy Claude. Một số tham số chỉ của OpenAI có thể bị bỏ qua; dựa vào hỗ trợ thực tế của mô hình.
H: model điền gì?
Đ: ID đầy đủ trên chợ mô hình (thường có claude). Không dùng tên rút gọn hoặc lỗi thời.
H: Dùng được Python SDK chính thức của Anthropic không?
Đ: SDK đó mặc định nhắm POST /v1/messages. Nếu giữ SDK đó, xem tài liệu API gốc trong thư mục; OpenAI SDK dùng cho trang này.
H: Định dạng phản hồi luồng?
Đ: SSE, dòng data: {...} và kết thúc data: [DONE], giống OpenAI streaming Chat Completions. Xem Đối tượng khối hoàn thành trò chuyện.
H: Cấu trúc JSON phản hồi đầy đủ?
Đ: Đối tượng hoàn thành trò chuyện. API Messages gốc: Đối tượng hoàn thành trò chuyện (định dạng Anthropic).
Đọc thêm
- Bắt đầu nhanh — lần gọi đầu và API Key
- Hướng dẫn API nhanh — Base URL và client
- Liệt kê mô hình —
GET /v1/models - Trang khác trong thư mục — tham số và ví dụ API Messages gốc Claude