Văn bản
Tạo Tin nhắn
Tạo một tin nhắn bằng định dạng Anthropic Messages API
Tổng quan
Endpoint này cung cấp khả năng tương thích gốc với Anthropic Messages API. Hãy sử dụng endpoint này cho các model Claude với các tính năng như extended thinking.
Endpoint này giữ nguyên hợp đồng native của Anthropic. messages phải là mảng tin nhắn user / assistant, system nằm ở field cấp cao nhất system, và max_tokens là bắt buộc. Nếu payload dùng role kiểu OpenAI như system, developer, hoặc tool bên trong messages, hãy gửi sang /v1/chat/completions.
Base URL cho Anthropic SDK: https://api.tokenlab.sh (không có hậu tố /v1)
Header của Request
API key TokenLab của bạn. Gửi qua x-api-key hoặc Authorization: Bearer <API_KEY>.
Phiên bản Anthropic API. Sử dụng 2023-06-01.
Body của Request
Các tham số tùy chọn được hỗ trợ, giá trị hợp lệ và giá trị mặc định phụ thuộc vào mô hình đã chọn. Xem chi tiết mô hình trước khi đặt tùy chọn lấy mẫu, suy luận hoặc công cụ.
ID của mô hình hỗ trợ định dạng anthropic_messages. Xem chi tiết mô hình để biết khả năng hiện tại.
Mảng các object tin nhắn với role và content.
Số lượng token tối đa để tạo.
Lời nhắc hệ thống dạng chuỗi hoặc mảng khối nội dung, tách biệt với mảng messages.
Nhiệt độ lấy mẫu. Khả năng hỗ trợ, giá trị hợp lệ và giá trị mặc định phụ thuộc vào mô hình đã chọn. Bỏ qua trường này để dùng mặc định của mô hình.
falseBật phản hồi dạng streaming.
Cấu hình thinking gốc. Các chế độ, ngân sách được hỗ trợ và cách kết hợp với tham số khác phụ thuộc vào mô hình đã chọn.
Các công cụ khả dụng cho model.
Đối tượng chọn công cụ gốc, chẳng hạn {"type":"auto"}. Các loại được hỗ trợ phụ thuộc vào mô hình đã chọn.
Tham số nucleus sampling. Chỉ dùng temperature hoặc top_p, không dùng cả hai.
Chỉ lấy mẫu từ K lựa chọn hàng đầu cho mỗi token.
Các chuỗi dừng tùy chỉnh sẽ khiến model ngừng tạo.
Metadata được đính kèm vào request nhằm mục đích theo dõi.
Phản hồi
Định danh duy nhất của tin nhắn.
Luôn là message.
Luôn là assistant.
Mảng khối nội dung, chẳng hạn text, thinking hoặc tool_use.
Model được sử dụng.
Lý do dừng tạo nội dung, chẳng hạn end_turn, max_tokens, stop_sequence hoặc tool_use.
Mức sử dụng token với input_tokens và output_tokens.
Yêu cầu
curl -X POST "https://api.tokenlab.sh/v1/messages" \
-H "x-api-key: sk-your-api-key" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-5",
"max_tokens": 1024,
"system": "You are a helpful assistant.",
"messages": [
{"role": "user", "content": "Hello, Claude!"}
]
}'Phản hồi
{
"id": "msg_abc123",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "Hello! How can I help you today?"
}
],
"model": "claude-sonnet-5",
"stop_reason": "end_turn",
"usage": {
"input_tokens": 15,
"output_tokens": 10
}
}Ví dụ đầu vào thị giác
Với các mô hình Claude có hỗ trợ thị giác, hãy đặt hình ảnh bên trong messages[].content dưới dạng các khối ảnh có cấu trúc.
{
"model": "claude-sonnet-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Please describe this image."
},
{
"type": "image",
"source": {
"type": "url",
"url": "https://example.com/demo.jpg"
}
}
]
}
]
}{
"model": "claude-sonnet-5",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "Please describe this image."
},
{
"type": "image",
"source": {
"type": "base64",
"media_type": "image/jpeg",
"data": "/9j/4AAQSkZJRgABAQ..."
}
}
]
}
]
}Ví dụ về Extended Thinking
Đặt TOKENLAB_THINKING_MODEL thành mô hình hỗ trợ thinking thủ công với type: "enabled" và budget_tokens. Điều chỉnh cả hai ngân sách token theo giới hạn của mô hình đó. Mô hình khác có thể cần cấu hình thinking khác.
import os
from anthropic import Anthropic
client = Anthropic(
api_key="sk-your-api-key",
base_url="https://api.tokenlab.sh"
)
message = client.messages.create(
model=os.environ["TOKENLAB_THINKING_MODEL"],
max_tokens=16000,
thinking={
"type": "enabled",
"budget_tokens": 10000
},
messages=[{"role": "user", "content": "Solve this math problem..."}]
)
for block in message.content:
if block.type == "thinking":
print(f"Thinking: {block.thinking}")
elif block.type == "text":
print(f"Response: {block.text}")Các lô tin nhắn Anthropic
TokenLab hiện cũng cung cấp luồng Anthropic Message Batches gốc bên cạnh /v1/messages.
Các route khả dụng:
POST /v1/messages/batchesGET /v1/messages/batchesGET /v1/messages/batches/:message_batch_idGET /v1/messages/batches/:message_batch_id/resultsPOST /v1/messages/batches/:message_batch_id/cancelDELETE /v1/messages/batches/:message_batch_id
Ghi chú vận hành:
- Sử dụng cùng một TokenLab API key với các header Anthropic gốc.
- Nếu batch item tham chiếu
file_id, hãy thêm cảanthropic-beta: files-api-2025-04-14. - Batch job vẫn giữ nguyên hình dạng request/response gốc của Anthropic, trong khi TokenLab theo dõi vòng đời quyết toán nội bộ của chúng.
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