“Thinking mode” (còn gọi là extended thinking, thinking hoặc thinking blocks) trong Claude 4.5 là một chế độ vận hành rõ ràng, có thể cấu hình, yêu cầu mô hình dành một lượng token riêng theo ngân sách để tạo lập suy luận nội bộ theo từng bước (một “chuỗi suy luận”) trước khi đưa ra câu trả lời cuối cùng. Nó được thiết kế để cải thiện hiệu năng trên các tác vụ suy luận nhiều bước, lập trình phức tạp và quy trình tác nhân, cũng như nhiệm vụ nghiên cứu, bằng cách đánh đổi độ trễ và chi phí token lấy sự cân nhắc nội bộ sâu hơn. Claude 4.5 cung cấp khả năng này ở cấp Messages API với các tham số rõ ràng (ví dụ, thinking / budget_tokens hoặc một header effort/“interleaved-thinking”), lưu giữ và tùy chọn mã hóa các khối suy nghĩ để xác minh sau hoặc dùng với công cụ, đồng thời giới thiệu các hành vi bộ nhớ đệm và hạch toán token mà bạn phải quản lý khi xây dựng khối lượng công việc sản xuất.
Claude 4.5 là gì? (Và tôi nên quan tâm đến những model nào?)
Claude 4.5 là tập hợp model Claude mới nhất của Anthropic phát hành dưới dạng bản cập nhật “4.5” gia tăng (ví dụ, Sonnet 4.5 và Opus 4.5). Sonnet 4.5 được định vị là lựa chọn cân bằng tốt nhất giữa trí tuệ, khả năng lập trình và hiệu năng tác nhân cho hầu hết nhà phát triển; Opus 4.5 tập trung vào suy luận nỗ lực rất cao và lưu giữ các khối suy nghĩ để cải thiện tính liên tục đa lượt. Cả hai model đều hỗ trợ khả năng suy nghĩ mở rộng của Claude, dù một số hành vi (ví dụ, suy nghĩ tóm tắt so với đầy đủ) khác nhau tùy model.
Các cải thiện hiệu năng trong Claude 4.5, đặc biệt ở Sonnet 4.5, thể hiện rõ nhất trong benchmark SWE-bench Verified, đo lường khả năng của AI trong việc giải quyết các issue GitHub thực tế.
| Model | SWE-bench Verified Score | OSWorld (Computer Use) |
|---|---|---|
| Claude 3.5 Sonnet | 49.0% | 42.2% |
| Claude 4.1 Opus | 67.6% | 55.0% |
| Claude 4.5 Sonnet (Thinking On) | 77.2% | 61.4% |
| GPT-5 (Medium Reasoning) | 65.0% | 52.0% |
Những con số này cho thấy Claude 4.5 không chỉ giỏi viết snippet; nó còn vượt trội trong khả năng điều hướng toàn bộ hệ thống tệp và thực thi tác vụ tự động mà không cần can thiệp của con người.
Tại sao điều này quan trọng
- Lập trình & tác nhân: Sonnet 4.5 cho thấy cải thiện mạnh trên các tác vụ phần mềm thực tế và công việc lập trình dài hạn—khiến nó trở thành lựa chọn tự nhiên cho sinh mã, chỉnh sửa mã và luồng tác nhân tự trị.
- Suy nghĩ mở rộng & ngữ cảnh: Họ model Claude 4.5 được xây dựng để suy luận với “bảng nháp” nội bộ rất lớn (hàng chục nghìn token hoặc hơn), cho phép suy luận đa bước sâu hơn. Điều này thay đổi cách bạn thiết kế prompt, ngân sách token và tương tác công cụ.
Thinking Mode trong Claude 4.5 là gì?
Thinking Mode (tên chính thức là "Extended Thinking") là khả năng cho phép mô hình “tự xem lại cách làm” trước khi đưa ra đầu ra cuối cùng. Khác với các model tiêu chuẩn đưa ra câu trả lời ngay lập tức, Claude 4.5 sử dụng một không gian suy luận chuyên biệt để khám phá nhiều giả thuyết, xác định lỗi tiềm tàng trong logic và tinh chỉnh chiến lược.
Cấu phần của một phản hồi
Trong tương tác tiêu chuẩn, mô hình nhận prompt và bắt đầu tạo câu trả lời. Trong Thinking Mode, phản hồi được chia thành hai khối riêng biệt:
| Loại khối | Mức hiển thị | Mục đích |
|---|---|---|
| Thinking Block | Ẩn (qua API) hoặc Thu gọn (UI) | Độc thoại nội bộ, lập kế hoạch và tự phê bình của mô hình. |
| Text Block | Hiển thị | Câu trả lời cuối, đã được trau chuốt cung cấp cho người dùng. |
Các thuộc tính chính của thinking mode
- Bật theo yêu cầu: Bạn truyền một đối tượng
thinkingtrong lời gọi API như{"type":"enabled","budget_tokens":10000}để bật và cấp cho mô hình một ngân sách token nội bộ cho suy luận. - Ngân sách:
budget_tokensgiới hạn số token suy luận nội bộ của mô hình. Ngân sách lớn hơn => tiềm năng suy nghĩ sâu hơn nhưng chi phí và độ trễ cao hơn. Trong các model Claude 4, token suy nghĩ vẫn bị tính phí ngay cả khi bạn chỉ nhận bản tóm tắt. - Tóm tắt & che lộ: Với nhiều model Claude 4, người dùng thấy phiên bản tóm tắt của nội dung suy nghĩ; một phần suy luận nội bộ có thể bị che lộ (mã hóa) bởi hệ thống an toàn và trả về dưới dạng
redacted_thinking. - Chữ ký & xác minh: Các khối suy nghĩ bao gồm một
signaturemờ để xác minh khi trả khối suy nghĩ về API (đặc biệt cần khi dùng công cụ). Bạn nên coi chữ ký là mờ—không cố gắng phân tích. - Suy nghĩ đan xen với công cụ: Claude 4 hỗ trợ đan xen các khối suy nghĩ với lần thực thi công cụ (beta và theo cờ trong một số trường hợp). Điều này mạnh mẽ cho công việc tác nhân (chạy công cụ, suy nghĩ, chạy công cụ khác, v.v.).
Để có ví dụ thực hành và tham số cập nhật nhất, tài liệu Messages/Extended Thinking của Anthropic là nguồn tham khảo chuẩn.
Messages API trả nội dung suy nghĩ như thế nào
Suy nghĩ tóm tắt vs đầy đủ; mã hóa & chữ ký
Các phiên bản model Claude khác nhau xử lý suy nghĩ khác nhau: các model Claude 4 mới hơn (như Sonnet/Opus 4.5) thường trả về một bản nhìn công khai đã được tóm tắt của suy luận nội bộ trong khi “bảng nháp” đầy đủ có thể được mã hóa và chỉ khả dụng qua trường signature (hoặc các khối bị che lộ). Khi dùng công cụ (hoặc bạn cần lưu trạng thái nội bộ qua các lần gọi công cụ), bạn phải chuyển lại các khối suy nghĩ cho API hoặc dùng cơ chế chữ ký như tài liệu mô tả. Cơ chế này giúp bảo vệ suy luận nội bộ nhạy cảm đồng thời cho phép tiếp tục an toàn chuỗi suy nghĩ khi cần.
Mẫu xử lý thực tiễn
-
Dùng công cụ / tiếp nối: nếu yêu cầu tiếp theo cần tiếp tục cùng trạng thái nội bộ (ví dụ, công cụ đã chạy dựa trên suy nghĩ), hãy đưa khối suy nghĩ trả về hoặc chữ ký khi bạn gọi API lần nữa để mô hình có thể giải mã và tiếp tục từ nơi dở dang.
-
Yêu cầu: gửi
thinking: {type: "enabled", budget_tokens: N}. -
Phản hồi: bạn có thể nhận (a) đầu ra công khai đã tóm tắt, (b) một
signatuređược mã hóa hoặc khốiredacted_thinking, hoặc (c) cả hai.
CometAPI cung cấp API Claude 4.5 với mức giá bằng 20% giá API chính thức, và cũng có thể được gọi bằng Anthropic Messages. Bạn sẽ cần lấy API key trước khi bắt đầu.
Ví dụ 1 — curl đơn giản (không streaming) bật thinking
curl https://api.cometapi.com/v1/messages \
-H "x-api-key: $CometAPI_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "Content-Type: application/json" \
-d '{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {
"type": "enabled",
"budget_tokens": 10000
},
"messages": [
{"role": "user", "content": "Design a robust data validation strategy for CSV imports, show tests + code."}
]
}'
Phản hồi sẽ chứa các khối content. Hãy kiểm tra từng khối và ưu tiên các khối text cho đầu ra cuối; các khối thinking chứa bản tóm tắt phân tích nội bộ của mô hình.
Ví dụ 2 — Python: gửi yêu cầu, phân tách khối thinking và text
import os, requests
API_KEY = os.environ["CometAPI_API_KEY"]
URL = "https://api.cometapi.com/v1/messages"
HEADERS = {
"x-api-key": API_KEY,
"anthropic-version": "2023-06-01",
"content-type": "application/json"
}
payload = {
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"thinking": {"type": "enabled", "budget_tokens": 8000},
"messages": [{"role": "user", "content": "Explain how to do property-based testing in Python; include example code."}]
}
r = requests.post(URL, headers=HEADERS, json=payload)
r.raise_for_status()
resp = r.json()
# Parse blocks
for block in resp.get("content", []):
if block.get("type") == "thinking":
thinking_summary = block.get("thinking")
print("=== THINKING (summary) ===")
print(thinking_summary[:1000]) # truncate for logs
print("signature:", block.get("signature")[:64], "...")
elif block.get("type") == "text":
print("=== FINAL TEXT ===")
print(block.get("text"))
Đoạn mã này trích xuất và in ra phần suy nghĩ đã tóm tắt và câu trả lời cuối. Nếu bạn cần giữ tính liên tục trong các luồng tác nhân đa lượt, hãy đưa các khối suy nghĩ chưa chỉnh sửa vào mảng messages của yêu cầu kế tiếp (xem ví dụ tiếp theo).
Ví dụ 3 — tái sử dụng khối suy nghĩ trong luồng đa lượt (Python pseudo)
# After initial response (resp above):
# Add the assistant message including the thinking block back into the conversation
assistant_message = {
"role": "assistant",
"content": resp["content"] # include raw content array (contains thinking + text blocks)
}
# Next user turn: ask follow-up and include previous assistant message
payload2 = {
"model": "claude-opus-4-5", # Opus preserves thinking blocks better across turns
"max_tokens": 20000,
"thinking": {"type": "enabled", "budget_tokens": 12000},
"messages": [
{"role": "user", "content": "Now adapt the validation logic for an avro pipeline."},
assistant_message
]
}
r2 = requests.post(URL, headers=HEADERS, json=payload2)
Việc giữ nguyên, không chỉnh sửa các khối suy nghĩ là rất quan trọng khi tích hợp công cụ hoặc trong các luồng tác nhân dài. Opus 4.5 có mặc định cải thiện để lưu giữ khối suy nghĩ và caching.
Tôi stream nội dung suy nghĩ và hiển thị tiến độ trong UI như thế nào?
Thực hành tốt cho streaming
- Sử dụng endpoint streaming của SDK (SDK Python/TypeScript có helper stream). Với tác vụ suy luận dài hoặc ngân sách lớn, streaming tránh timeout HTTP và cung cấp text từng phần khi mô hình đang tính toán. Mã điển hình dùng iterator trên
text_stream(Python) hoặc parse sự kiện (JS). - Thỉnh thoảng kỳ vọng luồng hai pha: mô hình có thể trước tiên tạo ra các mảnh suy luận hiển thị, sau đó chốt bằng câu trả lời. Xây dựng UI để xử lý nội dung chia nhỏ và hiển thị trạng thái “đang suy nghĩ…” so với câu trả lời cuối.
- Nếu API trả
signature_deltahoặccontent_block_deltakhi streaming, hãy thu nhận và đính kèm nó vào các lần gọi tiếp theo theo đúng đặc tả.
Nếu bạn cần hiển thị tiến độ suy luận trung gian trong UI, hãy stream phản hồi. Máy chủ sẽ phát các sự kiện thinking_delta rồi đến text_delta.
curl https://api.cometapi.com/v1/messages \
--header "x-api-key: $CometAPI_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data '{
"model": "claude-sonnet-4-5",
"max_tokens": 16000,
"stream": true,
"thinking": { "type": "enabled", "budget_tokens": 8000 },
"messages": [ { "role": "user", "content": "Walk me through debugging this failing unit test and propose fixes." } ]
}'
Khi streaming, xử lý theo thứ tự các sự kiện content_block_start, content_block_delta (bao gồm thinking_delta và text_delta), và content_block_stop. Đây là cách bạn có thể hiển thị quá trình suy luận từng bước của mô hình khi nó diễn ra.
Claude Code tương tác với thinking mode như thế nào? (terminal + VS Code)
Claude Code là terminal lập trình tương tác mang tính tác nhân, tích hợp Messages API và các trình chạy công cụ. Trải nghiệm CLI/IDE hiển thị suy nghĩ theo hai cách:
- Thiết lập toàn cục / theo phiên: Claude Code cung cấp bảng cài đặt
/configđể điều chỉnh hành vi (cách agent xin quyền, có lưu giữ khối suy nghĩ hay không, v.v.). Dùng UI đó thay vì gõ JSON thô nếu bạn muốn thay đổi hành vi bền vững. - Chọn model & lệnh CLI: Bạn có thể chọn
claude-sonnet-4-5hoặcclaude-opus-4-5làm model hoạt động trong REPL; công cụ và hành vi suy nghĩ sẽ theo ngữ nghĩa của Messages API. CHANGELOG và ghi chú phát hành cho biết suy nghĩ hiện được bật mặc định cho một số triển khai Opus 4.5, và cấu hình suy nghĩ được hiển thị qua/config.
Quy trình thực hành trong Claude Code:
- Khởi động một dự án trong REPL.
- Dùng
/configđể kiểm tra các cờ liên quan đến suy nghĩ (lưu giữ, mức độ chi tiết, v.v.). - Yêu cầu agent chạy một tác vụ dài—nó sẽ tạo nội dung suy nghĩ và, nếu cần, xin phép chạy các bước bash cụ thể. Lưu giữ các khối suy nghĩ khi bạn cần xác minh hoặc chạy lại quyết định sau này.
Cài đặt và Thiết lập
Claude Code yêu cầu Node.js và có thể được cài đặt toàn cục.
# Install Claude Code CLI
npm install -g @anthropic/claude-code
# Authenticate
claude-code --init
Kích hoạt Thinking trong Terminal
Claude Code hỗ trợ nhiều cờ và trigger ngôn ngữ tự nhiên để kiểm soát độ sâu suy luận.
| Lệnh/Kích hoạt | Mô tả |
|---|---|
| claude-code --think | Khởi tạo một phiên với suy nghĩ mở rộng được bật mặc định. |
| claude-code --model sonnet-4.5 | Chỉ định model đầu bảng mới nhất. |
| /think <task> | Lệnh gạch chéo trong CLI để gọi một tác vụ cần suy nghĩ chuyên sâu. |
| "ultrathink" | Từ khóa ngôn ngữ tự nhiên hướng dẫn Claude dùng ngân sách suy luận tối đa có thể. |
Mẹo:
- Dùng
think/think harderkhi bạn muốn agent khám phá các phương án triển khai thay thế. - Khi Claude Code thực hiện các lệnh công cụ (chạy test, thao tác git), hãy lưu các khối
thinkingnếu CLI/agent trả về; nếu không agent có thể mất ngữ cảnh giữa các bước.
Lợi ích của Suy nghĩ Đan xen và Lưu giữ Khối
Đối với các quy trình tác nhân nâng cao, Claude 4.5 giới thiệu hai tính năng beta tăng cường đáng kể tương tác đa lượt và dùng công cụ: Interleaved Thinking và Thinking Block Preservation.
Interleaved Thinking (Beta)
Suy luận tiêu chuẩn diễn ra một lần trước khi xuất kết quả. Interleaved Thinking (bật qua header interleaved-thinking-2025-05-14) cho phép Claude “suy nghĩ” giữa các lần gọi công cụ.
Hình dung Claude đang gỡ lỗi một máy chủ:
- Suy nghĩ: "I should check the logs first."
- Gọi công cụ:
read_file(logs.txt) - Suy nghĩ: "The logs show a database timeout. Now I need to check the connection pool settings."
- Gọi công cụ:
read_file(db_config.yml)
Sự “phản tư liên tục” này đảm bảo mô hình điều chỉnh chiến lược dựa trên dữ liệu nhận được từ công cụ, thay vì theo một kế hoạch cứng nhắc, định sẵn.
Lưu giữ Khối Suy nghĩ
Trong hội thoại đa lượt, đặc biệt là những hội thoại có dùng công cụ, việc chuyển lại các khối thinking trước đó cho API là rất quan trọng.
- Tính liên tục suy luận: Bằng cách nhận các suy nghĩ trước đó của mình, Claude duy trì ngữ cảnh logic của hành trình.
- Tối ưu hóa trên Opus 4.5: Trong Claude Opus 4.5, hành vi này được tự động hóa. Mô hình lưu giữ tất cả khối suy nghĩ trước đó trong ngữ cảnh theo mặc định, đảm bảo rằng ngay cả trong phiên kéo dài 30+ giờ, mô hình cũng không “quên” lý do vì sao đã đưa ra các quyết định kiến trúc mười lượt trước.
Thực hành tốt khi dùng THINKING mode với Claude 4.5
Chọn đúng model và ngân sách cho tác vụ:
Hãy dùng Sonnet 4.5 cho lập trình và luồng tác nhân khi bạn cần tỷ lệ tốt nhất giữa tốc độ, chi phí và khả năng lập trình mạnh; dùng Opus 4.5 cho suy luận sâu nhất và cửa sổ ngữ cảnh lớn nhất hoặc khi bạn dự định chạy phiên tự động dài. Cả hai đều hỗ trợ suy nghĩ mở rộng. Chọn budget_tokens tỷ lệ với độ phức tạp của tác vụ (bắt đầu nhỏ khi thử nghiệm; chỉ tăng ngân sách nếu bạn quan sát thấy cải thiện chất lượng đáng kể).
Giám sát và kiểm soát chi phí & độ trễ
Bạn bị tính phí cho toàn bộ token suy nghĩ mà Claude tạo ra, không phải bản tóm tắt bạn nhận được. Điều đó có nghĩa là suy luận nội bộ dài làm tăng chi phí ngay cả khi bạn chỉ thấy tóm tắt ngắn. Theo dõi mức dùng token và cân nhắc tinh chỉnh dần (ví dụ: 2k → 8k → 32k) khi chuyển từ khám phá sang sản xuất.
Chỉ lưu giữ khối suy nghĩ khi cần thiết
Các khối suy nghĩ có thể được ký mật mã và lưu giữ để xác minh sau và dùng khi suy nghĩ đan xen với công cụ. Tránh lặp lại các khối suy nghĩ trong mọi yêu cầu tiếp theo trừ khi quy trình của bạn yêu cầu mô hình giữ lại suy luận nội bộ trước đó (ví dụ, khi một tác nhân sẽ chạy lại các bước và cần lý do được lưu). Lưu giữ suy nghĩ mọi lúc sẽ tăng dung lượng ngữ cảnh và có thể làm phức tạp hạch toán token.
Khi nào nên stream suy nghĩ cho người dùng
Suy nghĩ được stream rất phù hợp cho công cụ nhà phát triển và UI giáo dục (hiển thị “đang xử lý” khi mô hình cân nhắc). Không nên stream suy nghĩ thô cho người dùng cuối của ứng dụng tiêu dùng hướng sản phẩm mà không cân nhắc an toàn và che lộ: suy nghĩ đã tóm tắt tồn tại chính vì lý do này. Nếu bạn stream, hãy cung cấp phần trong UI để gắn nhãn suy luận nội bộ (ví dụ, “Assistant reasoning — internal”), và kiểm soát việc người dùng cuối thấy bản tóm tắt hay bản đầy đủ.
Dùng công cụ và đan xen
Khi kết hợp suy nghĩ với công cụ (thực thi mã, lấy web, quy trình cục bộ), hãy dùng thiết kế suy nghĩ đan xen khi bạn cần mô hình chọn công cụ, chạy chúng, và suy luận trên kết quả trong cùng một lượt. Đan xen làm tăng độ phức tạp (và có thể cần cờ tính năng) nhưng rất mạnh cho tự động hóa tác nhân. Hãy rõ ràng về những gì bạn lưu giữ trong suy nghĩ, và kiểm thử cách mô hình chọn công cụ khi bật suy nghĩ.
Khắc phục sự cố thực tế và ghi chú vận hành
Lỗi thường gặp và ý nghĩa
thinkingkhông hợp lệ + ép buộc chọn công cụ: Nếu bạn yêu cầu thinking nhưng cũng ép chế độ dùng công cụ cụ thể không tương thích với thinking, API sẽ trả lỗi—đừng trộntool_choice: {"type":"tool","name":"..."}với thinking.Budget > max_tokens: Với kịch bản suy nghĩ đan xen, quy tắc token hiệu dụng khác đi—tài liệu nền tảng giải thích khi nàobudget_tokenscó thể vượtmax_tokens. Đọc kỹ phần “interleaved thinking” trước khi thử ngân sách lớn.- Xác minh chữ ký: Nếu bạn lưu giữ các khối suy nghĩ cho lần gọi sau, hãy bao gồm
signaturetrả về để API có thể xác minh chúng đến từ Claude; điều này ngăn giả mạo và giữ cho chuỗi có thể xác minh.
Khả năng quan sát & đo đạc
Ghi log: (1) lựa chọn model, (2) thinking.budget_tokens, (3) mức tiêu thụ token suy nghĩ thực tế (bạn bị tính phí cho nó), (4) độ trễ streaming (thời gian tới thinking_delta đầu tiên), và (5) token văn bản cuối. Dùng các số liệu này để lập ngân sách và SLO cho luồng hướng người dùng.
Triển khai dần & con người trong vòng lặp
Triển khai các model có thinking sau cờ tính năng. Bắt đầu với một tỷ lệ người dùng nhà phát triển hoặc lưu lượng nội bộ, thu thập lỗi hoặc che lộ, và lặp lại prompt và ngân sách. Với miền nhạy cảm, yêu cầu xem xét của con người với các đầu ra chứa nhiều suy luận nội bộ trước khi phát hành.
Mẹo gỡ lỗi
- Bắt đầu nhỏ: bật
budget_tokensthấp và tăng dần để hiểu cải thiện theo từng bước. - Bật streaming và ghi
content_block_delta/ sự kiện chữ ký để hiểu khi nào mô hình tạo khối suy nghĩ. - Nếu dùng Claude Code: kiểm tra
/configvà cài đặt cấp dự án; tham khảo changelog của Claude Code nếu hành vi không khớp mặc định mong đợi.
Kết luận:
Claude 4.5, kết hợp sức mạnh của Extended Thinking và CLI Claude Code, đại diện cho bước nhảy vọt lớn nhất về năng suất nhà phát triển kể từ khi IDE ra đời. Bằng cách cho phép mô hình “tự thể hiện quá trình làm việc” và cân nhắc các vấn đề phức tạp, Anthropic đã vượt ra ngoài kỷ nguyên “chatbot” và bước vào kỷ nguyên “tác nhân”.
Dù bạn tích hợp Messages API vào công cụ dành cho nhà phát triển tùy chỉnh hay sử dụng Claude Code để quản lý PR hằng ngày, làm chủ Thinking Mode là điều thiết yếu. Nó mang lại sự minh bạch cần thiết cho niềm tin và độ sâu suy luận cần thiết cho sự xuất sắc.
Các nhà phát triển có thể truy cập model Claude 4.5 (Claude Sonnet 4.5 , Claude Haiku 4.5, Claude Opus 4.5) thông qua CometAPI. Để bắt đầu, hãy khám phá khả năng của các model trên CometAPI trong Playground và tham khảo hướng dẫn API để biết chỉ dẫn chi tiết. Trước khi truy cập, vui lòng đảm bảo bạn đã đăng nhập CometAPI và lấy API key. CometAPI cung cấp mức giá thấp hơn nhiều so với giá chính thức để giúp bạn tích hợp.
Sẵn sàng bắt đầu? → Dùng thử miễn phí Claude 4.5!
