POST /v1/chat/completions theo chuẩn OpenAI Chat Completions. SDK OpenAI chính thức hoạt động khi đổi baseURL thành https://YOUR_DOMAIN/v1.
| Tham số | Bắt buộc | Ghi chú |
|---|---|---|
model | Có | Model id công khai (xem Models) |
messages | Có | Tối đa 1000 message |
max_tokens / max_completion_tokens | Không | Không vượt giới hạn output của model |
stream | Không | true ⇒ SSE |
stream_options | Không | Nền tảng tự bật include_usage |
temperature, top_p, stop | Không | Theo chuẩn OpenAI |
tools, tool_choice | Không | Chỉ với model hỗ trợ tool use |
reasoning_effort | Không | Giá trị hợp lệ khác nhau theo model; gửi sai trả 400 kèm danh sách hợp lệ |
n | Không | Chỉ hỗ trợ 1 |
user | Không | Được chấp nhận và bỏ qua |
Tham số nền tảng chưa hỗ trợ nhưng vô hại sẽ được bỏ qua để SDK không gãy. Nếu tham số xung đột với khả năng thật của model (ví dụ tool use với model không hỗ trợ), request bị từ chối bằng 400 thay vì âm thầm bỏ qua.
{
"id": "chatcmpl-...",
"object": "chat.completion",
"created": 1788000000,
"model": "claude-haiku-4-5",
"choices": [
{
"index": 0,
"message": { "role": "assistant", "content": "..." },
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 10,
"completion_tokens": 4,
"total_tokens": 14
}
}Content-Type là application/json. Nền tảng chuẩn hóa phản hồi upstream nên bạn không bao giờ nhận SSE khi gửi stream: false.
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":"Xin"}}]}
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":" chào"}}]}
data: {"id":"chatcmpl-...","choices":[{"delta":{}}],"usage":{"prompt_tokens":10,"completion_tokens":4,"total_tokens":14}}
data: [DONE]Mỗi chunk được đẩy ngay khi nhận (không buffer). Nếu upstream lỗi giữa stream, nền tảng phát một event lỗi theo đúng định dạng OpenAI rồi đóng kết nối — không cắt cụt im lặng.
curl https://YOUR_DOMAIN/v1/models -H "Authorization: Bearer sk_live_YOUR_KEY"Chỉ trả các model mà gói của key được phép dùng. Không lộ model id nội bộ của nhà cung cấp phía sau.