TL;DR / Tóm tắt nhanh
Claude Sonnet 4.6 là mẫu mô hình tầm trung mới nhất của Anthropic, kết hợp hiệu suất mã hóa hàng đầu với cửa sổ ngữ cảnh 1M token (beta) chỉ với $3/$15 cho mỗi triệu token đầu vào/đầu ra. Để bắt đầu sử dụng API: 1) Lấy khóa API từ console.anthropic.com, 2) Cài đặt SDK (pip install anthropic), 3) Sử dụng ID mô hình claude-sonnet-4-6, và 4) Chuyển sang tư duy thích ứng (thinking: {type: "adaptive"}) để có kết quả tốt nhất. Những người thử nghiệm ban đầu đã ưa chuộng nó hơn Sonnet 4.5 đến 70% và thậm chí hơn Opus 4.5 đến 59%.
Giới thiệu
Anthropic đã phát hành Claude Sonnet 4.6, và nó ngay lập tức định hình lại danh mục mô hình AI tầm trung. Đây không phải là một bản cập nhật tăng cường — đây là một mô hình đánh bại Opus 4.5 cấp cao cấp trước đó trong các thử nghiệm đối đầu với tỷ lệ 59% theo những người dùng sớm, tất cả trong khi vẫn giữ nguyên mức giá của Sonnet.

Các thay đổi đáng chú ý: cửa sổ ngữ cảnh 1M token đang trong giai đoạn thử nghiệm (beta), chế độ tư duy thích ứng mới thay thế phương pháp tư duy mở rộng nhị phân cũ, và một bộ công cụ — tìm kiếm web, thực thi mã, bộ nhớ và tìm kiếm công cụ — đã sẵn sàng để sử dụng rộng rãi. Đối với các nhà phát triển xây dựng ứng dụng dựa trên tác nhân, Sonnet 4.6 mang đến các khả năng trước đây chỉ dành cho các mô hình tiên tiến đắt tiền với chi phí chỉ bằng khoảng một phần ba.
Các cải tiến về mã hóa là rõ rệt. Người dùng báo cáo khả năng tuân thủ hướng dẫn tốt hơn trong việc tạo mã, hiểu ngữ cảnh thông minh hơn trước khi thực hiện sửa đổi và giảm trùng lặp mã thông qua hợp nhất logic tự động. Sử dụng máy tính đạt độ chính xác 94% trên các quy trình làm việc bảo hiểm phức tạp. Điểm SWE-bench Verified đạt 79,6%.
Hướng dẫn này bao gồm mọi thứ bạn cần để bắt đầu xây dựng với API Claude Sonnet 4.6 ngay hôm nay: xác thực, ví dụ mã thực tế bằng Python và JavaScript, tham số tư duy thích ứng mới, cách mở khóa cửa sổ ngữ cảnh 1M và cách kiểm tra tích hợp của bạn với ứng dụng khách API trực quan của Apidog.
nút
Có gì mới trong Claude Sonnet 4.6
Chế độ tư duy thích ứng
Mẫu cũ thinking: {type: "enabled", budget_tokens: N} đã bị loại bỏ trên Sonnet 4.6. Thay thế là tư duy thích ứng: thinking: {type: "adaptive"}. Claude giờ đây tự động quyết định mức độ suy luận mà một nhiệm vụ cần.
Kết hợp tư duy thích ứng với tham số effort (hiện có sẵn trong GA) để điều chỉnh chi phí so với hiệu suất:
effort: "high"(mặc định) — Claude gần như luôn suy nghĩ, tốt nhất cho các vấn đề phức tạpeffort: "medium"— khuyến nghị cho hầu hết các trường hợp sử dụng Sonnet 4.6, cân bằng tốc độ và chất lượngeffort: "low"— suy nghĩ tối thiểu, phản hồi nhanh nhất cho các tác vụ đơn giản
Hiệu suất mã hóa được cải thiện
Sonnet 4.6 mang đến ba cải tiến cụ thể cho việc tạo mã:
- Tuân thủ hướng dẫn tốt hơn — tạo mã khớp chính xác hơn với thông số kỹ thuật
- Hiểu ngữ cảnh — đọc và hiểu mã hiện có trước khi sửa đổi, giảm thiểu lỗi hồi quy
- Hợp nhất logic — xác định các mẫu trùng lặp và đề xuất các trừu tượng hóa chung
Những người thử nghiệm ban đầu chạy điểm chuẩn mã hóa đã báo cáo thích đầu ra của Sonnet 4.6 hơn Sonnet 4.5 trong 70% trường hợp và hơn Opus 4.5 trong 59% trường hợp.
Cải tiến về sử dụng máy tính
Độ chính xác khi sử dụng máy tính đạt 72,5% trên OSWorld-Verified (trong phạm vi 0,2% của Opus 4.6), tăng đáng kể so với Sonnet 4.5. Mô hình cho thấy độ chính xác 94% trên các quy trình làm việc bảo hiểm yêu cầu điều hướng UI, thao tác bảng tính và hoàn thành biểu mẫu nhiều bước. Nó cũng chống lại các cuộc tấn công chèn prompt tốt hơn trong các tác vụ tự động.

Đột phá ARC-AGI-2
Con số điểm chuẩn ấn tượng nhất: hiệu suất ARC-AGI-2 tăng từ 13,6% lên 58,3% — cải thiện 4,3 lần. Điều này đo lường khả năng giải quyết vấn đề mới lạ trên các tác vụ mà mô hình chưa từng thấy các mẫu, cho thấy những cải thiện thực sự trong suy luận hơn là ghi nhớ.
Thông số kỹ thuật và giá API
| Tính năng | Giá trị |
|---|---|
| ID mô hình API | claude-sonnet-4-6 |
| ID AWS Bedrock | anthropic.claude-sonnet-4-6 |
| ID GCP Vertex AI | claude-sonnet-4-6 |
| Cửa sổ ngữ cảnh | 200K token (1M beta với tiêu đề) |
| Số token đầu ra tối đa | 64K |
| Giá đầu vào | $3 / triệu token |
| Giá đầu ra | $15 / triệu token |
| Tiết kiệm nhờ bộ nhớ đệm prompt | Lên đến 90% |
| Tiết kiệm API hàng loạt | Lên đến 50% |
| Giới hạn kiến thức (đáng tin cậy) | Tháng 8 năm 2025 |
| Giới hạn dữ liệu huấn luyện | Tháng 1 năm 2026 |
| Tư duy mở rộng | Có |
| Tư duy thích ứng | Có |
| Cấp độ ưu tiên | Có |
Các lựa chọn giảm chi phí:
- Bộ nhớ đệm prompt: Lưu trữ các phần tĩnh của prompt hệ thống và tiết kiệm tới 90%
- API hàng loạt: Xử lý yêu cầu không đồng bộ để giảm 50% chi phí
- Giá ngữ cảnh dài: Các yêu cầu vượt quá 200K token sử dụng mức giá ngữ cảnh dài riêng
Đối với ngân sách sản xuất: một cuộc trò chuyện triệu token ở chế độ tư duy thích ứng với effort: "medium" có giá khoảng $3 cho các token đầu vào. Hầu hết các lệnh gọi API đơn lẻ đều có giá dưới một xu.
Bắt đầu với API Claude Sonnet 4.6
Bước 1: Lấy khóa API của bạn
- Đăng nhập vào platform.anthropic.com
- Điều hướng đến API Keys trong cài đặt
- Nhấp vào Create Key và sao chép giá trị ngay lập tức (nó chỉ hiển thị một lần)

Lưu khóa của bạn dưới dạng biến môi trường — đừng bao giờ mã hóa cứng nó:
export ANTHROPIC_API_KEY="sk-ant-..."
Bước 2: Cài đặt SDK
Python:
pip install anthropic
JavaScript/Node.js:
npm install @anthropic-ai/sdk
Bước 3: Thực hiện yêu cầu đầu tiên của bạn
import anthropic
client = anthropic.Anthropic() # đọc ANTHROPIC_API_KEY từ môi trường
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[
{"role": "user", "content": "Giải thích sự khác biệt giữa async/await và promises trong JavaScript."}
]
)
print(response.content[0].text)
Đó là lệnh gọi tối thiểu khả thi. Đối tượng phản hồi bao gồm số liệu thống kê sử dụng (token đầu vào, token đầu ra), lý do dừng và phiên bản mô hình.
Ví dụ mã Python
Tạo văn bản cơ bản
import anthropic
client = anthropic.Anthropic()
def ask_claude(question: str, system: str = None) -> str:
"""Wrapper đơn giản để tạo văn bản bằng Claude Sonnet 4.6."""
messages = [{"role": "user", "content": question}]
kwargs = {
"model": "claude-sonnet-4-6",
"max_tokens": 2048,
"messages": messages,
}
if system:
kwargs["system"] = system
response = client.messages.create(**kwargs)
return response.content[0].text
# Ví dụ sử dụng
answer = ask_claude(
"Xem xét chức năng Python này để tìm các vấn đề về hiệu suất:\n\ndef find_duplicates(lst):\n return [x for x in lst if lst.count(x) > 1]",
system="Bạn là một kỹ sư Python cấp cao. Hãy cụ thể và cung cấp mã đã sửa."
)
print(answer)
Phản hồi luồng
Đối với đầu ra dài hoặc trải nghiệm người dùng thời gian thực, hãy sử dụng luồng:
import anthropic
client = anthropic.Anthropic()
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=4096,
messages=[{
"role": "user",
"content": "Viết một trình xử lý REST API hoàn chỉnh trong FastAPI để xác thực người dùng bằng JWT."
}]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
# Lấy tin nhắn cuối cùng với số liệu thống kê sử dụng sau khi luồng hoàn tất
message = stream.get_final_message()
print(f"\n\nSố token đã sử dụng: {message.usage.input_tokens} vào, {message.usage.output_tokens} ra")
Gọi công cụ / Sử dụng hàm
import anthropic
import json
client = anthropic.Anthropic()
# Định nghĩa công cụ
tools = [
{
"name": "get_repository_info",
"description": "Lấy thông tin về một kho lưu trữ GitHub bao gồm sao, fork và các commit gần đây.",
"input_schema": {
"type": "object",
"properties": {
"owner": {
"type": "string",
"description": "Tên chủ sở hữu kho lưu trữ hoặc tổ chức"
},
"repo": {
"type": "string",
"description": "Tên kho lưu trữ"
}
},
"required": ["owner", "repo"]
}
}
]
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
tools=tools,
messages=[{
"role": "user",
"content": "Bạn có thể cho tôi biết gì về kho lưu trữ anthropics/anthropic-sdk-python?"
}]
)
# Xử lý phản hồi sử dụng công cụ
for block in response.content:
if block.type == "tool_use":
print(f"Công cụ được gọi: {block.name}")
print(f"Đối số: {json.dumps(block.input, indent=2)}")
# Trong sản xuất, hãy gọi triển khai thực tế của bạn tại đây
# result = get_repository_info(block.input["owner"], block.input["repo"])
Phân tích hình ảnh và thị giác máy tính
import anthropic
import base64
from pathlib import Path
client = anthropic.Anthropic()
def analyze_image(image_path: str, question: str) -> str:
"""Phân tích hình ảnh với Claude Sonnet 4.6."""
image_data = base64.standard_b64encode(Path(image_path).read_bytes()).decode("utf-8")
# Phát hiện loại phương tiện từ phần mở rộng
ext = Path(image_path).suffix.lower()
media_type_map = {
".jpg": "image/jpeg",
".jpeg": "image/jpeg",
".png": "image/png",
".gif": "image/gif",
".webp": "image/webp"
}
media_type = media_type_map.get(ext, "image/jpeg")
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
messages=[{
"role": "user",
"content": [
{
"type": "image",
"source": {
"type": "base64",
"media_type": media_type,
"data": image_data,
},
},
{
"type": "text",
"text": question
}
],
}]
)
return response.content[0].text
# Ví dụ: phân tích ảnh chụp màn hình UI để tìm các vấn đề về khả năng tiếp cận
result = analyze_image(
"screenshot.png",
"Xác định mọi vấn đề về khả năng tiếp cận trong thiết kế UI này. Kiểm tra tỷ lệ tương phản, thiếu chỉ báo văn bản thay thế và các vấn đề điều hướng bằng bàn phím."
)
print(result)
Ví dụ JavaScript/Node.js
Thiết lập và yêu cầu cơ bản
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic({
apiKey: process.env.ANTHROPIC_API_KEY, // mặc định, hiển thị rõ ràng để dễ hiểu
});
async function askClaude(userMessage, systemPrompt = null) {
const params = {
model: "claude-sonnet-4-6",
max_tokens: 2048,
messages: [{ role: "user", content: userMessage }],
};
if (systemPrompt) {
params.system = systemPrompt;
}
const response = await client.messages.create(params);
return response.content[0].text;
}
// Cách sử dụng
const answer = await askClaude(
"Tái cấu trúc tuyến Express này để sử dụng async/await:\n\napp.get('/users', (req, res) => {\n User.find({}, (err, users) => {\n if (err) return res.status(500).send(err);\n res.json(users);\n });\n});",
"Bạn là một nhà phát triển Node.js cấp cao. Chỉ trả về mã đã được tái cấu trúc kèm theo giải thích ngắn gọn."
);
console.log(answer);
Truyền trực tuyến với TypeScript
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
async function streamCodeReview(codeSnippet: string): Promise<void> {
const stream = await client.messages.stream({
model: "claude-sonnet-4-6",
max_tokens: 4096,
messages: [
{
role: "user",
content: `Thực hiện đánh giá mã kỹ lưỡng cho chức năng TypeScript này:\n\n\`\`\`typescript\n${codeSnippet}\n\`\`\`\n\nTập trung vào: an toàn kiểu, trường hợp ngoại lệ, hiệu suất và bảo mật.`,
},
],
});
// Truyền văn bản khi nó đến
stream.on("text", (text) => {
process.stdout.write(text);
});
// Lấy số liệu thống kê cuối cùng
const finalMessage = await stream.finalMessage();
console.log(
`\n\n---\nTổng số token: ${finalMessage.usage.input_tokens + finalMessage.usage.output_tokens}`
);
}
Hội thoại đa lượt
import Anthropic from "@anthropic-ai/sdk";
const client = new Anthropic();
class ConversationManager {
constructor(systemPrompt = null) {
this.messages = [];
this.systemPrompt = systemPrompt;
}
async chat(userMessage) {
this.messages.push({ role: "user", content: userMessage });
const params = {
model: "claude-sonnet-4-6",
max_tokens: 2048,
messages: this.messages,
};
if (this.systemPrompt) {
params.system = this.systemPrompt;
}
const response = await client.messages.create(params);
const assistantMessage = response.content[0].text;
// Duy trì lịch sử cuộc trò chuyện
this.messages.push({ role: "assistant", content: assistantMessage });
return assistantMessage;
}
}
// Ví dụ: phiên gỡ lỗi đa lượt
const debugSession = new ConversationManager(
"Bạn là một chuyên gia gỡ lỗi. Hãy đặt câu hỏi làm rõ và hướng dẫn giải quyết vấn đề từng bước."
);
console.log(await debugSession.chat("API của tôi liên tục trả về lỗi 401."));
console.log(await debugSession.chat("Tôi đang bao gồm tiêu đề Authorization."));
console.log(
await debugSession.chat("Token đến từ localStorage sau khi đăng nhập.")
);
Tư duy thích ứng: Tư duy mở rộng mới
Tư duy thích ứng thay thế mô hình tư duy mở rộng cũ trên Sonnet 4.6. Sự khác biệt chính: thay vì đặt một ngân sách token cố định cho việc suy nghĩ, bạn đặt một mức effort và Claude sẽ quyết định mức độ suy luận mà vấn đề thực sự cần.
Cách sử dụng tư duy thích ứng
import anthropic
client = anthropic.Anthropic()
# Khuyến nghị: tư duy thích ứng với mức độ nỗ lực trung bình cho hầu hết các trường hợp sử dụng
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=16000,
thinking={"type": "adaptive"},
effort="medium", # các tùy chọn: "low", "medium", "high" (mặc định: high)
messages=[{
"role": "user",
"content": """
Thiết kế một lược đồ cơ sở dữ liệu cho nền tảng phân tích SaaS cần:
- Theo dõi sự kiện từ hàng triệu người dùng
- Hỗ trợ truy vấn thời gian thực trong 24 giờ qua
- Lưu trữ dữ liệu lịch sử một cách hiệu quả về chi phí
- Xử lý cô lập khách thuê cho khách hàng doanh nghiệp
"""
}]
)
# Các khối suy nghĩ xuất hiện trước phản hồi văn bản
for block in response.content:
if block.type == "thinking":
print(f"[Suy luận của Claude - {len(block.thinking)} ký tự]")
elif block.type == "text":
print(block.text)
Các mức độ nỗ lực trong thực tế
| Nỗ lực | Tốt nhất cho | Chi phí tương đối | Tốc độ tương đối |
|---|---|---|---|
thấp |
Phân loại, hỏi đáp đơn giản, định dạng | 1x | Nhanh nhất |
trung bình |
Tạo mã, phân tích, hầu hết các tác vụ | 1.5-2x | Nhanh |
cao |
Quyết định kiến trúc, gỡ lỗi phức tạp, toán học | 3-5x | Vừa phải |
Lưu ý di chuyển:thinking: {type: "enabled", budget_tokens: N}thinking: {type: "adaptive"}effortCửa sổ ngữ cảnh 1M Token
Cửa sổ ngữ cảnh 1M token cho phép bạn cung cấp cho Claude toàn bộ cơ sở mã, các bộ tài liệu mở rộng hoặc lịch sử cuộc trò chuyện kéo dài hàng tháng. Điều đó tương đương với khoảng 750.000 từ hoặc tương đương 5–10 cơ sở mã hoàn chỉnh trong một yêu cầu duy nhất.
Cách bật ngữ cảnh 1M
Truyền tiêu đề beta context-1m-2025-08-07 trong yêu cầu của bạn:
import anthropic
client = anthropic.Anthropic()
# Đọc toàn bộ một cơ sở mã lớn
with open("large_codebase.txt", "r") as f:
codebase_content = f.read()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["context-1m-2025-08-07"],
messages=[{
"role": "user",
"content": f"""
Đây là toàn bộ cơ sở mã backend của chúng tôi:\n\n{codebase_content}\n\n
Tìm tất cả các truy vấn cơ sở dữ liệu có thể gây ra vấn đề N+1 và đề xuất cách khắc phục.
"""
}]
)
print(response.content[0].text)
// Tương đương JavaScript
const response = await client.beta.messages.create({
model: "claude-sonnet-4-6",
max_tokens: 4096,
betas: ["context-1m-2025-08-07"],
messages: [
{
role: "user",
content: `Xem xét toàn bộ cơ sở mã này để tìm lỗ hổng bảo mật:\n\n${codebaseContent}`,
},
],
});
1M Token mang lại điều gì
- Phân tích toàn bộ cơ sở mã: Gửi toàn bộ kho lưu trữ của bạn và yêu cầu Claude tìm lỗi, đề xuất tái cấu trúc hoặc tạo thử nghiệm
- Xử lý tài liệu dài: Phân tích hợp đồng pháp lý hoàn chỉnh, báo cáo tài chính hoặc các bài nghiên cứu
- Các phiên tác nhân mở rộng: Giữ toàn bộ lịch sử các tác vụ nhiều bước dài mà không mất ngữ cảnh
- Theo dõi phụ thuộc đa tệp: Tìm tất cả các trường hợp sử dụng của một hàm hoặc lớp trong một dự án lớn
Lưu ý về giá: Các yêu cầu vượt quá 200K token sử dụng giá ngữ cảnh dài. Lập kế hoạch phù hợp cho việc sử dụng với khối lượng lớn.
Tìm kiếm web và lọc động
Các công cụ tìm kiếm web và lấy dữ liệu web hiện hỗ trợ **lọc động** trong bản beta công khai trên Sonnet 4.6. Claude viết và thực thi mã để lọc kết quả tìm kiếm trước khi chúng vào cửa sổ ngữ cảnh — chỉ giữ lại thông tin liên quan và cắt giảm đáng kể việc sử dụng token.
Thực thi mã là **miễn phí** khi được sử dụng cùng với các công cụ tìm kiếm web hoặc lấy dữ liệu web (không tính phí riêng).
Thiết lập tìm kiếm web động
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["code-execution-web-tools-2026-02-09"],
tools=[
{
"type": "web_search_20260209", # Sử dụng phiên bản này để lọc động
"name": "web_search",
}
],
messages=[{
"role": "user",
"content": "Tìm các CVE mới nhất cho Apache Log4j được công bố trong 30 ngày qua và tóm tắt mức độ nghiêm trọng."
}]
)
for block in response.content:
if hasattr(block, "text"):
print(block.text)
Lấy dữ liệu web với lọc động
import anthropic
client = anthropic.Anthropic()
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
betas=["code-execution-web-tools-2026-02-09"],
tools=[
{
"type": "web_fetch_20260209", # Phiên bản mới với lọc động
"name": "web_fetch",
}
],
messages=[{
"role": "user",
"content": "Lấy trang giá của Anthropic và chỉ trích xuất các hàng giá của Claude Sonnet."
}]
)
print(response.content[-1].text)
Tại sao lọc động lại quan trọng: Nếu không lọc, việc lấy một trang web đầy đủ có thể tiêu tốn 100K token cho một trang mà bạn chỉ cần 2K token nội dung liên quan. Lọc động cho phép Claude phân tích trang bằng mã và chỉ trả về những gì cần thiết, giảm chi phí hơn 90% trên các trang có nội dung nặng.
API nén ngữ cảnh
Nén ngữ cảnh xử lý các phiên tác nhân chạy dài, nơi ngữ cảnh tích lũy vượt quá giới hạn cửa sổ. API tự động tóm tắt các phần cũ hơn của cuộc trò chuyện phía máy chủ khi đạt gần giới hạn, cho phép độ dài cuộc trò chuyện gần như không giới hạn.
import anthropic
client = anthropic.Anthropic()
# Bật nén ngữ cảnh thông qua tiêu đề beta
response = client.beta.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
betas=["interleaved-thinking-2025-05-14"], # Bật nén trong bản beta
system="Bạn là một tác nhân phát triển phần mềm chạy dài. Duy trì ngữ cảnh về các thay đổi cơ sở mã được thực hiện trong phiên này.",
messages=[
{"role": "user", "content": "Bắt đầu một phiên tái cấu trúc cho mô-đun xác thực của chúng tôi."},
# ... nhiều lượt khác sẽ xuất hiện ở đây trong một phiên thực tế
]
)
# Trường compaction_details cho biết khi nào việc tóm tắt xảy ra
if hasattr(response, "usage") and hasattr(response.usage, "cache_read_input_tokens"):
print(f"Token ngữ cảnh đã lưu thông qua bộ nhớ đệm: {response.usage.cache_read_input_tokens}")
Khi nào nên sử dụng nén: Bất kỳ quy trình làm việc dựa trên tác nhân nào chạy trong hơn vài phút và tích lũy lịch sử — tác nhân CI/CD, các phiên mã hóa dài, các chuỗi hỗ trợ khách hàng hoặc các tác vụ nghiên cứu nhiều bước.
Kiểm tra Claude Sonnet 4.6 với Apidog
Trước khi viết mã SDK, hãy sử dụng Apidog để khám phá API Claude Sonnet 4.6 một cách trực quan. Apidog tăng tốc phát triển bằng cách cho phép bạn cấu hình tiêu đề, xây dựng phần thân yêu cầu và kiểm tra phản hồi luồng mà không cần mã mẫu.

Thiết lập API Anthropic trong Apidog
- Mở Apidog và tạo yêu cầu HTTP mới
- Đặt phương thức là
POSTvà URL làhttps://api.anthropic.com/v1/messages - Thêm các tiêu đề sau:
| Tiêu đề | Giá trị |
|---|---|
x-api-key |
{{ANTHROPIC_API_KEY}} |
anthropic-version |
2023-06-01 |
Content-Type |
application/json |
- Đặt phần thân yêu cầu thành JSON:
{
"model": "claude-sonnet-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": "Những cải tiến chính trong Claude Sonnet 4.6 là gì?"
}
]
}
Kiểm tra tư duy thích ứng
Để kiểm tra chế độ tư duy thích ứng trong Apidog, hãy thêm các trường thinking và effort vào phần thân yêu cầu của bạn:
{
"model": "claude-sonnet-4-6",
"max_tokens": 8192,
"thinking": {
"type": "adaptive"
},
"effort": "medium",
"messages": [
{
"role": "user",
"content": "Thiết kế một chiến lược giới hạn tốc độ cho một API công cộng phục vụ 10 triệu yêu cầu mỗi ngày."
}
]
}
Kiểm tra các tính năng Beta trong Apidog
Đối với các tính năng beta (ngữ cảnh 1M, tìm kiếm web động, nén ngữ cảnh), hãy thêm tiêu đề beta:
| Tiêu đề | Giá trị |
|---|---|
anthropic-beta |
context-1m-2025-08-07 |
Hoặc để lọc động tìm kiếm web:
| Tiêu đề | Giá trị |
|---|---|
anthropic-beta |
code-execution-web-tools-2026-02-09 |
Apidog cho phép bạn lưu các cấu hình này dưới dạng cài đặt trước và chia sẻ chúng với nhóm của bạn, để mọi người có môi trường kiểm tra API nhất quán.
nút
Các công cụ mới hiện đã có sẵn (GA)
Một số công cụ trước đây đang trong giai đoạn thử nghiệm (beta) nay đã có sẵn (GA) trên Sonnet 4.6, nghĩa là không cần tiêu đề beta đặc biệt:
Công cụ thực thi mã
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
tools=[{"type": "code_execution_20250522", "name": "code_execution"}],
messages=[{
"role": "user",
"content": "Tính lãi kép trên $10.000 với lãi suất hàng năm 5% trong 10 năm, gộp hàng tháng. Hiển thị bảng phân tích từng năm."
}]
)
for block in response.content:
if block.type == "tool_result":
print("Đầu ra thực thi:", block.content)
elif hasattr(block, "text"):
print(block.text)
Công cụ bộ nhớ
Công cụ bộ nhớ cho phép Claude duy trì thông tin qua các phiên hội thoại, hữu ích để xây dựng các trợ lý có trạng thái:
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
tools=[{"type": "memory_20250416", "name": "memory"}],
messages=[{
"role": "user",
"content": "Hãy nhớ rằng URL cơ sở API của chúng tôi là https://api.company.com/v2 và chúng tôi yêu cầu xác thực token Bearer trên tất cả các điểm cuối."
}]
)
Gọi công cụ theo chương trình
Gọi công cụ theo chương trình cho phép Claude tạo các lệnh gọi API có cấu trúc trực tiếp:
import anthropic
client = anthropic.Anthropic()
# Claude giờ đây có thể gọi các công cụ theo chương trình mà không cần sự can thiệp của con người
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=2048,
tools=[
{
"name": "execute_sql",
"description": "Thực thi truy vấn SQL và trả về kết quả",
"input_schema": {
"type": "object",
"properties": {
"query": {"type": "string", "description": "Truy vấn SQL cần thực thi"},
"database": {"type": "string", "description": "Tên cơ sở dữ liệu"}
},
"required": ["query", "database"]
}
}
],
messages=[{
"role": "user",
"content": "Tìm tất cả người dùng đã đăng ký vào tháng 1 năm 2026 và chưa thực hiện giao dịch mua nào."
}]
)
Sonnet 4.6 so với các mô hình trước
| Claude Sonnet 4.6 | Claude Sonnet 4.5 | Claude Opus 4.5 | |
|---|---|---|---|
| ID API | claude-sonnet-4-6 |
claude-sonnet-4-5-20250929 |
claude-opus-4-5-20251101 |
| Giá đầu vào | $3/MTok | $3/MTok | $5/MTok |
| Giá đầu ra | $15/MTok | $15/MTok | $25/MTok |
| Cửa sổ ngữ cảnh | 200K / 1M (beta) | 200K / 1M (beta) | 200K |
| Đầu ra tối đa | 64K | 64K | 64K |
| Tư duy thích ứng | Có | Không | Không |
| Tư duy mở rộng | Có (đã loại bỏ) | Có | Có |
| Điểm SWE-bench | 79.6% | ~72% | ~76% |
| OSWorld (sử dụng máy tính) | 72.5% | ~65% | ~72.7% |
| Lọc tìm kiếm web | Có (beta) | Không | Không |
| Công cụ GA | Thực thi mã, lấy dữ liệu web, bộ nhớ, tìm kiếm công cụ | Ít GA hơn | Bộ đầy đủ |
| Được người dùng ưa thích hơn so với Sonnet 4.5 | 70% | — | — |
| Được người dùng ưa thích hơn so với Opus 4.5 | 59% | — | — |
Điểm mấu chốt: Nếu bạn đang sử dụng Sonnet 4.5, việc nâng cấp lên Sonnet 4.6 là điều không cần suy nghĩ — cùng mức giá, hiệu suất mã hóa tốt hơn đáng kể và tư duy thích ứng. Nếu bạn đang sử dụng Opus 4.5, Sonnet 4.6 hiện đã sánh ngang hoặc vượt trội trong hầu hết các trường hợp sử dụng với chi phí bằng 60%.
Các thực hành tốt nhất và Mẹo
1. Sử dụng Tư duy thích ứng với nỗ lực trung bình theo mặc định
Đối với hầu hết các trường hợp sử dụng Sonnet 4.6, effort: "medium" cung cấp sự cân bằng chi phí-hiệu suất tốt nhất. Giữ effort: "high" cho các tác vụ thực sự phức tạp như thiết kế kiến trúc, chuỗi suy luận nhiều bước hoặc chứng minh toán học.
# Mẫu mặc định tốt cho Sonnet 4.6
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=4096,
thinking={"type": "adaptive"},
effort="medium", # Điểm tối ưu cho hầu hết các tác vụ
messages=[...]
)
2. Sử dụng Luồng cho Đầu ra trên 1K Token
Các phản hồi lớn được hưởng lợi từ việc truyền trực tuyến để tránh hết thời gian chờ HTTP và mang lại cho người dùng thời gian phản hồi nhanh hơn.
# Đối với bất kỳ phản hồi nào được dự kiến là dài
with client.messages.stream(
model="claude-sonnet-4-6",
max_tokens=8192,
messages=[...]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
3. Bật Bộ nhớ đệm Prompt cho các Prompt hệ thống lặp lại
Nếu bạn sử dụng cùng một prompt hệ thống trong nhiều lệnh gọi, hãy lưu trữ nó vào bộ nhớ đệm để tiết kiệm tới 90%:
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
system=[
{
"type": "text",
"text": "Prompt hệ thống dài của bạn ở đây...",
"cache_control": {"type": "ephemeral"} # Lưu trữ khối này vào bộ nhớ đệm
}
],
messages=[{"role": "user", "content": user_input}]
)
4. Xử lý giới hạn tốc độ một cách linh hoạt
Sonnet 4.6 có giới hạn tốc độ hào phóng, nhưng các hệ thống sản xuất nên triển khai chiến lược lùi lũy thừa:
import anthropic
import time
def create_with_retry(client, max_retries=3, **kwargs):
for attempt in range(max_retries):
try:
return client.messages.create(**kwargs)
except anthropic.RateLimitError:
if attempt == max_retries - 1:
raise
wait_time = (2 ** attempt) + 1 # 2 giây, 3 giây, 5 giây
time.sleep(wait_time)
5. Chuyển đổi khỏi Prefill trên Sonnet 4.6
Tin nhắn trợ lý điền trước (prefills lượt cuối) không được hỗ trợ trên các mô hình Claude 4.6. Thay vào đó, hãy sử dụng đầu ra có cấu trúc:
# Cách tiếp cận cũ (sẽ lỗi trên Claude 4.6):
# messages = [
# {"role": "user", "content": "Give me JSON..."},
# {"role": "assistant", "content": "{"} # Điền trước
# ]
# Cách tiếp cận mới: sử dụng đầu ra có cấu trúc
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
output_config={
"format": {
"type": "json_schema",
"schema": {
"type": "object",
"properties": {
"name": {"type": "string"},
"score": {"type": "number"}
}
}
}
},
messages=[{"role": "user", "content": "Tạo một đối tượng người dùng mẫu."}]
)
6. Chỉ định AWS hoặc GCP cho việc lưu trú dữ liệu
Nếu các yêu cầu tuân thủ của bạn cần suy luận chỉ ở Hoa Kỳ, hãy sử dụng tham số inference_geo:
response = client.messages.create(
model="claude-sonnet-4-6",
max_tokens=1024,
inference_geo="us", # Đảm bảo suy luận chạy trong các trung tâm dữ liệu Hoa Kỳ
messages=[...]
)
Suy luận chỉ ở Hoa Kỳ có giá cao gấp 1.1 lần so với mức tiêu chuẩn trên Sonnet 4.6.
Sẵn sàng xây dựng với Claude Sonnet 4.6? Tải xuống Apidog miễn phí để kiểm tra các lệnh gọi API của bạn một cách trực quan, cộng tác với nhóm của bạn trên các cấu hình yêu cầu và tự động tạo mã SDK — không yêu cầu thẻ tín dụng.
nút
