Bỏ qua đến nội dung chính

The thinking lever

TL;DR

  • Matt Bleifer, product manager nhóm research của Anthropic, giải thích cách Claude tận dụng test-time compute để giải các bài toán khó, cùng các đòn bẩy — effortbudgets — cho phép bạn ảnh hưởng đến cách Claude tiêu token.
  • Token chia thành ba nhóm (thinking, tool calling, text), và một demo mô phỏng giao thông cho thấy việc nâng effort (thấp → cao → max) đánh đổi 10 lần thời gian và token để có kết quả tốt dần.
  • Claude đã tiến hóa từ think-rồi-tool-rồi-text, sang interleaved thinking, rồi adaptive thinking (suy nghĩ bất cứ khi nào phù hợp); nên dùng effort thay vì thinking toggle, evals là kim chỉ nam, và "extra high" là gợi ý mặc định cho coding.

Điểm chính

  • Test-time compute mở rộng trí tuệ bằng cách cho mô hình dành nhiều thời gian hơn cho bài toán, bổ trợ cho training-time compute; cả hai cải thiện hiệu năng nhưng có lợi tức giảm dần.
  • Claude tiêu ba loại token: thinking tokens (độc thoại nội tâm, chain of thought), tool calling tokens (giao tiếp với thế giới), và text tokens (giao tiếp với người dùng).
  • Vì token tốn tiền và thời gian chờ, người dùng có thể ràng buộc Claude bằng effort dial (đánh đổi thời gian, chi phí, chất lượng) và task budgets (giới hạn token, thời gian hoặc chi phí trước khi báo lại).
  • Kiến trúc tư duy tiến hóa từ think → tool → text, sang interleaved thinking (suy nghĩ xen giữa các tool call), rồi adaptive thinkingClaude có thể suy nghĩ, gọi tool, xuất text theo bất kỳ thứ tự nào, hoặc bỏ qua suy nghĩ với truy vấn đơn giản.
  • Adaptive thinking không phải model router hay thinking toggle tự động; đó là khác biệt giữa ép ít nhất một thinking token và để Claude suy nghĩ bất cứ khi nào và mức nào cần — là thiết lập benchmark từ Opus 4.6.
  • Effort là trừu tượng tốt hơn thinking toggle: toggle bật/tắt một năng lực cốt lõi, còn effort biểu đạt "cần cố gắng đến đâu" và dịch chuyển cả thinking, tool use, text cùng lúc.
  • Hướng dẫn effort thực dụng: max cho tác vụ khó nhất (coi chừng lợi tức giảm dần), extra high là mặc định cho coding/agentic (mặc định của Claude Code và Claude.ai cho Opus 4.7), high để cân bằng, medium cho ca nhạy chi phí, low cho tác vụ ngắn và nhạy độ trễ.
  • Low effort có thể bất ngờ thông minh — Claude Plays Pokémon ở low effort hành xử như speedrun (bỏ qua trận trainer, dùng item hồi máu và repel) — nên luôn đọc transcript; chọn mô hình nhỏ cho time to first token nhanh, mô hình lớn ở low effort cho time to last token nhanh.

Từ vựng

  • test-time compute — compute tiêu ở thời điểm suy luận để mô hình làm việc lâu hơn cho kết quả tốt hơn
  • reasoning models — mô hình mở rộng test-time compute bằng cách suy luận lâu hơn trước khi trả lời
  • thinking tokens — token biểu thị độc thoại nội tâm và chain of thought của Claude
  • tool calling tokens — token Claude tiêu để giao tiếp với thế giới (tìm kiếm, đọc/ghi file)
  • effort — núm điều chỉnh cách Claude đánh đổi thời gian, chi phí, chất lượng
  • task budgets — giới hạn (token, thời gian hoặc chi phí) trước khi Claude báo lại
  • interleaved thinking — chế độ suy nghĩ xen giữa các tool call
  • adaptive thinking — thiết lập cho Claude tự do suy nghĩ, gọi tool, xuất text theo thứ tự cần thiết
  • time to first token — mô hình bắt đầu sinh output nhanh đến đâu, nơi mô hình nhỏ thường vượt trội

Nội dung chi tiết

Test-time compute và reasoning models

Một bước phát triển quan trọng của mô hình ngôn ngữ lớn vài năm qua là mở rộng test-time compute, tạo ra cái ta gọi là reasoning models. Giống như có thể mở rộng compute lúc huấn luyện (mô hình lớn hơn, nhiều dữ liệu hơn), ta cũng mở rộng compute lúc suy luận bằng cách cho mô hình dành nhiều thời gian hơn cho bài toán. Khi đi từ Haiku đến Sonnet đến Opus, mô hình thông minh hơn cho điểm cao hơn trên eval coding agentic; và cùng một Opus khi dành nhiều thời gian hơn cũng cho điểm cao dần. Điều này đúng cho cả tìm kiếm agentic, computer use và suy luận học thuật trình độ tiến sĩ.

Demo mô phỏng giao thông

Diễn giả chạy Opus 4.7 ở các mức effort khác nhau với prompt tạo mô phỏng xe chạy trên đường một chiều có đèn giao thông. Ở low effort: ~50 giây, ~4.600 token, kết quả cơ bản (thậm chí đặt đèn giữa đường). Ở high effort: gấp đôi thời gian và token, kết quả tốt hơn với "intelligent driver model". Ở max effort: gấp 10 lần thời gian và token so với low, cho kết quả tốt nhất. Cùng một mô hình, càng cho thêm thời gian, kết quả càng tốt — và tương lai Claude sẽ làm việc hàng ngày, hàng tuần, hàng tháng.

Ba loại token và cách ràng buộc

Claude tiêu ba loại token: thinking tokens (độc thoại nội tâm, chain of thought, scratchpad); tool calling tokens (giao tiếp với thế giới: tìm kiếm, đọc/ghi file); và text tokens (giao tiếp với người dùng). Vì token tốn tiền và thời gian chờ, người dùng có thể ràng buộc bằng hai cách: effort dial (báo cho Claude cách đánh đổi thời gian/chi phí/chất lượng) và task budgets (đặt giới hạn token, thời gian hoặc chi phí — ví dụ không quá 100.000 token trước khi báo lại).

Từ interleaved đến adaptive thinking

Ban đầu reasoning models theo trình tự cố định: think → tool → text. Interleaved thinking cho phép suy nghĩ xen giữa các tool call. Adaptive thinking là bước tiến tiếp theo: Claude tự do suy nghĩ, gọi tool và xuất text theo bất kỳ thứ tự nào, hoặc không suy nghĩ với truy vấn đơn giản. Đây không phải model router hay toggle tự động — mà là khác biệt giữa ép ít nhất một thinking token và để Claude tự quyết mức suy nghĩ ở mỗi bước. Đây là thiết lập tối đa hóa trí tuệ, dùng cho mọi benchmark từ Opus 4.6.

Effort so với thinking toggle

Trước đây người dùng dùng thinking toggle như một effort dial, nhưng đó là proxy kém: toggle bật/tắt một năng lực cốt lõi (ràng buộc cách Claude được phép làm việc), còn effort biểu đạt cần cố gắng đến đâu và dịch chuyển cả thinking, tool use, text cùng lúc. Tương tự, ta không bảo Claude luôn-tìm-kiếm hay không-bao-giờ-tìm-kiếm, mà để nó tự quyết khi nào cần; và khi làm việc với đồng nghiệp, ta hỏi họ "cố gắng đến đâu" chứ không bật/tắt độc thoại nội tâm của họ.

Hướng dẫn chọn effort và mô hình

Tốt nhất là chạy evals và vẽ đường cong hiệu năng (trục x: token/thời gian/chi phí; trục y: hiệu năng) để thấy đánh đổi. Quy tắc nhanh:

  • Max: tác vụ khó nhất, nhưng coi chừng lợi tức giảm dần.
  • Extra high: mặc định cho coding/agentic (mặc định của Claude Code và Claude.ai cho Opus 4.7).
  • High: cân bằng trí tuệ và token.
  • Medium: nhạy chi phí.
  • Low: tác vụ ngắn, nhạy độ trễ.

Lưu ý: low effort có thể bất ngờ thông minh — Claude Plays Pokémon ở low effort hành xử như một speedrun. Luôn đọc transcript. Về chọn mô hình: low effort trên mô hình lớn tốt cho ca cần trí tuệ nhưng tối ưu tốc độ; mô hình nhỏ tốt cho ca nhạy chi phí, ít cần trí tuệ (phân loại, trích xuất, tóm tắt cơ bản), hoặc khi cần time to first token thấp. Tư duy gọn: mô hình nhỏ cho time to first token nhanh, mô hình lớn ở effort thấp cho time to last token nhanh.

Ba điều cần nhớ

  1. Bật thinking bất cứ khi nào có thể để Claude có không gian suy luận; điều chỉnh bằng effort hoặc budgets.
  2. Nếu có evals, hãy dùng chúng — vẽ đường cong, thử các mức effort, budget, mô hình, và luôn đọc transcript.
  3. Nếu chỉ cần chọn nhanh cho việc coding/phần mềm: chọn extra high. Kim chỉ nam của Claude là phân bổ compute thật tốt khi được yêu cầu — bạn đặt chuẩn chất lượng và ngân sách, Claude lo phần còn lại.
Góp ý / Báo lỗiPhát hiện sai sót hoặc có ý tưởng cải thiện?