Văn bản
Tạo Chat Completion
Tạo một phản hồi hoàn thiện cho tin nhắn trò chuyện
Thân yêu cầu
Các tham số tùy chọn được hỗ trợ, giá trị chấp nhận và giá trị mặc định phụ thuộc vào model đã chọn. Hãy kiểm tra chi tiết model trước khi thiết lập các tùy chọn lấy mẫu (sampling), suy luận (reasoning) hoặc công cụ (tool).
ID của model cần sử dụng. Xem Models để biết các tùy chọn khả dụng.
Danh sách các tin nhắn tạo nên cuộc hội thoại.
Mỗi đối tượng tin nhắn bao gồm:
role(string):system,developer,user,assistant,tool,functioncontent(string | array | null): Nội dung tin nhắn
Đối với tin nhắn assistant chứa tool_calls, content có thể được bỏ qua hoặc đặt là null.
Khi content là một mảng, TokenLab hỗ trợ các khối đa phương thức (multimodal) có cấu trúc cho các model tương thích:
- text:
{ "type": "text", "text": "..." } - image:
{ "type": "image_url", "image_url": { "url": "https://..." } } - video:
{ "type": "video_url", "video_url": { "url": "https://..." } } - audio:
{ "type": "audio_url", "audio_url": { "url": "https://..." } }
Đối với đầu vào đa phương thức, hãy sử dụng các URL https có thể truy cập công khai. Các loại phương tiện được hỗ trợ phụ thuộc vào model đã chọn.
Nhiệt độ lấy mẫu (Sampling temperature). Khả năng hỗ trợ, giá trị cho phép và giá trị mặc định phụ thuộc vào model đã chọn; hãy bỏ qua trường này để sử dụng giá trị mặc định của model.
Số lượng token tối đa cần tạo.
falseNếu là true, các phần delta của tin nhắn sẽ được gửi dưới dạng sự kiện SSE.
Các tùy chọn cho việc truyền phát (streaming). Thiết lập include_usage: true để nhận thông tin sử dụng token trong các đoạn stream.
Tham số lấy mẫu Nucleus. Chúng tôi khuyến nghị thay đổi tham số này hoặc temperature, không nên thay đổi cả hai.
Số nằm trong khoảng từ -2.0 đến 2.0. Các giá trị dương sẽ phạt các token bị lặp lại.
Số nằm trong khoảng từ -2.0 đến 2.0. Các giá trị dương sẽ phạt các token đã xuất hiện trong văn bản.
Chuỗi dừng hoặc danh sách các chuỗi dừng. Khả năng hỗ trợ và giới hạn chuỗi phụ thuộc vào model đã chọn.
Danh sách các công cụ mà model có thể gọi (function calling).
Kiểm soát cách model sử dụng công cụ. Các tùy chọn: auto, none, required, hoặc một đối tượng công cụ cụ thể.
Cho phép thực hiện nhiều lệnh gọi công cụ trong một lượt của assistant, khi được model đã chọn hỗ trợ.
Số lượng token tối đa cho phần hoàn thiện. Đây là lựa chọn thay thế cho max_tokens, hữu ích cho các dòng model mới có khả năng suy luận.
Nỗ lực suy luận cho các model hỗ trợ tính năng này. Các giá trị chấp nhận được phụ thuộc vào model đã chọn.
Đối với các model Claude, giá trị này thiết lập tư duy của model: mức độ nỗ lực trên các model có tư duy thích ứng, hoặc ngân sách tư duy trên các model sử dụng ngân sách. none sẽ tắt tư duy trên các model cho phép điều đó. Khi tư duy đang bật, Claude sẽ từ chối temperature khác 1, top_k, top_p nằm ngoài khoảng 0.95–1, và tin nhắn assistant được điền trước. Một tool_choice bắt buộc hoạt động với tư duy thích ứng nhưng không hoạt động với ngân sách tư duy.
Các tùy chọn cho model Claude.
prompt_caching(boolean): Thiết lậptrueđể lưu vào bộ nhớ đệm phần đầu của prompt. TokenLab đánh dấu phần cuối của system prompt và tin nhắn người dùng mới nhất làm các điểm lưu bộ nhớ đệm. Một yêu cầu sau đó bắt đầu bằng cùng nội dung sẽ đọc từ bộ nhớ đệm. Nếu bất kỳ tin nhắn nào đã cócache_control, TokenLab sẽ không thêm các điểm lưu bộ nhớ đệm.prompt_caching_ttl(string):5m(mặc định) hoặc1h. Nếu tuyến đường phục vụ không hỗ trợ một giờ, TokenLab sẽ sử dụng năm phút và không từ chối yêu cầu.
extra.prompt_caching và extra.prompt_caching_ttl được chấp nhận như các tùy chọn tương đương. Xem Prompt caching để biết giá cả và cách kiểm tra các token đã lưu trong bộ nhớ đệm.
Seed lấy mẫu cho các model hỗ trợ. Không đảm bảo kết quả đầu ra giống hệt nhau.
Số lượng kết quả hoàn thiện cần tạo (1-128).
Liệu có trả về xác suất log hay không.
Số lượng xác suất log cao nhất cần trả về (0-20). Yêu cầu logprobs: true.
Lấy mẫu Top-K cho các model hỗ trợ.
Định dạng phản hồi. Sử dụng {"type": "json_object"} cho chế độ JSON hoặc {"type": "json_schema", "json_schema": {...}} cho một JSON schema. Khả năng hỗ trợ phụ thuộc vào model đã chọn.
Thay đổi khả năng xuất hiện của các token được chỉ định. Ánh xạ ID token (dưới dạng chuỗi) tới các giá trị bias từ -100 đến 100.
Một định danh duy nhất đại diện cho người dùng cuối của bạn để giám sát hành vi lạm dụng.
Phản hồi
Định danh duy nhất cho kết quả hoàn thiện.
Luôn là chat.completion.
Dấu thời gian Unix khi kết quả hoàn thiện được tạo.
Model được sử dụng để hoàn thiện.
Danh sách các lựa chọn hoàn thiện.
Mỗi lựa chọn bao gồm:
index(integer): Chỉ số của lựa chọnmessage(object): Tin nhắn được tạofinish_reason(string): Lý do model dừng lại, ví dụ:stop,length, hoặctool_calls
Khi model đang suy luận, message cũng có thể chứa:
reasoning_content(string): Văn bản tư duy. Một số model chỉ trả về tóm tắt hoặc không trả về văn bản nào.reasoning_details(array): Các khối tư duy cùng với chữ ký của chúng. Để tiếp tục cuộc hội thoại với tư duy, ví dụ sau khi gọi công cụ, hãy gửi chúng lại nguyên trạng trong tin nhắn assistant.
Trong một stream, các trường tương tự sẽ đến dưới dạng delta.reasoning_content và delta.reasoning_details.
Thống kê sử dụng token.
prompt_tokens(integer): Số token trong promptcompletion_tokens(integer): Số token trong phần hoàn thiện, bao gồm cả các token tư duytotal_tokens(integer): Tổng số token đã sử dụngcompletion_tokens_details.reasoning_tokens(integer): Các token tư duy, khi model báo cáo chúng
Yêu cầu
curl -X POST "https://api.tokenlab.sh/v1/chat/completions" \
-H "Authorization: Bearer sk-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.6-terra",
"messages": [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": "Hello!"}
],
"max_tokens": 1000
}'Ví dụ đa phương thức (Multimodal)
{
"model": "gemini-2.5-pro",
"messages": [
{
"role": "user",
"content": [
{ "type": "text", "text": "Describe this video briefly." },
{ "type": "video_url", "video_url": { "url": "https://example.com/demo.mp4" } }
]
}
],
"max_tokens": 64
}Phản hồi
{
"id": "chatcmpl-abc123",
"object": "chat.completion",
"created": 1706000000,
"model": "gpt-5.6-terra",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "Hello! How can I help you today?"
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 20,
"completion_tokens": 9,
"total_tokens": 29
}
}Xác thực
BearerAuth Xác thực bằng Khóa API. Tạo hoặc quản lý khóa API trong Dashboard > API > API Keys.
Vị trí: header
Header
Chính sách phân phối theo yêu cầu. Ghi đè các mặc định của API key và Workspace. Tự động thử TokenLab Verified trước và có thể chuyển đổi một lần sang Official chỉ trước khi xuất, chấp nhận yêu cầu hoặc tạo tài nguyên cố định.
Giá trị hợp lệ
- "auto"
- "verified"
- "official"
Nội dung yêu cầu
application/json
Phản hồi
application/json
application/json
application/json
application/json
application/json
application/json
application/json